Engine Yard增加对Node.js的支持
Node.js已被越来越多的服务提供商所支持,其中就包括它的主要赞助商Joyent以及如Heroku这样的PaaS提供商。日前,Engine Yard也宣布了对Node.js的支持。
InfoQ为此采访到了Engine Yard的技术副总裁,Nic Williams博士。
InfoQ: Node.js的支持是以新产品的形式还是仅仅是个尝试?
对Node.js的支持目前只是一个尝试——该尝试属于Engine Yard的实验项目之一。Engine Yard的云平台已经提供了对Node.js的支持,所以,也不会是一个完全分离的环境。
InfoQ: 在Engine Yard,是如何处理Node.js的并发问题的?比如,我是否可以通过并发执行代码的方式来启动多个Node.js实例,这些实例是如何管理和相互连接的?
我们在HAproxy和Nginx的应用部署环境运行Node.js。通过在nginx上打补丁的方式为Node.js增加了WebSocket的支持。每个CPU执行一个Node.js进程。
InfoQ: 在管理Node.js进程时,你们借鉴了哪些解决方案?
我们直接通过nginx来管理Node.js应用。目前有很多种集群的方式可供选择,每种配置都可以构建到应用的代码级别,而不是到应用服务器中配置。我们将集群的选择权交给了Node.js的开发者。
InfoQ: 如何为Node.js提供和扩展计算资源,例如,可否动态地添加新的计算单元?
同我们的Ruby环境类似,Node.js环境可以在启动时启动一个单独的虚拟机和一个相应的数据库,同时支持升级和扩展(通过仪表盘)。
InfoQ: 是否会考虑增加像Cloud9的这种在线JavaScript的集成开发环境?
现在还没有专门为IDE做支撑,客户可以使用他们喜欢的IDE,而且就目前来讲,还没有接到与IDE相关的问题。
InfoQ: 在Engine Yard内部,有没有使用任何Node.js应用或相关服务?
我们正在尝试在内部构建测试应用,但就目前来说,生产环境平台上还没有使用Node.js。