商业云平台和开源云平台
Google云平台
主要云服务
- SaaS:Google文件、Google地图、Google日历、Gmail
- PaaS:Google App Engine
需求和设想
- 需求:海量用户和海量数据,需要具备较强的可伸缩性
- 设想:应用向互联网迁移;数据向互联网迁移;计算能力向互联网迁移; 存储空间向互联网迁移
四大法宝
- 文件存储:GFS
- 并行数据处理:MapReduce
- 结构化数据表:BigTable
- 分布式锁:Chubby
Chubby介绍
- 基于松耦合分布式系统的锁服务:采用Paxos算法,解决一致性问题;粗粒度的锁,更长的持续时间,可以减少换锁的系统开销;建议性的锁,非强制性的锁,提供更大的灵活性
- 功能:
- 服务器端:选举主服务器
- 客户端:与服务器端通过远程过程调用(RPC)连接,每个应用程序有一个Chubby程序库
- 分布式、存储大量小文件的文件系统:服务信息的直接存储
- 客户端和主服务器的通信:KeepAlive握手协议