1

php/mysql で実装され、hostmonster (共有ホスティング) でホストされている Web サイトがあります。

ユーザー同士がチャットできるチャット機能をウェブサイトに組み込む予定です。約あります。私のサイトに 1000 人のユーザーがいます。現在、オンライン ユーザーとメッセージに関する json 応答を取得するために、定期的に (たとえば 4 秒ごとに) サーバーに要求を送信する ajax 戦略を実装しています。

これは、リクエストを送信するサンプル コードです。

var timer, delay = 4000;

timer = setInterval(function(){
    $.ajax({
      type: 'POST',
      url: 'update.php?user_id=2',
      success: function(html){
        $('.chat_messages').append(html);
      }
    });
}, delay);

しかし、私が見ているように、ユーザー数が増え、4 秒ごとのリクエストが増え、応答を配信するための Apache サーバーとデータベースの負担が増えています。

そのため、サーバーにオーバーヘッドのない代替ソリューションを計画しています。APE、Nginx、Node.js、StreamHub など、COMET/リバース ajax テクノロジを使用してリクエストを処理し、私の目的に対して効率的なサーバーについて聞いたことがあります。

しかし、問題は、ホストモンスターの cpanel にサードパーティのサーバーをインストールする権限がないことです。HTML5 Web ソケットなど、他の方法はありますか?

EDIT:ちなみに、実行可能な解決策があれば、Javaでアプリケーションを再構築することにも興味があります。

4

1 に答える 1

2

お分かりのように、ユーザーごとに 4 秒で最新情報をリクエストしてもスケーリングされません。また、メッセージ間の遅延が長すぎてチャットが使用できなくなるため、チャット アプリケーションでも機能しません。

私があなただったら、最初に、あなたの側でプログラミングをまったく (またはほとんど) 必要としないドロップイン チャット ソリューションを検討します。通常、JavaScript コードをページに挿入するだけで、チャットを提供するサード パーティが残りのすべてを行います (ファイルの提供、チャット サーバーの実行など...)。利用可能なソリューションを使用したことがないため、推奨することはできませんが、簡単なグーグル検索でこれが得られました: https://www.meebo.com/websites/これは、私が何であるかについての一般的なアイデアを与えるはずですについて話す。

上記があなたに合わない場合は、あなたの前に非常に大きなプロジェクトがあります。あなたがしなければならないことは、websocket サーバーを作成することです (そして、その上にチャット アプリケーションを作成します)。その方法を説明したければ、それについての本を書くことができるので、これだけは言っておきます。Google はあなたの友達です。これを必要とするのはあなたが最初ではありません。ヒントについては、stackoverflow を検索してください。オープン ソースの PHP Websocket サーバーもあります (これはその 1 つです)。

幸運を。

于 2012-04-06T08:26:15.597 に答える