このバージョンはマイルストーンとなる新しいバージョンであり、多くの新機能、多くのコア機能の最適化と問題の修正が追加され、無効な機能が削除されています。更新内容は次のとおりです。
クライアント
-
ネイティブ非同期 MySQL クライアントの追加
-
ベースのネイティブ非同期 Redis クライアントの追加on Redis によって正式に提供される Hiredis ライブラリ
-
ネイティブ非同期 Http クライアントを追加します
-
ネイティブ非同期 WebSocket クライアント サポートを追加します
-
基礎となる swClient を再構築し、非同期 TCP クライアント実装を swoole カーネルに組み込みます。
-
swoole_client->reuse 属性を追加します。SWOOLE_KEEP は、長い接続で再利用するかどうかを識別しますモード接続
サーバー側
-
WebSocket サーバー コードを再構築し、最下層は length_check プロトコルと同じ処理関数を再利用して安定性を強化します
-
タスク プロセスでのティック/アフター タイマーのサポートを追加します。基礎となる実装は、高精度の setitimer+ 信号に基づいています。
-
渡されたホストを保存します。 swoole_server オブジェクト属性へのコンストラクター、port パラメーター
-
マルチポートおよびマルチプロトコルのサポートの追加 (重要な更新)
-
Add swoole_server- >defer 関数 一部の関数を遅延させて実行します。
-
swoole_server->close オプションを追加して、接続を強制的に切断します。 2 番目のパラメータを true に設定すると、送信キューがクリアされて切断されます。すぐに接続します
マルチポート マルチプロトコルの例:
$serv = new swoole_server("0.0.0.0", 9501);$port2 = $serv->listen('127.0.0.1', 9502, SWOOLE_SOCK_TCP);$port2->set(array( 'open_length_check' => true, 'package_length_type' => 'N', 'package_length_offset' => 0, //第N个字节是包长度的值 'package_body_offset' => 4, //第几个字节开始计算长度 'package_max_length' => 2000000, //协议最大长度));$port2->on('receive', function (swoole_server $serv, $fd, $from_id, $data) { echo "ServerPort2\n";});$serv->on('connect', function ($serv, $fd, $from_id){ echo "[#".posix_getpid()."]\tClient@[$fd:$from_id]: Connect.\n";});$serv->on('receive', function (swoole_server $serv, $fd, $from_id, $data) { echo "[#".$serv->worker_id."]\tClient[$fd]: $data\n"; if ($serv->send($fd, "hello\n") == false) { echo "error\n"; }});$serv->on('close', function ($serv, $fd, $from_id) { echo "[#".posix_getpid()."]\tClient@[$fd:$from_id]: Close.\n";});$serv->start();
その他
-
キーを保存するために swoole_table を追加しますforeach がテーブルのキー値を走査するときに取得できる値。
-
swoole_table のキー比較モードを crc32 比較から直接文字列比較に変更します
-
utlist.h ライブラリをバージョン 1.9.9 に更新します。
Swoole_table の Key 値を保存すると、たとえばテーブルのサイズが 100 万の場合、メモリ使用量が増加します。 、KEY 値のストレージによりメモリ使用量が 64M 増加します
問題の修正
-
メッセージ キューを有効にした後の二重解放の問題を修正します
-
タイマーを再構築し、After タイマーと Tick タイマーを修正する 時折発生するコア ダンプの問題
-
タイマーは最小のヒープ データ構造を使用し、挿入/削除の時間の複雑さは次のとおりです。 log(N)
-
PHP7 でコア ダンプを引き起こす swoole_process::signal の問題を修正
-
PHP7 でコア ダンプを引き起こす swoole_async_write の問題を修正PHP7
機能の削除
-
heartbeat_ping、dispatch_key_type などのサポートされていない機能に関連する過去のレガシー コードを削除します。
-
swoole_server->addtimer、swoole_server->deltimer、swoole_server->gettimer を削除します
-
swoole_timer_add、swoole_timer_del を削除します
- swoole_server の onTimer イベントを削除します
- task_worker_max 構成と関連機能コードを削除します
- swoole_server->handler メソッドを削除します

PHPロギングは、Webアプリケーションの監視とデバッグ、および重要なイベント、エラー、ランタイムの動作をキャプチャするために不可欠です。システムのパフォーマンスに関する貴重な洞察を提供し、問題の特定に役立ち、より速いトラブルシューティングをサポートします

Laravelは、直感的なフラッシュメソッドを使用して、一時的なセッションデータの処理を簡素化します。これは、アプリケーション内に簡単なメッセージ、アラート、または通知を表示するのに最適です。 データは、デフォルトで次の要求のためにのみ持続します。 $リクエスト -

PHPクライアントURL(CURL)拡張機能は、開発者にとって強力なツールであり、リモートサーバーやREST APIとのシームレスな対話を可能にします。尊敬されるマルチプロトコルファイル転送ライブラリであるLibcurlを活用することにより、PHP Curlは効率的なexecuを促進します

Laravelは簡潔なHTTP応答シミュレーション構文を提供し、HTTP相互作用テストを簡素化します。このアプローチは、テストシミュレーションをより直感的にしながら、コード冗長性を大幅に削減します。 基本的な実装は、さまざまな応答タイプのショートカットを提供します。 Illuminate \ support \ facades \ httpを使用します。 http :: fake([[ 'google.com' => 'hello world'、 'github.com' => ['foo' => 'bar']、 'forge.laravel.com' =>

顧客の最も差し迫った問題にリアルタイムでインスタントソリューションを提供したいですか? ライブチャットを使用すると、顧客とのリアルタイムな会話を行い、すぐに問題を解決できます。それはあなたがあなたのカスタムにより速いサービスを提供することを可能にします

記事では、PHP 5.3で導入されたPHPの後期静的結合(LSB)について説明し、より柔軟な継承を求める静的メソッドコールのランタイム解像度を可能にします。 LSBの実用的なアプリケーションと潜在的なパフォーマ

この記事では、フレームワークにカスタム機能を追加し、アーキテクチャの理解、拡張ポイントの識別、統合とデバッグのベストプラクティスに焦点を当てています。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

MantisBT
Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

メモ帳++7.3.1
使いやすく無料のコードエディター

SAP NetWeaver Server Adapter for Eclipse
Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

ホットトピック



