Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 有哪些最佳实践可以确保.NET代码能够很好地扩展?_C#_.net_Scalability - Fatal编程技术网

C# 有哪些最佳实践可以确保.NET代码能够很好地扩展?

C# 有哪些最佳实践可以确保.NET代码能够很好地扩展?,c#,.net,scalability,C#,.net,Scalability,上周,我在东北的一家TripleA MMORPG游戏公司面试了一个职位。我没有得到这份工作,但面试中提到的一个方面是关于您编写的代码的可伸缩性,以及在设计架构和类的早期应该如何考虑它 遗憾的是,我从来没有想过我所写的.NET代码的可伸缩性(我使用单用户桌面和移动应用程序,我们主要关注的是设备内存和数据传输速率)。我有兴趣学习更多关于编写代码的知识,这些代码可以很好地扩展,以便在客户机-服务器环境中处理广泛的远程用户,特别是MMORPG 有什么书、网站、最佳实践等可以让我开始研究这个话题吗?这里有

上周,我在东北的一家TripleA MMORPG游戏公司面试了一个职位。我没有得到这份工作,但面试中提到的一个方面是关于您编写的代码的可伸缩性,以及在设计架构和类的早期应该如何考虑它

遗憾的是,我从来没有想过我所写的.NET代码的可伸缩性(我使用单用户桌面和移动应用程序,我们主要关注的是设备内存和数据传输速率)。我有兴趣学习更多关于编写代码的知识,这些代码可以很好地扩展,以便在客户机-服务器环境中处理广泛的远程用户,特别是MMORPG


有什么书、网站、最佳实践等可以让我开始研究这个话题吗?

这里有一些地方可以开始:


特别是,关于大型网站的完整或文章,以及它们是如何扩展的(Digg、flickr、facebook、YouTube等等)

如果你正在寻找物理验证,我通常会发现帮助你做一些事情。这通常可以让您很好地了解设计中可能存在的任何不可预见的问题,以及添加到设计中有多容易。我会尝试应用任何可能的设计模式,以实现未来的可伸缩性。这是一个很好的参考。下面是一些使用设计模式显示代码前后的好例子。这可以帮助您可视化设计模式如何使代码更具可伸缩性。是一篇关于软件可伸缩性的特定设计模式的文章。

这里我只想强调一点。只要缓存你的读取。制定一个合适的缓存策略,确定哪些对象可以被缓存以及缓存的时间段。拥有分布式缓存场将减轻数据库服务器的负载,这将极大地提高性能


在高负载多用户场景中,即使只是将一些数据缓存几秒钟,也会为您带来巨大的好处。

+1该站点非常棒。充满了关于大型网站架构的非常有趣的文章