【问题标题】:Client server multi-threaded application [closed]客户端服务器多线程应用程序[关闭]
【发布时间】:2012-09-29 11:23:46
【问题描述】:

我想问一下创建客户端服务器应用程序的最佳方法是什么。从服务器传输到客户端的数据最大为 15000 字节/会话 (15 Kb)

客户端到服务器是 5000 字节/会话 (5 Kb)

在我期待的更新中(在应用程序启动并运行之后).. 将传输更多流量.. 数据将是客户端到服务器*number_of_session_initiated(至少分发 800 万个会话)

我现在拥有的:

服务器已完成 80%,这里的答案将帮助我完成 100% .. 客户端正在建设中.. 但由于它们的工作方式相同但有一些限制,因此将从服务器中占用大量资源。

对于代码,我使用下面的代码获取时间 (GMT)

DateTime time = DateTime.UtcNow;
string format = "M/d/yyyy HH:mm:ss tt";
Console.WriteLine(time.ToString(format));

发送到客户端/服务器的输出和数据基于输入。

那么,谁能指导我获得一个可以处理多个线程的多线程客户端/服务器应用程序的最佳方法?

注意:线程将仅在服务器端。客户端只能与服务器打开一个会话,但服务器可以同时与多个客户端通信。

最多可以创建多少个线程?

最好的问候。

编辑

忘记添加..所有数据都将被加密发送,因此服务器/客户端将有负载进行加密/解密(尚未决定加密机制)。

【问题讨论】:

  • 你的服务器已经完成了 80%,现在你问最好的设计是什么?
  • 这个问题太模糊了,除了“使用 IIS 作为你的服务器”之外的任何有用的答案。
  • @HenkHolterman :我的意思是缺少的部分是服务器和客户端之间的通信。而不是一切都设置好了。数据库,设计输入验证。一切。

标签: c# multithreading communication


【解决方案1】:

客户端服务器多线程应用程序的 .NET 解决方案是WCF。可以创建的最大线程数受 WCF 主机操作系统的限制,如果您要在 IIS 中托管服务器,那么您可以使用 AppPool 设置来管理您的线程,如果您选择在 Windows 服务中自托管 WCF您可以在代码中进行自己的线程管理。

WCF 提供了更多的加密机制here

【讨论】:

    猜你喜欢
    • 2015-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-21
    • 2011-04-28
    • 1970-01-01
    • 2016-01-10
    相关资源
    最近更新 更多