我目前有一个TCP服务器应用程序.Net来接收和向客户端提交消息.我正在考虑构建一个web应用程序,因此需要通信层.

我已经建立了一个 node .JS+插座.IO应用程序连接到我的TCP服务器,然后将通信推送到web应用程序,一切正常.

我刚刚读到了关于Signal的文章,它可以作为一种 Select ,使其保持在最佳状态.网络堆栈.

然而,我也发现我可以编写一个C#Websocket服务器,一个基本的演示

我假设这个基本服务器就是Signal,但显然它有更多的功能?

我试图决定的是,我是将当前的TCP应用程序附加到Websocket服务器上,还是使用单独的信号器或 node .js路由?出于兴趣信号应用程序是如何运行的,它是Windows服务、控制台应用程序还是IIS服务?

推荐答案

信号器就像插座.IO支持传输协商/回退.它是一个框架,而不是服务器,所以您需要将其托管在某种服务器上.我们有ASP的主机.NET、OWIN(例如Kayak)和self-host,因此您可以轻松地在自己的进程中运行它,例如Windows服务.

Signal支持浏览器客户端(JS).NET、Windows Phone 7和Silverlight.还有iOS、Mono Touch等客户.

Signal将为您提供比原始套接字更高级别的API,这是它的一大优势,允许您以广播(或有针对性的)方式从服务器到客户端执行"RPC"之类的操作.

Node.js相关问答推荐

如何更改ejs中的镜像src,以防从OMDB API获取的某些镜像具有src=N/A

Express无法发布

如何从shell脚本中计算ecmascript模块?

mongoose 模型填充问题

我的Node.js应用程序没有将Mongoose方法findByIdAndDelete作为函数进行检测

在内存中加载安全密钥安全吗?还是每次都从文件中读取?

通过PutObjectCommand上传AWS S3 PDF文件,结果为空PDF

类扩展值[object object]不是构造函数或null

TypeError:在使用 Jest、Supertest、Express、Typescript 进行测试时无法读取未定义的属性(读取listen)

简单的 Node js 程序但执行顺序似乎不同?

[NodeJs 从 ADAL 升级到 MSAL]:无法在字符串上创建属性authenticationScheme

aws cdk 2.0 init 应用程序无法构建更漂亮的问题,这来自 jest-snapshot

fs.writefile 选项参数的可能值,尤其是只读文件的整数

node.js 变量不存在代码块

等到文件上传完成的有效方法(mongoose )

如何防止 node.js 中的内存泄漏?

如何正确使用 package.json 中的关键字属性?

Connect/Express 中的session和cookieSession中间件有什么区别?

Node.js:socket.io 关闭客户端连接

如何判断 Node.js 中是否设置了环境变量?