说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

Clay.io基于AWS、Docker、HAProxy等的10X架构打造

HTML文档下载 WORD文档下载 PDF文档下载
当下基于云的部署大大缩短了应用的发布周期,让机构可以将更多精力投入到产品特性设计上。然而,大规模应用架构从来都不是件容易的事情。从本文起,我们将带大家领略Clay.io的10X架构,首先关注的则是技术上的选择。

近日,Clay.io的Zoli Kahan开始了“10X”系列博文的撰写。通过这个系列博文,Zoli将分享如何只使用一个很小的团队支撑Clay.io的大规模应用。首期分享则是对Clay.io所使用技术的盘点。

下为译文


云方面

CloudFlare

CloudFlare主要负责支撑DNS,并作为一个防护DDoS攻击的缓存代理,同时CloudFlare还负责处理SSL。

Amazon EC2 + VPC + NAT服务器

基本上Clay.io的所有服务器都是Amazon EC2类型,其中大部分是中大型实例。同时,我们还使用Amazon VPC将所有服务器托管在一个私有网络,从而这些服务器很难在外网访问。为了访问这些私有网络,我们还配置了一个NAT服务器,它同时也作为一个VPN终端,用以内部网络使用。

Amazon S3

我们使用Amazon S3作为应用的CDN后端,它托管了Clay.io的所有静态内容。为了安全和性能因素,我们为之配置一个独立的域名——cdn.wtf,一个cookie-less域名。

HAProxy

HAProxy是一个非常高性能的反向代理,我们使用它将流量路由到不同的服务。基于Clay.io的性质和平台所需支撑的内容(比如遗留代码),HAProxy意义重大。在以后文章中,我将对这点进行深入讨论。

当下,Clay.io使用的是一个配置了m3.medium的HAProxy服务器。在流量增加后,HAProxy必将迎来一次无可避免的升级。此外我们还会在前端增加一个Amazon ELB,在需要时进行横向扩展。


应用服务器——Docker

Docker用于管理Linux容器,类似于轻量级的Virtual Machines(同时还省略了隔离和安全保障)。Docker的好处是可以做代码封装,并且忽略底层服务器特性做任意的代码重用/移植,在下文我们将详细介绍。

演示应用服务器——Docker

在Clay.io,演示环境服务器和应用程序服务器相同,并且和生产环境运行相同的二进制Docker文件。对于防止不必要的生产系统破坏和宕机,这种设置环境非常重要。

数据存储

MySQL

MySQL是一个久经沙场的关系型SQL数据库,当下Clay.io的数据大部分都依赖一个主从设置的MySQL集群。在这个集群中,一个主节点和两个从节点服务器支撑了大部分的用户查询。当然,在未来我们可能需要对主节点进行分片。但是期望不要太早,因为我们正在考量其他数据库。

Logstash

Logstash是个日志聚合工具,通过Kibana进行分析。当下,它基本上负责了Clay.io所有的应用程序日志,以备系统发生错误时使用。使用Kibana,我们避免了必须SSH到一个机器进行日志检查。

MongoDB

MongoDB是个NoSQL文档存储数据库,当下MongoDB为我们的一些开发端点和A/B测试框架Flak Cannon提供服务。

Memcached

Memcached使用了键值存储类型,非常类似于Redis。Memcached在Clay.io主要负责一些遗留Web应用,用以缓存MySQL的查询结果。毫无疑问,随着系统的迭代,最终它将完全被Redis取代。

DevOps

Ansible 

在我们系统中,Ansible被作为服务器管理工具的一个选择。对于大部分开发者来说,它非常易于学习和使用,Ansible可以帮助许多日常DevOps的自动化处理,由一个专门的运营团队负责。

其他服务

GitHub

GitHub——无需多言,这是个非常强大的源代码管理工具。

Uptime Robot

Uptime Robot是个免费的监测服务,我们使用它来监测健康检查和端点。如果有问题发生,它可以在5分钟内给我们发送电子邮件和文本消息。

Drone.io

Drone.io是一个连续的集成服务,我们使用它为各种项目连续不断的运行测试集。它非常类似于TravisCI,近日我们还释放了一个开源的自托管版本。

