【问题标题】:.NET Core WinService Async Socket Listener.NET Core WinService 异步套接字侦听器
【发布时间】:2021-12-30 15:21:30
【问题描述】:

我目前正在根据套接字连接处理大量用例。到目前为止,我一直在关注这篇文章,它至少有一些工作,但我不相信它会根据我的用例的需要执行,因此我在这里寻找有关如何正确优化它的建议。 Using .Net 4.5 Async Feature for Socket Programming

提供的解决方案确实可以处理多个连接的客户端,在我的用例中正好是 12 个客户端。这些客户端每天将产生大约 80,000 条消息,因此必须使用异步。我目前遇到的是,当我刷新多条消息时,服务开始滞后并最终“停止”处理传入的消息。我认为部分原因是 TCP 客户端被一遍又一遍地创建和销毁。有没有办法可以为每个客户端永久创建 TCP 侦听器并保持连接?我认为随着我的用例的数量,这种开销被删除将对性能产生巨大影响。如果您有其他建议,我也很乐意接受。关于我用作指南的这个解决方案的最后一件事是服务器线程上有一个 60 秒的计时器,我不太了解它的目的。随意问的问题!仅供参考,我的实现与我之前链接的文章相同,只是在调用我的服务类等内部进行了一些逻辑更改,如果您想知道这些都是异步任务。 :)

【问题讨论】:

    标签: .net sockets tcpclient tcplistener


    【解决方案1】:

    在那个演示中,60 秒计时器只是在 60 秒后停止监听器。在您的用例中,只要您的服务器正在运行,侦听器就应该保持活动状态。

    【讨论】:

    • 有趣,我绝对不想要那个!大声笑
    猜你喜欢
    • 2021-12-16
    • 1970-01-01
    • 2011-02-01
    • 1970-01-01
    • 2015-06-07
    • 1970-01-01
    • 2017-09-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多