- 1、本文档共19页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
⾖瓣的架构与主要组件
May. 2013
⾖瓣内部资料,未经许可请勿发布
LVS
nginx
SCGI HTTP
quixote app DAE apps
MySQL memcached BeansDB redis beanstalkd
online
offline
MooseFS DPark
DAE
⾖瓣内部资料,未经许可请勿发布
DAE
• ⾃助式应⽤开发/部署环境 (私有 PaaS )
• 应⽤隔离的依赖管理(基于virtualenv 和 pip )
• 同步worker和异步worker (基于gevent ),⽀持
websocket
• 通过API访问基础设施
• 简便的服务定义和实现 (thrift based)
• ⾃动 scale out
• SA关⼼整个资源池的资源
• 应⽤开发者只需关⼼业务逻辑
⾖瓣内部资料,未经许可请勿发布
DAE⼀些(可能)有趣的地⽅
• 没有使⽤虚拟机,直接利⽤unix帐号在进程级管理
• 未来有计划引⼊ cgroups
• DAE ⾃⾝的⼀些功能是⽤DAE应⽤的⽅式实现的,
⽐如部署、静态⽂件服务等
• ⺫前部署在7台物理机+1台虚拟机上
• ⺫前部署了 248 个应⽤
• ⺫前每天处理约6千万请求
• 今年会开源⼀些side projects
⾖瓣内部资料,未经许可请勿发布
9.
⾖瓣内部资料,未经许可请勿发布
CODE
⾖瓣内部资料,未经许可请勿发布
⾖娘订购系统
⾖瓣内部资料,未经许可请勿发布
BeansDB
⾖瓣内部资料,未经许可请勿发布
BeansDB
• ⼀个键值存储服务,简化版Dynamo
• memcache protocol
• 第⼀版使⽤ tokyo cabinet 作为存储引
擎,2010年使⽤ bitcask 存储格式重写了
存储引擎
• 2008年项⺫启动,2009年开源
• /douban/beans{db,eye}
⾖瓣内部资料,未经许可请勿发布
⾖瓣内部资料,未经许可请勿发布
主要特点
• 维护简单
• 性能稳定
• 易扩容
• ⾼可⽤
• 最终⼀致性
⾖瓣内部资料,未经许可请勿发布
BeansDB在⾖瓣的使⽤
• 两个集群: doubandb 和 doubanfs
• doubandb
• ⼩型数据 (主要是⽂本, 如影评、⽤户个⼈介绍
等)
• 3 billion of records, 9TB data
• doubanfs
• 中型数据 ( 图⽚、⾳频等)
• 1 billion of records, 150TB data
⾖瓣内部资料,未经许可请勿发布
DPark
⾖瓣内部资料,未经许可请勿发布
文档评论(0)