我有一个需要websockets的项目。我打算使用Node.js,但现在我想知道Dart M3是否适合我的用例。
有一些公开的问题,如:
我现在应该只使用Node.js滚动并等待一段时间直到dart准备好了吗?
THX
答案 0 :(得分:3)
您的未解决问题的具体答案如下:
如何部署/托管我的服务器端dartcode(websocket服务器)?
使用入口点dart文件(例如my_app.dart
)编写服务器端dart代码,并在服务器某处使用Dart二进制文件执行它。这与node.js.相同。 p>
我可以创建多个“房间”,在那里我可以发送消息,订阅的客户端(浏览器)会自动接收这些消息吗?
这对您来说是一项编程挑战。当客户端进行websocket连接时,服务器获取连接对象的实例。一种可能的解决方案是您维护一个房间列表,并将每个客户端的连接添加到客户端想要连接的每个房间。或者,维护一个客户端对象列表,并为该客户端提供一个房间列表。 (如果您使用node.js,这就是您必须解决的问题。)
有多少客户可以订阅这些“房间”?
一根绳子有多长?以编程方式,没有限制,但是你会被ram,硬件限制....(尝试一下,让我们知道你的应用程序在负载下如何执行) - 请参阅此相关问题:Socket.io: How many concurrent connections can WebSockets handle?以及相关的已接受答案(再次,这实际上不是Dart特定的。)
基本上,在服务器端使用Dart技术方面是在服务器端使用node.js非常相似的选择。您使用Dart获得的是强大的类型检查,工具,语言导入的库导入,以及JavaScript解决方案无法获得的经典OOP。
Seth Ladd的blog post about Dart WebSockets解释得更多(具体语法可能略有过时,但概念仍然相同)。