C# 非阻塞 io(例如:反应器模式)

本文关键字:反应器 模式 例如 io | 更新日期: 2023-09-27 18:32:11

我想为我的新产品构建新服务器。它将是http驱动的,并且必须处理大量请求。在大多数情况下,服务器将查询数据库并处理结果(与数据库相比,处理本身可以忽略不计)。我现在的资源也有些有限。

我曾经用nodejs构建这样的东西,但我厌倦了动态类型。我想要一些静态类型的东西,并从javascript中休息一下。对于第一部分,我想到了TypeScript。对于第二个 C#。

我可以在 C# 上构建性能几乎与 Node.JS 一样的服务器吗?我不需要多线程逻辑,我想要异步事件驱动的io。

有图书馆可以提供帮助吗?是否有任何使用异步io的开源项目可以查看?

C# 非阻塞 io(例如:反应器模式)

Microsoft发布了几个在MSDN上使用异步操作而不是多线程逻辑的示例。

http://msdn.microsoft.com/en-us/library/fx6588te.aspx 处理异步套接字http://msdn.microsoft.com/en-us/library/kztecsys.aspx 处理异步文件 I/O

您可能还想研究 TcpClient 对象的异步方法,例如此处 http://msdn.microsoft.com/en-us/library/system.net.sockets.tcplistener.beginaccepttcpclient.aspx

msdn 上有很多用于此类操作的文档,我建议先检查这些文档,然后在实现其中一种操作时遇到特定问题,然后再回发

我建议阅读这个博客 http://www.salmanq.com/blog/net-and-node-js-performance-comparison/2013/03/它还为您提供了一些基本的代码示例来开始使用。如果你想要更多的.Net舒适性,只需编写一些MVC Web api。有大量示例和文档可用