Myspace数据库架构经验学习

50万账户

两台Web服务器和一个数据库服务器。

第二代架构:运行在3个SQL Server数据库服务器,一主二从,读写分离。

1-2百万账户

垂直分割:不同的数据库服务于站点的不同功能,如登录、用户资料和博客。账户到达2百万后,

数据库服务器开始受制于I/O容量, 用高带宽、专门设计的网络将大量磁盘存储设备连接在一起, 而数据库连接到SAN(Area StorageNetwork,存储区域网络)。

3百万账户

首先将重点放在了向上扩展上,花费了大约1个半月时间研究升级到32CPU服务器以管理更大数据库的问题。

将用户按每百万一组分割,然后将各组的全部数据分别存入独立的SQL Server实例。MySpace的每台数据库服务器实际运行两个SQL Server实例,也就是说每台服务器服务大约2百万用户。

有一个特殊数据库保存了所有账户的名称和密码。用户登录后,保存了他们其他数据的数据库再接管服务。特殊数据库的用户表虽然庞大,但它只负责用户登录,功能单一,所以负荷还是比较容易控制的。

9百万到1千7百万账户

ColdFusion代码大规模迁移到ASP.NET。

增加数据缓存层(一开始就应该做的事情)。

SAN的引入解决了早期一些性能问题,但站点的要求已经开始周期性超越SAN的I/O容量——即它从磁盘存储系统读写数据的极限速度。迁移到虚拟存储体系:采用了一种新型SAN设备3PAR。

2千6百万账户

切换到64位数据库和操作系统。

加大服务器内存。 


参考原文地址:http://blog.csdn.net/wyzxg/article/details/4092951 

猜你喜欢

转载自shensy.iteye.com/blog/1629797
今日推荐