MongoHQ で Heroku (無料利用枠) で Meteor を使用しています。現在、私のアプリは非常にシンプルです。コレクションから 3 ~ 4 個のエントリをロードしますが、Heroku にデプロイすると、途方もないロード時間 (1 ~ 2 分) が表示されます。HTML はすぐにレンダリングされます。Meteor.com の無料サーバーにデプロイすると、読み込み時間は大幅に短縮されますが、4 つの小さなデータの場合でも約 15 秒かかります。ローカルにデプロイすると、これはまったく表示されません。アプリは DB からすぐにデータを取得します。
Heroku の「アイドリング」の問題ではないと思うことに注意してください。アプリを開いたばかりのブラウザー ウィンドウが既に 1 つある場合でも、別のブラウザーを使用して再試行すると、読み込みに 1 ~ 2 分かかります。ただし、データが読み込まれると、パフォーマンスは元に戻り、問題なく読み書きできます。
私は何が欠けていますか?コンソールにエラーは表示されません。mongo はログにいくつかのクエリを表示し、4 つのドキュメントで迅速に応答していることを示していますが、明らかに途中で渋滞が発生しています。この Meteor を乗り越えられない場合は、今の私のニーズには役に立ちません。
更新: Firebug で注意深く監視してきましたが、パフォーマンスに一貫性がないように見えます。単純な更新に 1 分かかる場合もあれば、10 秒かかる場合もあります。しかし、私が気付いたのは、sockjs/info ファイルを取得するのが遅く、その直後に sockjs POST が中止される (複数回) ことです。高速に実行すると、POST 以降の POST がスムーズに実行されます
Slow:
GET http://pocleaderboard.herokuapp.com/sockjs/info 200 OK 22ms
POST http://pocleaderboard.herokuapp.com/sockjs/029/su0d77fb/xhr Aborted
GET http://pocleaderboard.herokuapp.com/sockjs/info 200 OK 27ms
POST http://pocleaderboard.herokuapp.com/sockjs/132/uljqusxd/xhr Aborted
GET http://pocleaderboard.herokuapp.com/sockjs/info 200 OK 28ms
POST http://pocleaderboard.herokuapp.com/sockjs/154/kcbr6a5p/xhr Aborted
Fast(er):
GET http://pocleaderboard.herokuapp.com/sockjs/info 200 OK 1.08s
POST http://pocleaderboard.herokuapp.com/sockjs/755/xiggb555/xhr 200 OK 1.02s