Articles of node.js

有没有人使用Node.js作为实际的Web服务器?

我试图说服自己把它拿起来并开始开发,但是我想知道是否有人预料到了稳定性问题或者类似的问题。 我明白这不是“生产”质量,如Apache或IIS。 我想一个小的网站,应该没事(最多200个并发连接)。 我应该假设吗?

在Jenkins构build步骤中开始一个永远的过程?

我在Jenkins部署结束时运行一个shell命令来重新启动永远脚本: npm install && forever stop app.js && forever start -a -l /var/log/forever.log app.js 当我作为用户jenkins运行时,一切正常,从构build历史logging的控制台输出也告诉我永远脚本正在运行。 但是,该过程在部署完成后立即停止,永久进程停止。 是什么导致了这种行为,我该如何解决?

为Socket.IO 1.0configurationApache 2.4 mod_proxy_wstunnel

我正在尝试使用mod_proxy_wstunnel将Apache 2.4configuration为将socket.io的websocket连接代理到node.js websocket服务器。 我们使用socket.io 0.9可以正常工作,但是在1.0发行版中,它们将套接字端点更改为查询参数,现在我在使用正确的代理指令configurationapache时遇到了问题。 所有对/socket.io/?EIO=N&transport=websocket (其中N是任何数字,通常为2)的请求都需要被转发到ws://localhost:8082/socket.io/ ,但是所有其他的请求都需要被转发到http://localhost:8082/socket.io/ 。 我试过以下两种configuration的变体: ProxyPass /socket.io/?EIO=2&transport=websocket http://localhost:8082/socket.io/?EIO=2&transport=websocket ProxyPassReverse /socket.io/?EIO=2&transport=websocket http://localhost:8082/socket.io/?EIO=2&transport=websocket ProxyPass /socket.io/ http://localhost:8082/socket.io/ ProxyPassReverse /socket.io/ http://localhost:8082/socket.io/ 。 RewriteRule /socket.io/?EIO=([0-9]+)&transport=websocket ws://localhost:8082/socket.io/ [QSA,P] ProxyPass /socket.io/ http://localhost:8082/socket.io/ ProxyPassReverse /socket.io/ http://localhost:8082/socket.io/ 我从search结果中发现,ProxyPass和Locations不能定位查询string,那么在这里还有其他的select吗? path被硬编码到socket.io中,所以分叉整个库的时候我无法改变它们。

如何通过UNIX套接字configurationNginx proxy_pass Node.js HTTP服务器?

我试图configuration一个Nginx服务器,通过一个UNIX域套接字连接到一个Node.js HTTP服务器。 Nginxconfiguration文件: server { listen 80; location / { proxy_pass http://unix:/tmp/app.socket:/; } } (根据http://wiki.nginx.org/HttpProxyModule#proxy_pass ) Node.js脚本: var http = require('http'); http.createServer(function(req, res) { console.log('received request'); req.end('received request\n'); }).listen('/tmp/app.socket'); 现在,当我尝试打电话 curl http://localhost/ 我只有curl中的502 Bad Gateway错误页面,Node.js进程没有任何内容。 我做错了什么? 编辑: 在尝试了quanta的解决scheme后,错误必须与Nginxconfiguration有关,因为Node.js进程正确地build立了与套接字的连接。 我也尝试过这样configurationNginx: upstream myapp { server unix:/tmp/app.socket; } server { listen 80; location / { proxy_pass http://myapp; } […]

关于如何在一个永远在使用的网站上运行维护的任何想法?

我帮助在澳大利亚的一个大型游戏网站。 我们从当地时间上午7点到第二天凌晨1点,每周的每一天都进行比赛。 自该网站发布以来,我们一天都没有跳过。 当然,这使得维护非常困难,我们发现我们的临时服务器在我们的生产分支之前多达50次提交。 通常情况下,主开发人员必须非常早地合并分支机构,确保一切正常。 我们一直在试图使我们的中转站点与我们能够到达的生产站点类似,但是我们只能使其类似。 我们的网站是基于Laravel实时Node.JS服务器。 我们正在使用Laravel Forge。 有没有人有任何build议,我们如何推动更新更频繁? 我们对任何事情都开放。

在同一个端口上运行多个服务器

我想在端口80上运行XAMPP服务器和Nodejs服务器。 如果服务器得到一个HTTP请求,那么XAMPP将处理它,如果服务器得到一个WebSocket请求,那么Nodejs 这怎么可能? 如果一个端口已经被使用,那么我不能启动另一个服务器程序。

Docker的COPY问题 – “没有这样的文件或目录”

在我的Dockerfile中,我有以下的“COPY”语句: # Copy app code COPY /srv/visitor /srv/visitor 不用说,在我的主机系统的“/ srv / visitor”目录下,确实有我的源代码: [root@V12 visitor]# ls /srv/visitor/ Dockerfile package.json visitor.js 现在,当我尝试使用这个Dockerfile来构build一个图像时,它会在应该发生“COPY”的步骤挂起: Step 10 : COPY /srv/visitor /srv/visitor INFO[0155] srv/visitor: no such file or directory 它说没有这样的目录,但显然是。 有任何想法吗? 更新1: 有人指出我错了,就像我理解build筑语境一样。 这个build议相当于把“COPY”声明改为: COPY . /srv/visitor 问题是,我这样做了,构build过程在下一步停止: RUN npm install 它说了一些沿着“没有package.json文件find”的行,当明确是一个。 更新2: 我试图用Dockerfile中的这个改变来运行它: COPY source /srv/visitor/ 它尝试运行npm时停止: Step 12 : […]

如何将node.js用作生产Web服务器?

我目前正在开发一个使用节点的项目,当我接近启动时,我正在努力寻找关于如何在商业服务器上设置节点的资源。 我所看到的大多数资源都是由人为的,简单的例子组成的,没有考虑到可扩展性和容错性。 所以,我的问题是,任何人都可以提供build议或指向我的资源来build立一个节点安装: 是容错的 如果一个实例崩溃,需要logging并重新启动 创build一个可以进行负载平衡的节点实例池 提供有用的资源使用见解 生产节点安全实践 其他任何在我肯定会错过的生产networking环境中都会有所帮助

如何在CentOS上安装Node.JS?

我已经find了许多Node.js的安装说明,但它们都显得如此复杂 – 我不是一个超级系统pipe理员,但我可以解决。 我有系统上的yum,但我没有find任何node.js包,我不知道如何编译代码在服务器上或放在哪里。