人人网技术架构的演进

人人网技术架构的演进

ID:17516956

大小:1.35 MB

页数:42页

时间:2018-09-02

人人网技术架构的演进_第1页
人人网技术架构的演进_第2页
人人网技术架构的演进_第3页
人人网技术架构的演进_第4页
人人网技术架构的演进_第5页
资源描述:

《人人网技术架构的演进》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、人人网技术架构介绍人人网·黄晶Guideline人人网架构发展NuclearRose架构发展2006Let’sGetitstartedResinProMySQLInnoDB主从结构单Storage+Squid架构发展2007突飞猛进LVSResinWeb集群大量使用Memcached中间层,基于ICEMySQL集群,垂直分区简单分布式StorageLucence搜索架构发展2008继续突破开放API,SOAMySQL集群,水平分区加强监控和安全DFS,龙存架构发展2009~2010稳健发展紧耦合=>松耦合,SOAGrace

2、fuldegradationMySQL=>NoSQL多数据中心,可扩展,灾备关注TCOGuideline人人网架构发展NuclearRoseNuclear–功能分布式key-value存储数据自动复制到多个节点数据自动分区到不同节点存储容量无限扩展CAP-CANuclear-CAP可用性永远可写入(HintedHandoff)不存在单点风险Nuclear-CAP多一致性选项DISCARDMINQUOROMDISCARDUOROMALL提供最终一致性EventuallyConsistentNuclear-OverviewNu

3、clear-原理构建NIONettyProtocolBuffersSpring富数据模型Key=>List弱结构化查询Nuclear-原理分区-HashRingABCNodeA0~6148914691236517205NodeB6148914691236517205~12297829382473034410NodeC12297829382473034410~18446744073709551616Nuclear-原理增加节点NodeN0~3074457345618258602NodeA3074457345618258602

4、~6148914691236517205NodeB6148914691236517205~12297829382473034410NodeC12297829382473034410~18446744073709551616Nuclear-原理增加节点A{[c,a],[b,c],[a,b]}B{[a,b],[c,a],[b,c]}C{[b,c],[a,b],[c,a]}N{[c,n],[b,c],[a,b]}A{[n,a],[c,n],[b,c]}B{[a,b],[n,a],[c,n]}C{[b,c],[a,b],[n,a]

5、}A[a,b]=>NB[b,c]=>NC[c,n]=>NNuclear-原理替换节点A{[d,a],[c,d],[b,c]}B{[a,b],[d,a],[c,d]}C{[b,c],[a,b],[d,a]}D{[c,d],[b,c],[a,b]}N{[d,n],[c,d],[b,c]}B{[n,b],[d,n],[c,d]}C{[b,c],[n,b],[d,n]}D{[c,d],[b,c],[n,b]}B[d,a]=>NC[b,c]=>ND[c,d]=>NNuclear-原理删除节点A{[d,a],[c,d],[b,c]}B

6、{[a,b],[d,a],[c,d]}C{[b,c],[a,b],[d,a]}D{[c,d],[b,c],[a,b]}B{[d,b],[c,d],[b,c]}C{[b,c],[d,b],[c,d]}D{[c,d],[b,c],[d,b]}C[b,c]=>BD[c,d]=>CB[d,a]=>DNuclear-原理节点状态迁移图Nuclear-原理Consistency和NWRW+R>NW=2R=2N=3系统保障最终的一致性MerkleTreeNuclear-应用系统组件普通节点(Node)接收Client请求提供数据存储中心

7、节点(Seed)维护整个NuclearInstance的拓扑关系健康检测客户端(NuclearClient)提供CRUDAPINuclear-应用NuclearInstanceNodeANodeBNodeZ……SeedClientRequestNuclear-应用节点变更增加shnode.shnewA删除deletenodeA(manage.sh)替换replaceANuclear-应用性能单节点处理最高2.5Wreq/s典型应用环境:4NodeMysqlN=3W=2R=2100ClientWriteRequest单个N

8、ode15862req/s 平均单次请求耗时5ms 99.51%请求耗时<50msNuclear-应用性能Nuclear-应用NuclearClientAPIGet@paramkey@paramdataID@paramconsistencyLevelList@paramk

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。