3

トップメニューに通知があると小さなアイコンが表示されるので、SOFがそれをどのように行うかを理解しようとしています。サーバーを毎秒チェックするAJAXを使用している可能性があると思いますが、それは理にかなっていますが、1000人以上のユーザーではサーバーが過負荷になると思います。サーバーを壊さずにライブプッシュでSOFのように

4

2 に答える 2

4

WebSocketテクノロジの使用を検討する必要があります。最新のブラウザー (Chrome、Firefox、および Safari) で動作し、サーバーが変更をブラウザーにプッシュできるようにします。ただし、Internet Explorer ではサポートされていないため、そのブラウザーでは Ajax ポーリングがほぼ唯一のオプションです。

于 2012-05-11T20:07:32.790 に答える
0

AJAX Comet とは異なり、イベント ソースを使用することをお勧めします。開いている接続が長く保持されないため、より多くのクライアントを処理できます。

/* Event Source Code */
// Initial Startup
if (!!window.EventSource) {
    var source = new EventSource('EventSource.php');
    // Native EventSource Events
    source.addEventListener('open', function(e) {
        // Connection was opened.
    }, false);
    source.addEventListener('error', function(e) {
        if (e.readyState == EventSource.CLOSED) {
            // Connection was closed.
        }
    }, false);
    source.addEventListener('message', function(e) {
        // You'll have to make your own banner function here.
        // e.data, this is what you'll need.
    }, false);
}
于 2012-05-11T21:03:28.790 に答える