M3飞镖的腹板有多成熟/生产准备?

时间:2013-02-26 12:28:03

标签: dart

我有一个需要websockets的项目。我打算使用Node.js,但现在我想知道Dart M3是否适合我的用例。

有一些公开的问题,如:

  • 如何部署/托管我的服务器端dartcode(websocket服务器)?
  • 我可以创建多个“房间”,在那里我可以发送消息,订阅的客户端(浏览器)会自动接收这些消息吗?
  • 有多少客户可以订阅这些“房间”?
  • ...

我现在应该只使用Node.js滚动并等待一段时间直到dart准备好了吗?

THX

1 个答案:

答案 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解释得更多(具体语法可能略有过时,但概念仍然相同)。