我决定用 c# 编写一个纸牌游戏,它有一个用于主服务器的 winform 应用程序,以通过 Web 界面管理游戏。我为主服务器选择了 SignalR 自托管。因为我想把这个应用程序卖给别人,不想修改网页界面的代码或 html。所以我的问题是:这对处理 10000 个客户请求有好处吗?有没有办法编写这个应用程序以获得更好的性能?另一件事是我想编写主服务器和登录提款配置文件......大多数是由扑克专家等客户编写的,我只是创建一个带有 json 的 api 来执行此功能。plzzzz 指导我哪种方式更好地编写这个应用程序!
问问题
529 次
1 回答
1
随着您的服务器代码自托管和调用您的服务器方法的 javascript 客户端,成为您的基于浏览器的客户端,您的设计应该可以工作。
我正在看这个。https://docs.microsoft.com/en-us/aspnet/signalr/overview/deployment/tutorial-signalr-self-host
但我认为您需要弄清楚自主机的横向扩展场景和服务器故障场景。如果服务器上有补丁更新并且必须重新启动,您需要能够获得备份。还要考虑需要升级服务器的情况。因此,您需要能够在多个服务器中托管它,并且您需要提供信号器背板选项。
从性能的角度来看,我已经在单个 4 核 14 GB 服务器上测试了一个 web api signalR 应用程序,并且能够扩展到 20k 连接,服务器每秒可以轻松地处理超过 200 个请求。
使用背板时,这些数字约为 100-150 rps。两种情况下的响应时间都非常好~ 500 ms。
尽管请注意,根据您的实际功能,您的数字可能会有很大差异。
于 2017-08-23T05:29:12.253 回答