人人网技术演进:从Resin到Nuclear
需积分: 10 15 浏览量
更新于2024-08-17
收藏 1.35MB PPT 举报
"Rose的发展-人人网架构"
人人网,作为一个知名的社交网络平台,其架构的发展历程反映了互联网技术的演进。在早期,人人网(原名校内网)采用了相对简单的架构,随着时间的推移,为了应对用户量的增长和业务复杂性的提升,它的技术架构逐渐演变为更为复杂和先进的系统。
2006年,人人网起步时,使用的是Resin Pro作为Web服务器,配合MySQL InnoDB主从结构来处理数据存储。这一阶段,系统采用单Storage+Squid的架构,旨在提供基本的网页服务和缓存功能。
进入2007年,随着用户量的快速增长,人人网升级了架构,引入了LVS(Linux Virtual Server)和Resin组成的Web集群,以提高并发处理能力。同时,大量使用了Memcached来缓存数据,减轻数据库的压力。中间层基于ICE(Interactive Connectivity Environment)框架,实现了服务间的通信。数据库进行了垂直分区,以优化查询性能,并开始使用简单的分布式Storage和Lucene搜索引擎。
2008年,人人网进一步向SOA(Service-Oriented Architecture)迈进,开放API,增强了系统的灵活性和可扩展性。MySQL数据库集群采用了水平分区策略,以处理更多数据。此外,加强了监控和安全措施,引入DFS(Distributed File System,如Hadoop DFS)以及龙存系统,以实现大规模数据存储。
2009年至2010年,人人网的架构更加成熟和稳定。通过紧耦合到松耦合的转变,进一步推动了SOA的实施,确保了在系统扩展和灾备方面的稳健性。在这个阶段,MySQL逐渐被NoSQL数据库替代,以适应非结构化数据的处理需求。同时,多数据中心的部署策略保证了服务的高可用性和低延迟,关注TCO(Total Cost of Ownership),以降低成本。
在Rose架构中,Nuclear是核心组件,它是一个分布式键值存储系统,具备数据自动复制和分区的能力,以实现存储容量的无限扩展。Nuclear遵循CAP理论,以CA(Consistency and Availability)为主,保证了数据的可用性,通过Hinted Handoff策略确保永远可以写入,避免了单点故障。Nuclear提供了多种一致性选项,如DISCARD、MIN、QUORUM、DISCARD_QUORUM和ALL,以满足不同场景下的数据一致性和性能需求。其内部基于NIO、Netty进行构建,利用Protocol Buffers进行序列化,Spring框架管理服务,支持丰富的数据模型,如Key-List,允许进行弱结构化的查询。分区策略采用了HashRing,通过动态调整,可以轻松地添加或删除节点,以适应系统规模的变化。
总体来看,人人网的架构发展历程是一个典型的互联网企业技术演进案例,从初期的简单架构逐步发展为复杂、可扩展、高可用的分布式系统,反映了互联网技术在解决大规模数据处理、高并发访问、分布式存储等方面的重要进步。
2019-03-28 上传
点击了解资源详情
2023-07-25 上传
2023-07-17 上传
2023-06-09 上传
2023-03-28 上传
2023-04-14 上传
2023-12-05 上传
活着回来
- 粉丝: 24
- 资源: 2万+
最新资源
- 解决Eclipse配置与导入Java工程常见问题
- 真空发生器:工作原理与抽吸性能分析
- 爱立信RBS6201开站流程详解
- 电脑开机声音解析:故障诊断指南
- JAVA实现贪吃蛇游戏
- 模糊神经网络实现与自学习能力探索
- PID型模糊神经网络控制器设计与学习算法
- 模糊神经网络在自适应PID控制器中的应用
- C++实现的学生成绩管理系统设计
- 802.1D STP 实现与优化:二层交换机中的生成树协议
- 解决Windows无法完成SD卡格式化的九种方法
- 软件测试方法:Beta与Alpha测试详解
- 软件测试周期详解:从需求分析到维护测试
- CMMI模型详解:软件企业能力提升的关键
- 移动Web开发框架选择:jQueryMobile、jQTouch、SenchaTouch对比
- Java程序设计试题与复习指南