2012-12-19 22 views
5

MongoHQ ile Meteor on Heroku (free tier) kullanıyorum. Uygulamam şu anda çok basit, bir Koleksiyon'dan 3-4 giriş yüklüyor, ama ben Heroku'ya dağıttığım zaman, gülünç yükleme sürelerini görüyorum (1-2 dakika). HTML hemen oluşturulur. Meteor.com'un ücretsiz sunucusuna konuşlandırdığımda, yükleme süreleri 4 küçük veri parçası için çok daha düşük ancak yaklaşık 15 saniye sürüyor. Yerel olarak dağıttığımda bunu göremiyorum, uygulama verileri DB'den çekiyor.Meteor'un verilerimi Heroku'ya yüklemesi neden bu kadar uzun sürüyor?

Bu, Heroku için "boşta" bir sorun olduğunu düşünmüyorum. Zaten açılmış olan bir tarayıcı penceresi zaten olsa bile, farklı bir tarayıcı kullanırsam ve tekrar denerim yine de 1-2 dakikalık yükleme süreleri alırım. Ancak, veri yüklendikten sonra, performans harika olmaya geri döner, ben hiçbir sorun olmadan okuyup yazabilirim.

Neyi eksik? Konsolda herhangi bir hata görmüyorum, mongo günlüklerde birkaç sorgu gösteriyor ve 4 belgeyle hızlı bir şekilde yanıt verdiğini gösteriyor, ancak ortada bir yerlerde bir trafik sıkışıklığı var. Bununla ilgili herhangi bir yardım çok takdir ediliyor, eğer bu Meteor'ı geçemezsem şu anki ihtiyaçlar için işe yaramaz.

GÜNCELLEME: Firebug'da yakından izliyordum ve performansın büyük ölçüde tutarsız olduğu anlaşılıyor. Bazen basit bir yenileme 1 dakika sürecektir, bazen 10 saniye sürecektir. Ama fark ettim ki, yavaş yavaş, sockjs/bilgi dosyası GETs, sonra sockjs POST (bazen birden çok kez) iptal edildi sonra. hızlı çalıştığında, POST ve sonraki POST internet bağlantınızla bağlı değildir ve dosyalar sadece sabitdisk okunan ve yapamaz çünkü

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 
+0

Benim deneyimimle, heroku ile bedava olan bir şey kullanıyorsanız **** gibi yavaş. Heroku test uygulamalarını almak için harika, ama hızını ödemek zorunda kalıyorsanız, ne koştuğunuzla ilgili bir şeye sahip olduğundan şüphe duyuyorum, sadece heroku olan heroku (ücretsiz sürüm) – Richlewis

cevap

3

Meteor Çok hızlı lokal yüklenen sorunsuz indirilmesi gerekiyor. Ve veri yüklendikten sonra, barındırdığınız her yerde aynıdır, çünkü istemci (sizin) önbelleğe alınmış mongo veritabanınızdaki tüm eylemleri gerçekleştirir ve ardından sunucunun eylemin tamam olup olmadığını söylemesini bekleyin.

Ancak Heroku yükleme süreleri için hiçbir fikrim yok Üzgünüz!

GÜNCELLEME: Bunlar Meteor tarafından kullanılan SockJS'den uzun çekimlerdir. Normalde bu çekimler, bir kod eklendi (bir dosya eklendiğinde/değiştirildikten/kaldırıldığında).

Ya siz ya da Heroku dizinde bir şey yazıyor veya değiştiriyorsunuz. Çünkü sıcak kod itme Meteor tarafından başlatılabilir.

İlgili konular