我们的新项目将获得大量并发请求。我对此没有太多经验。有什么建议?我看过NodeJS,Twisted,EventMachine&龙卷风,但我没有办法衡量它们的合适程度。
有什么建议吗?
答案 0 :(得分:1)
问自己以下问题(至少)然后决定:
我(或/和我的同事)知道什么语言?如果您了解Python,您可以选择Twisted,如果您了解Ruby,您可以选择EventMachine,或者如果您对JavaScript非常满意,可以选择Node.js. (只有Erlang在这里没有优势)
我想使用语言构造(Erlang,Node.js)还是库(Twisted,EventMachine)?
我需要大量资源,社区支持,书籍等吗?自己检查一下他们在IRC上的频道有多大,你就会有所了解。 (我可能有偏见,但我在Node.js频道上看到很多人,他们真的很有帮助)
您希望框架有多成熟? (节点例如有2年,Erlang已经在98年正式发布等)
哪些公司/产品正在使用什么异步框架? (例如,CouchDB使用Erlang构建,Node.js由Github,Linkedin和其他人使用,EventMachine由PostRank使用,37个信号等)
答案 1 :(得分:1)
特定非阻塞框架的适用性可能取决于某些方面,例如:
答案 2 :(得分:1)
正如其他人所说 - 你应该使用你需要的非阻塞库(例如数据库驱动程序),并且如果可能的话,使用你的团队所知的语言。人气也可能是一个优势。
如果您使用Python进行编程,gevent也可能是一个不错的选择。甚至有Socket.IO implementation。
答案 3 :(得分:1)
制定衡量适用性的指标,然后使用该指标。如果你没有提供任何评估依据,那么这里的人怎么能告诉你哪一个最合适呢?
等等,抓一点。无论如何,扭曲是最适合一切的。