110 likes | 284 Views
从网技术交流. 大街网可能关心的一些话题. 内容概要. 服务层次结构 各层次的解决方案(重点). 服务的层次结构. 七层 http 反向代理: nginx web 层服务器,正在从 resin 转向 tomcat 逻辑服务层:业务逻辑封装在此 基础数据服务:用户、好友、脚印等 应用 数据 缓存: 具体垂直业务需要缓存的数据 持久存储:传统的 mysql 部署+散表散库的设计和开发套件 NoSQL 的引入非常有必要. 各层次的解决方案. 数据库集群解决方案 应用数据缓存解决方案 逻辑服务层解决方案 前后端开发配合解决方案 其它. 散表散库. 散表:
E N D
从网技术交流 大街网可能关心的一些话题
内容概要 • 服务层次结构 • 各层次的解决方案(重点)
服务的层次结构 • 七层 http 反向代理:nginx • web层服务器,正在从resin转向tomcat • 逻辑服务层:业务逻辑封装在此 • 基础数据服务:用户、好友、脚印等 • 应用数据缓存:具体垂直业务需要缓存的数据 • 持久存储:传统的mysql部署+散表散库的设计和开发套件 • NoSQL的引入非常有必要
各层次的解决方案 • 数据库集群解决方案 • 应用数据缓存解决方案 • 逻辑服务层解决方案 • 前后端开发配合解决方案 • 其它
散表散库 • 散表: • blog = blog_0 + blog_1 + ... + blog_99 • 散库: • shard 1 = blog_0 + blog_1 + ... + blog_49 • shard 2 = blog_50 + blog_51 + ... + blog_99
mysql集群 • shard i= a group of ( master + slave ) • shard 1.master = blog_0 + blog_1 + ... + blog_49 • shard 1.slave 1= blog_0 + blog_1 + ... + blog_49 • shard 1.slave 2= blog_0 + blog_1 + ... + blog_49 • shard 2.master = blog_50 + blog_51 + ... + blog_99 • shard 2.slave 1= blog_50 + blog_51 + ... + blog_99 • shard 2.slave 2= blog_50 + blog_51 + ... + blog_99 • multi-master
开发套件 • =conf-server + smart client + api • 我们在邮件中已经有一些讨论了,重点有几点 • 配置项设计 • 配置服务器设计 • 连接池管理 • 路由策略 • 切库操作策略 • 监控与报告
逻辑服务层xoa • 分布式的逻辑层 • 解除富jar包的依赖 • 快速变更业务逻辑 • 可控 • xoa • 采用SPDY协议 • 基于netty开发 • 可运行在tomcat上
应用数据缓存xcache • cache cluster = cache1 + cache2 + ... + cache100 • namespace 1 =cache1+cache2+cache3 • namespace 2 =cache1+cache3+cache5 • namespace = app.data:12345678