lef*_*ire 7 node.js backbone.js socket.io derbyjs
我目前正在使用DerbyJS,因为它可以促进干净的DRY客户端/服务器代码.副作用(大多数人使用框架的主要原因)是它使用Socket.IO来创建实时应用程序.在这种情况下,我不需要实时,但它是一个很好的补充.
我的问题是 - 我是否通过使用Socket.IO以及它维护的所有开放连接来牺牲可伸缩性/性能?使用Backbone + ExpressJS会释放资源,因为没有打开的连接吗?
Nat*_*ith 10
保持一堆开放的连接显然在服务器开销方面有一些成本,但我不担心这样的问题,除非你有明显的扩展问题.一旦出现明显的扩展问题,您应该有足够的收入来购买更多的服务器资源.服务器非常便宜,而且你的时间非常昂贵.不要担心优化小东西.
我是否通过使用Socket.IO以及它维护的所有开放连接来牺牲可伸缩性/性能?
如果要在新信息可用时立即更新页面(动态页面).然后使用非阻塞io保持连接打开是最有效的方法.幸运的是node.js确实使用了非阻塞的io.这是node.js如此受欢迎的原因之一(另外,您可以使用JavaScript编写代码,这是最流行的编程语言).如果你真的不需要它(也在将来),因为你的网站是静态的(不像你说的那样实时),那么关闭连接将节省你的资源.
使用Backbone + ExpressJS会释放资源,因为没有打开的连接吗?
我会看一下使用骨干/快速组合与derbyjs开发网站的成本(开发时间).
然后再次像Nate提到的那样Socket.io可以轻松处理许多(1000+)并发连接.如果使用derbyJS更容易开发,那么我会使用它.当你跨过这条路时,你总是可以决定添加更多的服务器或重新设计(可以聘请额外的程序员)你的网站使用快速/骨干组合.首先尝试让用户以最小的努力(开发时间)找到您的网站.
PS:我认为你应该尽量让你的系统保持模块化,以便用最少的时间来替换Derby.js.
| 归档时间: |
|
| 查看次数: |
1485 次 |
| 最近记录: |