Docker Registry

当下,我们使用官方的Docker Registry来管理Docker容器,它类似于Docker专用的GitHub。

New Relic

New Relic是个服务器和应用程序监视服务,主要用于服务器监视,在磁盘和内存满载时进行提醒。

Google Analytics

Google Analytics是我们主要的网站分析跟踪工具,用于跟踪网站具体功能,我们使用了定制事件特性。

Google Apps

Google Apps为我们clay.io域名提供邮件,并为机构提供了一个共享的Google Drive设置。

Last Pass

Last Pass是一个密码管理服务,它允许我们便捷的在所有团队共享公司认证信息。

未来

虽然我们对当下的设置已经比较满意,但是我们仍然期望在数个月内对系统的某些方面进行升级。审视最初的基础设施版本,有许多地方并没有花大量的时间去设计。而就是这些地方,成了未来系统扩展时必须面对的瓶颈。

  • Kubernetes在大规模Docker容器管理上表现出了惊人的潜力,也是我们重点跟踪的项目之一。毫无疑问,在该项目成熟时,必将成为我们生产环境的一部分。
  • Amazon Glacier,用于数据库备份,是我们未来的一个实现目标。
  • RethinkDB,虽然当下还非常不成熟,但其潜力不容忽视。和Docker一样,我们将紧跟这个项目的发展。在未来弃用MySQL时,它将是一个不错的选择。
