当前位置:编程学习 > C#/ASP.NET >>

.net如何做大型站点,比如分布式服务器?数据库集群?

网上找了很多啊,找不到具体的资料,只有一些理论,大概是这些东西:

大型动态应用系统又可分为几个子系统:

l         Web前端系统

l         负载均衡系统

l         数据库集群系统

l         缓存系统

l         分布式存储系统

l         分布式服务器管理系统

l         代码分发系统




但是我想,其中每一项都可以深入的来说明哦。


哪位大大有大型站点的开发经历啊,给点资料之类的,或者指点指点小弟啊。

--------------------编程问答-------------------- 学习! --------------------编程问答-------------------- 只稍微了解一两项,期待大牛。

不过,一言两语真说不清楚。 --------------------编程问答-------------------- 学习,坐等! --------------------编程问答-------------------- 确实说不清 也确实没做过
有的说中间要个软件层 没搞明白啥意思
网上能找到的资料也是理论很多 没有实战
期待大牛给点资料或者给两句话

--------------------编程问答-------------------- 坐等大牛跟楼主细谈了,学习 --------------------编程问答-------------------- 负载均衡是基于多服务器的。
分布式是基于WebService或者WCF的
缓存可以用MemCached.
--------------------编程问答--------------------

没实践没真理. 只是说说没啥大的用处的. --------------------编程问答-------------------- 没弄过 --------------------编程问答-------------------- 这个问题 来个大牛来解答了。我们也好围观啊 --------------------编程问答-------------------- 这个岂是一句两句能说的完的啊 --------------------编程问答-------------------- 去博客园搜搜 --------------------编程问答--------------------
引用 6 楼 keepfool 的回复:
负载均衡是基于多服务器的。
分布式是基于WebService或者WCF的
缓存可以用MemCached.


是啊 就是基于多服务器的 --------------------编程问答-------------------- 做个记号
坐等高手解答! --------------------编程问答-------------------- 这个是架构层面的了,一般程序不用做过多的考虑。
通常网站只要做好自己的缓存策略就可以了,至于分布式缓存的容器什么的。
通常都是写provider然后注册到web.config中。
这样可以独立维护分布式应用的支持代码。
当然还要借助F5,nignx,LAS等负载均衡的服务。
简单概括差不多了。详细的要讲很多的。 --------------------编程问答-------------------- 分布式的目的只有2个 提高IO,减少单点故障。

Web前端系统
网站数据主要分为发布的数据和交互数据,交互数据中又有事务性数据和非事务性数据。
对于发布数据,通常是通过缓存来提高IO的。
交互数据事务性的需要优化整个事务链中所有的节点。通常用到消息队列,分布式事务等技术。但性能肯定最差。
非事务性的数据,也主要是以缓冲Buffer来提高IO性能。就是等待一定的数据一起进行处理。减少处理次数。

负载均衡系统
这个通常由负载均衡服务完成。有硬件有软件。主要功能是把请求分散到所有还可以工作的服务器上。
硬件:F5
软件:LVS,nignx

数据库集群系统
mysql和oracle已经具备并行的集群。
mssql嘛需要从结构上优化,或者做串行的集群。
当然还有nosql,nosql普遍支持并行的集群。(原理决定它很容易实现并行集群)

缓存系统
通常由分布式缓存服务完成。这个有很多。流行的是Memcached。原理比较简单,主要是性能要好。
不过官方提供的provicder比较肾亏,所以有能力还是自己根据自己的需求改吧。

分布式存储系统
这个属于硬件层面了,当然有云存储也可以。我们是买的设备,我们买得是便宜的都要几百万。

分布式服务器管理系统
目前市面上有一些服务器监控平台,商业化的。买来用就好了。服务器不是很多的情况下,建议尽量使用虚拟化技术和免费的window服务器监控软件。
这不是必要的。

代码分发系统
理论上是更利于维护,但目前我们是没有。
这个不是必要的。
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,