首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我应该为JavaScript客户端的TCP服务器使用哪种编程语言?

我应该为JavaScript客户端的TCP服务器使用哪种编程语言?
EN

Stack Overflow用户
提问于 2010-09-21 17:35:06
回答 3查看 226关注 0票数 0

我正在询问哪种编程语言对于以下情况是最可接受的。

该程序将充当TCP网络应用程序中的服务器,使用预先编写的框架为输出到浏览器的JavaScript客户端提供服务。

服务器程序需要“始终在线”,并且能够处理JSON。

我的第一反应是使用PHP,因为它可以运行相同的web服务器,并且具有预先存在的JSON和TCP功能。有没有一种方法可以在服务器上运行PHP脚本,而不需要打开浏览器来“触发”脚本执行?-脚本必须连续运行几个小时而不会超时。

其他被考虑的语言是C#、C++、Java。

提前谢谢。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-09-21 17:45:05

node.js

主页上的第一个示例显示了在其中构建服务器是多么容易

代码语言:javascript
复制
var http = require('http');
http.createServer(function (req, res) {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end('Hello World\n');
}).listen(8124, "127.0.0.1");
console.log('Server running at http://127.0.0.1:8124/');
票数 1
EN

Stack Overflow用户

发布于 2010-09-21 17:41:04

任何东西都可以发出一个请求来触发PHP脚本的执行,它不一定是浏览器。例如,cron作业可以简单地请求一个特定的页面,然后它将被执行。或者它可以execute it directly

票数 0
EN

Stack Overflow用户

发布于 2010-09-21 20:56:54

看起来你正在尝试运行一个php脚本来将数据实时推送到浏览器。PHP不适合这样做,因为它是io阻塞的,当没有足够的可用线程时,它会变得非常慢/崩溃。从可伸缩性的角度来看,这使得它变得非常糟糕。Java是这方面的理想选择,因为它提供了控制线程处理方式的能力。如果您确实希望将数据实时推送到您的浏览器,那么xhr长轮询就是您想要的。到目前为止,APE-server是我找到的最好的解决方案:

http://www.ape-project.org/

顺便说一下,你可以在没有浏览器的情况下在服务器端运行php脚本。对于linux系统,您将需要php-cli来执行此操作。要获得php-cli,在终端中,键入sudo -s,按回车键,键入您的密码,按回车键,键入sudo apt-get install php-cli,按y,然后再次按回车键。然后,在与您的php文件相同的目录下创建一个名为yourfilename.run的文件,并在.run文件中插入以下内容:

php -f name_of_php_file.php

允许文件在终端执行(右键选择),然后双击在终端打开。瞧,你的脚本在没有浏览器的情况下运行。

但是,如果你想把数据实时推送到浏览器上,php不是一个好的选择。花点时间研究一下ape-server。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3758990

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档