2013-05-09 30 views
2

我想評估流星JS是否適合未來的項目,該項目將整合實時聊天,並且可能需要擴展。哪些PaaS最適合需要擴展的Meteor JS應用?

它當然可以執行聊天功能,但是如果流量激增,我不想讓自己陷入一個角落,我們需要以無人機/動態/實例的形式爲應用程序提供更多資源。我已經讀過Heroku上的Meteor應用程序不會輕易擴展(可能根本就沒有?)。我不清楚這是Heroku問題,還是更多與當前流星狀態(目前爲0.6.2.1)有關。我還沒有發現更多與Nodejitsu或AppFog相關的內容。

任何人都可以澄清是否流星JS應用程序可以在當前部署的PaaS的,使得資源(無人機/ DYNOS /實例)可以很容易地擴展,以滿足需求?如果是的話,哪個Paas?如果不是,那麼對於一個5歲的孩子來說,有什麼解釋,並且有路線圖嗎?

回答

7

個人而言,我給自己定下了與AWS負載均衡器和EC2實例,與我在MongoHQ DB過來。

負載平衡器

:安裝程序按照以下說明做容易得多

我寫了一個腳本部署到一個EC2實例。這將不會有太大的工作的情況下,增加額外的遙控器,你有多個實例:

https://github.com/matb33/meteor-ec2-install

+0

這是一個很好的資源 - 謝謝!根據@Akshat的回答,我將不得不權衡我的選擇,但如果我使用EC2(我從未使用過),這看起來會讓我快速加速。非常感激。 – RobD 2013-05-10 18:03:09

+0

經過一番修改之後,我已經使用EC2將測試移至AWS。有很多的靈活性,我只是讓我的腳溼 - 但這看起來像一個非常可靠的方式去。 – RobD 2014-05-05 17:38:18

1

這個答案是Heroku特有的。

據我瞭解流星應用程序不能在Heroku上進行縮放一個以上的賽道。原因是流星服務器實例爲每個客戶端保存一個狀態。這樣它就知道每次發送給客戶端的更新。這意味着客戶端每次都必須與同一臺服務器通話。 Heroku代理層不提供這種通信,並且可以將客戶端請求路由到不保持客戶端狀態的不同的測試儀。

所以,現在的服務器必須從DB獲得所有客戶的數據和發送的一切返回給客戶端。服務器被加載並且客戶端得到更新。所以我們有兩個工具,我們做了兩次工作,給客戶增加了很多噪音。

我希望它很清楚。

+0

非常感謝 - 你一定幫助澄清我Heroku的情況 - 我敢肯定,這將幫助別人太。 – RobD 2013-05-10 17:54:31

4

我會推薦的最好是Meteor.com託管(通過流星部署)。

這是因爲它們將納入他們的體系結構中的DDP-代理解決方案。它不如在兩個流星之間進行代理並使用發電機那麼簡單,因爲每個用戶的會話可能位於另一臺服務器上,當切換到另一臺發電機時可能會引起一些麻煩。

現在它的免費&它看起來像他們擴展得相當好。我認爲他們也會推出一個更好的主機解決方案,很快就會有更好的主機流星應用程序,而不是流星本身。

如果你想部署在你自己的基礎設施上(例如EC2),你可以垂直擴展,直到DDP代理髮布(DDP是流星用來在服務器和客戶端之間進行通信的時間(並且很快在服務器之間太),以確保國家可以跨越多個「發電機」中繼。

+0

你給了我兩個非常可行的臨時(也可能是永久性)解決方案 - 非常感謝!流星解決方案聽起來很合理,但目前有點過於黑匣子。我將不得不權衡這一點,但我很高興有兩個可能爭論,而不是沒有:) – RobD 2013-05-10 17:59:39

相關問題