ホームページ  >  記事  >  バックエンド開発  >  PHP Academy で異常なオフライン チャット ルームを処理する方法_PHP チュートリアル

PHP Academy で異常なオフライン チャット ルームを処理する方法_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 17:33:33735ブラウズ


一部のネチズンは回線切断やクラッシュなどにより通常のチャンネルからチャットルームから退出できず、オンライン人数が正しく表示されません!解決策は一般的には

1 オンラインの人数のファイルを作成し、そのファイルにオンラインの人々の ID/パス/時刻を保存します。ここで、時刻は最終更新時刻です

2 毎回 ID/パス/時刻を更新しますチャット プログラムが正常に実行されているときに時々、オンラインであることをシステムに通知します (通常は 1 ~ 2 分です)

3 システムは一定期間、グリッドごとにオンラインのユーザーのリストをスキャンし、オンラインになっていない ID を探します一定時間(5分など)以上更新され、異常オフラインになっていることを確認します

4 オンライン人数はファイルの行数、リストはマイトークデータです。現在ダウンロード可能なroomはこの方法で実装されています!

この方法は比較的単純なプロセスですが、人数が多い場合、ファイル共有の問題が重要になります。実践を通じて、システムリソースの消費が非常に少なく、共有の問題をうまく解決できる方法を見つけました。


具体的なアイデアは次のとおりです:
1 オンライン人事データを保存するための useronline サブディレクトリを作成します
2 入力する各人は、その中にユーザー名とファイル名を含むファイルを作成します。中身は空です!

3 チャットプログラムが正常に実行されている場合、定期的にサブディレクトリ内のファイルを更新します

4 システムは、ディレクトリ内のファイルの更新時間に基づいて、ユーザーの数がオフラインであるかどうかを判断します

5 数オンラインの人数はディレクトリ内のファイルの数、リストはファイル名です

利点: 誰もが他の人に影響を与えることなく自分のファイルを更新でき、共有の問題はありません。

5分ごとにスキャンできるので、リソースの消費が非常に少ないです!

この技術は私の新しいバージョンのチャットルームで使用されます! ! !


http://www.bkjia.com/PHPjc/508607.html

tru​​ehttp://www.bkjia.com/PHPjc/508607.html技術記事一部のネチズンは回線切断やクラッシュなどにより通常のチャンネルからチャットルームから退出できず、オンライン人数が正常に表示されません。解決策は一般に、オンラインの人数を確立することです...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。