原文链接:How Clay.Io Built Their 10x Architecture Using AWS, Docker, HAProxy, And Lots More(编译/童阳 责编/仲浩)
【最具价值CTO评选秀】能做存储的超级计算机——任宇翔和以色列团队的创业故事 OpenStack Swift存储策略 分享5个可视化的正则表达式编辑工具 在iOS程序中使用Bluemix云推送服务 GitHub开源任务列表组件 表白健身小能手!详解Apple Watch特色功能 高逼格不任性!个人智能航空摄影飞行设备ZANO Clappr——开源的Web视频播放器 东软举办2014解决方案论坛 将全面推进BBC战略 Google Glass已死,智能眼镜长存! 五个步骤,保护移动应用免受恶意攻击 声波改变移动社交——参加联想“茄子快传”创意征集 赢取平板电脑大奖! 车载硬件Baen:被游戏化的驾驶体验 深入解析Docker背后的namespace技术 响应苹果要求:Qt 5.4、Qt Creator 3.3同迎RC版 击碎泡沫谈发展,盘点OpenStack商业生态圈! 2014年11月操作系统份额:Windows 7雄居第一,XP跌新低 微信开放平台上线统计报表功能 【向导】如何开始学习高伸缩性编程? 基于Apache Samza,揭秘LinkedIn架构背后的技术 Aeron:每秒可以传递数百万消息的低延时开源消息系统 英特尔物联网马拉松:用创造力改变生活 年末总结:2014年全球手游市场发展的六大趋势 Saber——模块化、组合式的移动前端框架 什么仇什么怨?还原日本反美颜应用Primo真面目 横跨2D与3D!专属C#开发者的超强游戏引擎Paradox 首份“2014年移动外语学习行业报告”等你下载 《近匠》Ayla联合创始人张南雄:物联网发展的三个阶段 神器 VisuAlgo:通过动画学习算法和数据结构 【工具推荐】QWrap——开源的前端JavaScript框架 老外看中国:移动应用UI设计的十大精髓 activex 发布 用C#怎样得到一个dll文件的版本号呢? 问一个比较简单的问题! 关于msgbox的简单问题,才鸟求知,谢谢帮忙!!!!! 困惑。什么工作好啊,来者有分 大哥、大姐们,快拔刀吧! 如何取得SQL SERVER2000数据库某字段的空值? 如何用split分割纵向字符串?在线等候. 关于java workshop的问题(急) 向高手请教一个问题(硬编译),至少200分相送 为什么我用request.getPathInfo()取到的结果为空? c# 版的朋友们大家好!!新手登录,多多帮助! oracle触发1器 一个好多人问过的问题,可是我这里还是不能用,请在帮下忙 发布Applet出现的错误,帮忙撒 本人在PB开发中遇到莫名其妙的问题 强烈建议成立crack专栏,同意的请跟帖。 textbox的输入问题 我的98系统在重新启动后再进入系统时屏幕上会出现一闪闪的雪花点,这是为什么呀? 请教!谁会使用这个API函数(DbiPackTable),该函数在BDE32.HLP中。 一个循环问题,急急急!! mysql -h remotehost -u root连不上对方机子? 分布式应用中的服务器端访问当地窗口的问题 打印的问题,大家请看,得到你们的思路,马上给分! 我想做一个保存图片资源的dll文件,谁有这方面的文章和代码啊? 看一下这个ServiceApp.出错信息! 有专家吗?Cache问题 那里有linux原码下栽?不全也可以? 怎么用OPENCV?(50分) winsock下载FLASH动画的错误问题 好好看看这个妞,天机不可泄漏啊,哈哈哈哈 VxD 中如何使用 sprintf 等函数?[200 分] help me !!! 急急急!!! 有关datareport的问题! 我下载了Core SDK,《windows核心编程》的示例还是编译不成功? SQL Server中定义image类型的问题? 鼠标拖拽效果 简单的问题?高分相送,UP者有分。。。。。。。。 到底到哪里找weblogic 7的破解文件啊? 请教向win2000 server申请证书的问题 我有了一只小猫,好可爱啊!为它散分!TMD,只有最后125分了! query1.CanModify:= true;???? 我下载了Core SDK,《windows核心编程》的示例还是编译不成功? 现急需bmp文件转换成jpg文件的java源代码,请高手们帮帮忙,分数可再加。 大家有没有做过宏的,我写了一个宏却有下面的提示. 。。。如何对所访问的网站的返回结果进行处理。。。 哈哈哈,托普股票昨天狂跌!!!!!!! 请进! ASPX 里如何获得连接数据库的速度 …… 如何解决win98不登录网络也可以访问win2000共享目录的问题? 请问treeview控件如何使选定的节点在完成一次操作后任选定及如何使选定的节点在失去焦点后显示颜色为亮蓝色 一只蚂蚁从长为4cm,宽为3cm,高为12cm的长方体纸箱的A点沿纸箱爬到B点,那么它所性的最短路线的长是---- 电动车电池质保多长时间铅酸的电动车电池电池质保多长时间,到2010年4月24日没有一个回答正确的.我都听说了,大多数都是保15个月;有的保20个月;还有的保两年,就是不知道什么品牌的.告诉 对于中国的牛,我有特别的尊敬感情. 留给我印象最深的,要算一回在田垄上的“相遇”. 一群朋友郊游,我领头在狭窄的阡陌上走,怎料迎面来了几只耕牛,狭道容不下人和牛,终有一方要让路, 一只蚂蚁从长为4cm,宽为1cm,高是12cm的长方体纸箱的A点沿纸箱爬到B点,那么它所行的最短路线的长是多少 腌制火腿是,添加nano2(这是?)是为了让颜色越鲜艳越好, 环形磁铁的磁感线和南北极如何分布 利用二氧化碳的物理性质可以用二氧化碳作( )进行( ),也可以用它来隔绝空气,进利用二氧化碳的物理性质可以用二氧化碳作( )进行( ),也可以用它来隔绝空气,进行( ). 太空记忆枕头保健枕健康枕芯护颈枕颈椎枕头一般价格是多少呢? 环型磁铁的磁感线分布 五年级下册口语交际三的作文“劝说”作文800字星期一要用 记忆枕,护颈枕,太空枕,保健枕头 环形磁铁的磁感线是怎样的?看了很多百度知道里的问答、总是觉得还是不懂、环形磁铁的磁感线是不是就是类似于地球的磁感线? 5年级下册第三单元口语交际,劝说短文50-100字左右. 已知逻辑关系如下,绘制双代号网络图,并计算时间参数ES、LS、EF、LF、TF和FF,找出关键线路用双箭头线标出工作ABCDEFGH紧前工作——ABBBC、DC、EF、G时间13162421 简述决策在管理中的地位与作用 五年级下册口语交际3劝说作文怎么写啊?口语交际本次口语交际的话题是“劝说”,这里有规劝的意思,劝说别人改掉不良的习惯.安排这次口语交际的目的,是让学生在交际中学会怎样动之以情 根据表中各工序的逻辑关系,绘制双代号网络图,计算ES,LS,TF,FF,工期,标出关键线路. 急,有会的朋友们帮帮忙吧,谢谢了. 中国的牛 这种比较的写法我们还在小学课文《》中体会过 五年级下册口语交际三的作文“劝说”作文要450字 计算机中BS HT LF VT FF CR CAN ESC SP DEL 的原英文是什么 巴基斯坦小学课文写中国的具体内容是什么?我想看看他们国家是怎么写的. 怎么样把铝线上的 油渍去掉?又有亚光的?我是想怎么铝线上的 油渍洗白 又有亚光的 英语的意思ls thistheartroom? 如何理解实践在认识中的决定作用 目前市场上销售的汽水饮料大多数是碳酸饮料,其中溶有二氧化碳气体.打开汽水瓶盖时,汽水会自动喷出来,这说明气体在水中的溶解度与压强有关,且( )喝了汽水之后会打嗝,这说明气体溶 电磁炉的原理是由于锅产生涡流,加热食物,那为什么我摸锅时不会被电到?(当一个回路线圈通予电流时,其效果相当于磁铁棒.因此线圈面有磁场N-S极的产生,亦即有磁通量穿越.若所使用的电源 计划在管理中的地位与作用字数达到一千字就行的论文! 五年级下册语文口语交际3,劝说乱丢垃圾的,至少写出五条,从从轻到重、从己到他 如何选择一款适合自己的枕头?可以买零听品牌的恒温太空记忆棉慢回弹舒眠护颈枕头吗 粗苯加氢设计单位粗苯加氢 五年级下册语文第三单元口语交际劝说怎么写?快! 太空零压力记忆枕头加长护颈枕慢回弹颈哪里有 粗苯加氢 梦兮 安睡慢回弹枕头 太空记忆枕头 零压力护颈枕 颈椎保健 请写出氯气与碘反应的化学方程式.另外,是HIO4吗? 氢气和氯气及溴发生反应,哪个放热多 五年级下册语文第三单元口语交际 劝说 怎么写啊.急.19: 氯气和碘反应 求介绍分析中国文化的文章吗? 一战对英国 影响最好是各方面都有的 比如对经济啊这种的 women,democracy,imperialism,territorial expansion,new ideologies,social change.3Q3Q不一定要英文,中文的也OK。因为要写论文,要是带点什么参考书目 氯气和碘的反应? 中国牛这篇文章是赞扬谁的,是赞扬中国还是牛啊! 对于中国的牛. 英国在一战中是什么角色 下列关于NaNO2、Na2O2、SO2、O2等四种物质的组成的叙述中正确的是都含有2个氧原子对吗?仔细看题 中国的牛 1.中国的牛象征什么?2.文中能与文章结尾遥相呼应的是那一句? 英国在一战中的作用 下列物质误食后,不会引起中毒的是?(1)BaSO4(2)NaNO2(3)CH3OH(4)P4 关于中国航母相关文章? 一战的影响要简短的那种,答题用的,两三行就够用! 含Na离子的物质(除NaCl为中性外)都是碱性的吗?比如说NaNO2、Na2CO3 经常吃微波炉做的食物有什么坏处? 房屋装饰工程质保时间及质保金 文章中第一段有什么作用 读书伴我成长 500字作文 什么汽车整车质保时间最长 电压和电流线圈产生涡流的原理,我想知道这个,要看那种书啊 汽水中的气体通过什么方法溶解在水中 甲醚用铜做催化剂加热 反应生成什么物质 写出化学反应方程式 这个 3年有限质保 主要我觉的是“有限”这两个字要注意,这很容易令身为消费者的我们受到伤害的! 文章第一段有何作用
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