豆瓣在数据库和集群方面的架设中的亮点
2021-01-05 09:23:00 阅读(155) 评论(0)
豆瓣的整个基础设施大致可以分为在线和离线两部分。在线部分类似于大多数网站:LVS作为HA,Nginx作为反向代理,形成负载平衡层;应用层主要用于计算,并将计算结果返回给以前的用户。DAE平台是在过去两年建立的,现在大多数豆瓣应用程序基本上都在DAE上运行;应用程序背后的基本服务与其他网站相似,MySQL、memcached、redis、beanstalkd,不同的是NoSQL的选择——BeansDB,这是我们几年前开源的KV数据库,也是国内较早开源的KV数据库。豆瓣的技术结构和主要部件豆瓣作为一家早期选择Python作为主要编程语言的公司,网站使用的许多技术都与Python有关,包括主要框架quixote、DPark等自行实现。其它技术的选择没有太大区别:nginx、MySQL、memcached、BeansDB、redis...都是知名的开源项目。其它技术的选择没有太大区别:nginx、MySQL、memcached、BeansDB、redis...都是知名的开源项目。在这些开源项目中,豆瓣根据自身产品的特点进行了有针对性的配置和部署。除了使用开源项目外,豆瓣还根据自己的需要独立开发或实现了一些产品,如DAE、DPark等等。顾名思义,DAE全名Doubanaplicationengine,类似GAE、SAE内部PaaS系统。使用这种PaaS有很多好处,比如第三方库数量丰富,支持多个版本并存,资源配置灵活,可以为工程师节省很多不必要的工作。BeansDB是DAE中非常重要的组成部分,其设计理念起源于亚马逊的Dynamo,但简化了Dynamo的一些复杂性。BeansDB主要用于小文本、中型图片和音频,其共同特点是写作次数特别少,这也是BeansDB擅长的领域。DPark类似于Spark,是豆瓣用Python实现Map-Reduce的类似框架。虽然Python的性能低于基于JVM的Clojure,但它避免了程序员进入不熟悉的领域,豆瓣使用开源项目的原则是:如果你不能完全掌握它,你宁愿不使用它。"另外,将Spark移植到Python上也很简单,基本上是一对一的翻译。BeansDB项目可以说是AWSDynamoDB的简化版,该项目于2008年启动,2009年开源,排名第一⼀版使⽤作为存储引擎,tokyocabinet于2010年使用⽤bitcask存储格式重写存储引擎,性能更好。BeansDB为key做哈希运算,找到节点来实现分布和冗余,一个写作操作会写几个节点,而现在的配置是写三份读一份。BeansDB的主要特点是支持大量KV数据库——BeansDB可以支持数百T数据,而Redis是一个支持数十G到数百G的内存KV数据库。此外,BeansDB最大的优点是操作和维护非常简单,具有良好的性能、可用性和扩展性,并实现了最终的一致性。BeansDB中间的Proxy是用Go语言写的,也是一个开源组件。总的来说,BeansDB的设计结构比较简单,BeansDB的Value比Redis的Value简单。在豆瓣内部建立了两个不同的BeansDB集群,一个是doubandb,另一个是doubanfs,针对不同的场景。doubandb主要存储小型文本数据,如影评、用户个人介绍、帖子内容等,可以大大降低我们对MySQL的性能依赖,减轻MySQL的负担;doubanfs主要存储图片和音频等中型数据。可以说,DAE是基于许多以前积累的、旧的组件。与外部PaaS相比,我们所做的内部PaaS做了很多简化,特别是在安全方面,如应用间隔离和权限管理。我们不必像公共云那样花费大量精力,所以工作量实际上是好的。DAE现在计划开源,当然现在只支持Python应用。在未来,我们可能会让DAE支持Go语言。以上是在线部分,对高可用性和低延迟有很大的要求。离线部分包括数据挖掘、数据分析等。技术组件是大量分布式文件系统Mosefs。该文件系统的结构与HDFS相似,用C语言编写。其优点是FUSE模块实现良好,可直接用文件系统操作,无需特殊命令,可支持大量数据。此外,DPark是自己开发的分布式计算平台。顾名思义,DPark是SparkPython的实现,但现在与Spark越来越不同了。与Hadoop相比,Spark可以使用内存作为缓存加速分布式计算,DPark继承了这一优势,对大规模数据的迭代计算非常有用。在豆瓣的应用场景中,由于我们的许多离线计算都是推荐的算法计算,因此该计算涉及到大量的迭代算法。如果每个计算结果都进入磁盘,然后在下一轮计算中加载,则性能非常差,因此DPark可以大大提高性能。另外,由于DPark的编写采用了函数语言的特点,所以可以写得很简洁:
推荐阅读
- 京东全球购是正品吗
作为中国顶级的电商平台之一,京东全球购已经成为中国消费者用来购买海外正品的主要渠道之一。然而,这种便利的代价是很多消费者会产生疑虑,他们怀疑京东全球购网站上出售的商品是否真的是正品。 京东全球购是否是正品呢?我们来检验一下: 京东全…查看详情
- 双核浏览器是什么意思 双核浏览器详细介绍
很多用户对电脑浏览器内核有要求,在电脑浏览器中,单核浏览器和双核浏览器这两者有什么区别,哪个更好用呢?下面为大家整理单核浏览器和双核浏览器各自的优缺点,有需求的用户可以根据个人喜好,结合单核双核浏览器的优势特点,选择适合自己的浏览器。 …查看详情
- 2021最受欢迎的免费做账软件
随着互联网的迅速发展,软件做账逐渐进入人们的生活,解决了企业漏账、对账麻烦、查账工作量大等问题,为公司节省了大量人力资源。软件做账对上班族日常开销、存入,有了简单的统计,对自己的日常生活有个规划。接下来为大家介绍一些2021最受欢迎的免费做…查看详情
- 在公司写的专利是否属于公司?
在平时很多的小伙伴都不知道在公司写的专利属于公司吗的基本情况,而且对在公司写的专利属于公司吗都不是很熟悉,下面万商云集小编就为大家整理了在公司写的专利属于公司吗这方面的相关内容,希望下面的内容能帮助到各位。 一、在公司写的专利…查看详情
- 2022年市面火热的资产管理系统软件排行榜
到目前为止,很多公司企业或是单位都逐渐意识到资产管理的关键,市面也显现了更多的资产管理软件,但都不知道二者的性价此是否是高,下列是我们梳理出市面上高性价比的七款资产管理系统aPP!1.资产管理专家是一款金融理财应用,是个功能完善的会计常用工…查看详情
- 原来B2B2C商城系统的好处那么多!
开发B2B2C商城系统成为电商行业最大发展趋势。是什么让那么多人青睐B2B2C商城系统呢?细细分析,原来B2B2C商城系统的好处那么多! 较低开发成本在传统零售业中,销售商品的效率和商品流通的周转率是获得更高折扣的两个重要因素。B2B2C商…查看详情
- konka是什么牌子电视
Konka是什么牌子的电视?Konka是康佳牌子的电视。 Konka是康佳集团股份有限公司旗下品牌。 康佳集团股份有限公司成立于1980年,地址位于深圳市南山区粤海街道科技园科技南十二路28号康佳研发大厦15-24层。Konka是什么牌子的…查看详情
- 有哪些免费听歌软件呢?这几款软件全免费
在平时想要听音乐,却发现自己没有收听的权限,还需要下载其他的音乐APP,自然也十分的影响心情。其实现在也有很多免费听歌软件,大家选择这些软件,不仅能够随时随地的想听就听,即便是一些热门歌曲都不会收费,那么下面就为大家介绍几款,不…查看详情
- 好用的公司内部管理软件推荐-华天动力
随着国家的发展,出来了许多的公司,当然把公司做大是件不容易的事,内部管理就是其中之一,下面为大家推荐公司内部管理软件! OA的核心思想是利用网络和软件构建部门内部办公管理平台,提高企业内部管理、办公效率和执行力。各种审查程序的通…查看详情
- 专利权的授权条件是什么 专利权的授权条件有哪些?
在平时很多的小伙伴都不知道专利权的授权条件的基本情况,而且对专利权的授权条件都不是很熟悉,下面万商云集小编就为大家整理了专利权的授权条件这方面的相关内容,希望下面的内容能帮助到各位。 一、专利权的授权条件是什么专利权的授权条件…查看详情
- 中小企业的知识产权保护存在的问题及解决方式
企业的品牌建设,百年成之不足,一旦毁之有余。企业必须建立自己的品牌战略,提高品牌附加值。企业应该针对自己的产品和服务的特点,选择好商标、商号,不要跟风,不要攀附名牌,不要搭便车。随着国家知识产权战略的不断深入,企业在专利、商标及版权的各个板…查看详情
- 注销公司想去哪里办理
注销营业执照去哪里? 照主带上身份证,营业执照正副本及完税证明去注册地工商所办理。但是吊销营业执照也需符合相应的条件,不同类型的吊销营业执照,可有不同的吊销理由。可归纳为: 虚假注册,即以各类虚假文件(含虚假注册资本证明等)骗取注册…查看详情
- 中小企业分销管理系统怎么选
分销管理系统哪个好?应该怎么选?因为每个中小企业的实际情况不同,所以具体的答案也会不同。但是无论怎么样,分销管理系统的作用是不容置疑的。下面小万就从三个方面来介绍一下电商分销管理系统该如何选择。图片来源网络1、安全性分销管理系统对分销商的管…查看详情
- 商用中文网站建设的常见问题及设计雷区
多访问几个商用中文网站就会发现,这些商用中文网站建设都有一些共同的常见问题和和设计雷区。在网站页面及内容方面,英文网站大多是以内容为主,突出网站的性质的功能,在让访客在进入网站的第一时间就能抓住网站的主要信息。而中文网站的布局和内容多数是比…查看详情
- php文件用什么软件打开
forum.php文件怎么打开?需要使用编辑器打开1、比较轻便的编辑器有notepad++和subline2、教学常用的编辑器是dreamweaver3、如果以上编辑器都没有,可以右键打开方式,选择txt记事本打开论坛中下载的好多文件都是p…查看详情
猜你喜欢
最新文章

扫码二维码
立即领取《千元实战营销秘籍》
还可免费试用营销管理系统
*如有疑问,请随时拨打免费咨询热线:400-0033-166
服务时间:8:30-18:00
软件企业
认定号:川RQ-2018-0216
高新技术企业
认定号:GR201951001121

关注微信公众号
和10万中小企业共同成长

扫码下载APP
享全方位服务一触即达
Copyright © 2004-2022 万商云集(成都)科技股份有限公司 版权所有
蜀ICP备12001963号-2
川公网安备 51010402000322号

快速找产品
找一找哪款产品适合您?
咨询热线:400-0033-166
-


-
电话沟通
在线咨询
获取方案
下载APP
官方微信
扫码下载APP
全方位服务一触即达
关注万商云集
和10万中小企共成长
TOP

企业首选的数字选用平台






