私たちは、クリック、mousemove、スクロール、入力などのユーザー活動イベントを送信するためにwebsocketを使用しています...それと一緒に、我々はhtml domスナップショットを送信します。 htmlスナップショットの平均サイズは約300 kbです。場合によっては、htmlスナップショットがGoogleのサーバーに届いていないことがあります。以下にいくつかのシナリオを示します。Websocketはデータフレームの損失を防ぎます
ユーザーはちょうど数秒間だけ、ウィンドウを閉じます。
- 我々は
beforeunload
イベントに残っているイベントを送信しようとした
遅いネットワークでも動作していないものの。
この問題を解決する方法はありますか。
急速に収縮するルーチンを使用して送信するデータの量を減らすことは、あらゆる状況で役立ちます。 [私の元に戻ってきたこの古いもののようなもの](http://danml.com/js/compression.js)は、HTMLやJSONの反復キー名をオリジナルの1/10にすることができますサイズ。 – dandavis
ユーザーがページを閉じるときに何が起こるか心配しているのはなぜですか?彼らがあなたのページを閉じたとき、それはゲームオーバーです。それがWebの仕組みです。バックグラウンド処理タスクをユーザーのブラウザエージェントにキューイングして、自分のWebサイトから離れることを示すことはできません。私には、スタンドアロンのアプリケーションに書き直すべきものがあるように見えます。スタンドアロンアプリケーションでは、ユーザーは自分が何を取得しているのかを明示的に知っています。ユーザーにイベントやその他のフィンガープリンティング情報(DOMのように、ユーザーのスクリプトで拡張されている場合とされていない場合があります)とすべてを送信します。 – amn