在很多大型网站的终极架构中都会有用c或c++写的模块,例如memcached,FastDFS,toyota TT等等。而更令微软程序员们郁闷的是这些类库往往都是在linux或者unix机器上经受过大量的性能和稳定性测试,而在windows的服务器上是否稳定,是否可以施展其高性能,就是一个未知数;例如据说将memcached server装在windows server上虽然可以装的上,但是却不是那么高效,还有可能会不稳定,所以我们公司用的memcached server只好部署在linux上。还有一点这些高性能,分布式系统或模块提供客户端的时候也往往是先提供php,java的,最后才出.net的,有的甚至没有.net 的。
其实大规模的网站规模越大和网页语言本身性能关系越小,不管是php,java还是asp.net,都很少会造成大规模网站的性能瓶颈,性能瓶颈往往出在大规模的数据存储的读写上。而在解决存储问题时出现的解决方案大多是用c或c++写的,这和c,c++优秀的性能是分不开的。
作为微软的程序员,我们应该如何对待这个问题呢?我们有几种可选方案:
1. 自己开发应对高性能的模块,并将这些高性能模块在windows下做充分的压力考验;
2. 期待微软开发出我们需要的高性能的模块,然后我们来调用
3. 让这些高性能的模块在linux或者unix下运行,我们自行开发这些模块的存储客户端
…. 如果你有其他的方案,请补充
上面提到的三个方案,方案1如果用c#开发,恐怕性能上很难与c,c++开发的模块相媲美;方案二,恐怕我们等的黄花菜都凉啦,还看不多希望,例如memcached出来后,我很希望微软也有类似的分布式缓存系统,但是等到现在代号从Velocity到Windows AppFabric也没看到谁真的在大点的网站系统中实际用过它。相比方案1,2方案3或许更可行,让memcached,或no-sql db运行在linux或者unix上,然后用.net 的客户端去访问他们。
我提上面的问题并非只想发发牢骚,希望看看大家怎么看待这个问题,希望能够集思广益,看我们.net程序员如何更好应对大规模网站开发。
相关推荐
FastReport.Net程序员手册.pdf
《C#与.NET程序员面试宝典》取材于各大IT公司的历年面试题252个(包括研发类笔试及口试题目、情商及智商类题目),详细分析了应聘C#与.NET程序员职位的常见考点。《C#与.NET程序员面试宝典》主要内容包括:面试流程...
.NET程序员面试指南2 .NET程序员面试指南2 .NET程序员面试指南2
这是.NET程序员面试指南1 .NET程序员面试指南2=http://download.csdn.net/source/1597090
.net程序员面试指南 第6章源代码.net程序员面试指南 第6章源代码
收集了很多师兄师姐出去就业后,收集回来的企业面试.net程序员的面试题啊!不容易啊!1-8份面试题,好好看啊!都是技术题,祝面试上自己喜欢的职业
.net程序员面试指南,找工作面试有帮助
微软.net程序员高级培训教程资料(pdf)
.NET程序员面试专题(面试题集)Tiger .net 面试题目及解答
微软.NET程序员高级培训教程系列资料微软.NET程序员高级培训教程系列资料微软.NET程序员高级培训教程系列资料微软.NET程序员高级培训教程系列资料微软.NET程序员高级培训教程系列资料微软.NET程序员高级培训教程系列...
.NET程序员面试
ASP.NET程序员职业规划 相当实用
认证培训之一:微软.NET程序员高级培训教程系列资料
2011年.net程序员面试宝典.pdf
应聘.NET程序员的专业简历模板 -------------------------------------------
有关.net程序员的面试题,看看,很有帮助的
2023最新版报表开发工具——fastreport中文开发手册大全 都是中文版本的手册,私我免费获取哦~
微软.NET程序员高级培训教程资料--aspnet 1
《C#与.NET程序员面试宝典》.docx