人人网技术架构介绍.ppt

上传人:xt****7 文档编号:4430558 上传时间:2020-01-07 格式:PPT 页数:42 大小:1.35MB
返回 下载 相关 举报
人人网技术架构介绍.ppt_第1页
第1页 / 共42页
人人网技术架构介绍.ppt_第2页
第2页 / 共42页
人人网技术架构介绍.ppt_第3页
第3页 / 共42页
点击查看更多>>
资源描述
人人网技术架构介绍 人人网 黄晶 Guideline 人人网架构发展NuclearRose 架构发展 2006Let sGetitstartedResinProMySQLInnoDB主从结构单Storage Squid 架构发展 2007突飞猛进LVSResinWeb集群大量使用Memcached中间层 基于ICEMySQL集群 垂直分区简单分布式StorageLucence搜索 架构发展 2008继续突破开放API SOAMySQL集群 水平分区加强监控和安全DFS 龙存 架构发展 2009 2010稳健发展紧耦合 松耦合 SOAGracefuldegradationMySQL NoSQL多数据中心 可扩展 灾备关注TCO Guideline 人人网架构发展NuclearRose Nuclear 功能 分布式key value存储数据自动复制到多个节点数据自动分区到不同节点存储容量无限扩展CAP CA Nuclear CAP 可用性永远可写入 HintedHandoff 不存在单点风险 Nuclear CAP 多一致性选项DISCARDMINQUOROMDISCARDUOROMALL提供最终一致性EventuallyConsistent Nuclear Overview Nuclear 原理 构建NIONettyProtocolBuffersSpring富数据模型Key List弱结构化查询 Nuclear 原理 分区 HashRing NodeA0 6148914691236517205NodeB6148914691236517205 12297829382473034410NodeC12297829382473034410 18446744073709551616 Nuclear 原理 增加节点 NodeN0 3074457345618258602NodeA3074457345618258602 6148914691236517205NodeB6148914691236517205 12297829382473034410NodeC12297829382473034410 18446744073709551616 Nuclear 原理 增加节点 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 A a b NB b c NC c n N Nuclear 原理 替换节点 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 N Nuclear 原理 删除节点 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 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 D Nuclear 原理 节点状态迁移图 Nuclear 原理 Consistency和NWRW R NW 2R 2N 3系统保障最终的一致性MerkleTree Nuclear 应用 系统组件普通节点 Node 接收Client请求提供数据存储中心节点 Seed 维护整个NuclearInstance的拓扑关系健康检测客户端 NuclearClient 提供CRUDAPI Nuclear 应用 NuclearInstance NodeA NodeB NodeZ Seed ClientRequest Nuclear 应用 节点变更增加shnode shnewA删除deletenodeA manage sh 替换replaceA Nuclear 应用 性能单节点处理最高2 5Wreq s典型应用环境 4NodeMysqlN 3W 2R 2100ClientWriteRequest 单个Node15862req s 平均单次请求耗时5ms 99 51 请求耗时 50ms Nuclear 应用 性能 Nuclear 应用 NuclearClientAPI Get paramkey paramdataID paramconsistencyLevelList paramkey paramCondition paramconsistencyLevelNextDataID Put paramkey paramdataID paramvalue paramconsistencyLevelReplace同PutdataID可选Delete paramkey paramdataID paramconsistencyLevel Nuclear 应用 CodeExampleDataIDProtocolBuffer Nuclear 应用 NuclearManageClientQPS查看Node接收请求总数Node处理请求耗时数据节点信息查看集群拓扑信息查看动态更改节点处理线程数 Nuclear 展望 EventuallyConsistentVectorClockAsyncStoreReadCacheBalanceMonitorBigTable Nuclear 参考 Amazon sDynamo Guideline 人人网架构发展NuclearRose Rose是什么 Rose人人网释出的开源Web开放框架 Java 主创 王志亮 人人网架构组REST式Web开发基于Spring技术支持服务端portal Rose的应用 100 覆盖人人网Web网站首页 个人主页状态 日志 分享公共主页开放平台 Rose的发展 人人网支持全线使用不断更新稳定发布开源路线Wiki电子书 Rose开发示例 资源假设有2个只读资源GET blog 251375230 459764084这是一篇日志的URL251375230是作者的ID459764084是该日志的IDGET blog 251375230这是某个人的日志的URL251375230是作者的ID Rose开发示例 控制器骨架packagecom renren blog controllers blog ReqMapping userId 0 9 publicclassBlogController GetpublicStringlist Param userId longuserId return blog list Get entryId 0 9 publicStringshow Param userId longuserId Param entryId longentryId return blog show Rose开发示例 视图文件骨架根存放地址 webapp viewsBlogController视图地址 webapp views blogblog list jspblog show vm Rose开发示例 model 控制器 视图 AutowiredBlogServiceblogService GetpublicStringlist Invocationinv Param userId longuserId Listentries blogService findUserEntries userId inv addModel entries entries return blog list Rose开发示例 使 Autowired工作实现步骤创建com renren blog service BlogService及其实现在WEB INF下创建spring配置文件 applicationContext blog xml把BlogService实现配置到该文件中BlogController将自动通过类型找到BlogService实例并注入 dependecyinjection autowired机制在纯粹spring中默认是关闭的在rose下默认是打开的 而且无法关闭 Rose开发示例 部署在sourceFolder META INF 目录下创建rose properties 写上rose controllers messages applicationContext daojar包发布 确认rose properties存在于目标jar的META INF下web xml配置roseFilterroseFilternet paoding rose RoseFilterroseFilter REQUESTFORWARDINCLUDE start sh Rose其他特性 可扩展 可订制参数解析器参数验证器拦截器统一错误处理器flash 在重定向前后传递信息简单 可层级化的国际化支持rose重量级插件 服务端portal技术调试工具 rose info jar rose info mapping等jade项目集成 annotation式的DAO Rose Statement 开源化 使用ApacheLicense Version2 0 通用化 不做只适合某个公司假设的事情 安全 不含法律 道德 业内所不允许行为的代码调试工具默认关闭 稳定发布 在人人网经受每日数亿访问冲击 稳定发布 支持 提供丰富的wiki 电子书 2010Q2 Q3 公共主页 ThankYou
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!