#フラッシュ セールや電車の切符の入手などでは、通常、同時実行性の問題が発生します。次の 4 つの解決策が提供されています。 (推奨チュートリアル:php の同時実行性の高いソリューションには次のものが含まれます: 1. ファイル ロック方式を使用して問題を解決する; 2. メッセージ キュー方式を使用して問題を解決する; 3. 分散クラスター サーバーの場合は、1 つ以上のキューを使用するサーバーが必要です; 4. Memcache Lock ソリューションを使用します。
php グラフィック チュートリアル )
1. ファイル ロックを使用します$fp = fopen("order.lock", "r"); if(flock($fp,LOCK_EX)){ //..处理订单的代码 flock($fp,LOCK_UN); } fclose($fp);
php ビデオ チュートリアル)
3. 分散クラスター サーバーの場合は、1 つ以上のキュー サーバーが必要ですシャオミとタオバオの急ぎ買いは少し異なりますが、シャオミは急ぎ買いの瞬間に重点を置いており、一度ノルマを獲得したら、それはあなたのものとなり、注文して支払いを済ませることができます。一方、タオバオは支払い時のフィルタリングに重点を置いており、多層のフィルタリングを実装しています。たとえば、10 個の商品を販売したい場合、10 人以上のユーザーに商品を取得させ、支払い中に同時フィルタリングを実行します。アイテムの数をレイヤーごとに瞬時に減らし、同時実行の量を減らします。 4. Memcache ロックを使用するproduct_lock_key はチケット ロック キーです。 product_key が memcached に存在する場合、すべてのユーザーが注文プロセスに入ることができます。 決済処理に入る場合は、まずadd(product_lock_key, “1″)をmemcachedに格納し、返却が成功したら決済処理に入ります。失敗した場合は、誰かがすでに支払いプロセスに入っていることを意味し、スレッドは N 秒間待機して追加操作を再帰的に実行します。以上がPHP の高同時実行ソリューションとは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。