效仿阿里的 Etsy:文艺青年 or 技术宅男?

近日,在线手工艺品电商 Etsy 在美国纳斯达克上市,开盘价每股16美元,最高价达每股35.5美元,收盘价为每股30美元,上涨87.5%,目前市值约33亿美元。

Etsy 在 IPO 过程中,借鉴了阿里巴巴,邀请平台上活跃的供应商、卖家和设计师作为敲钟人。据了解,截止2014年年底, Etsy 的用户数已经达到了5400万,其中包括了140万活跃卖家和1980万活跃买家。即使在2014年这家文艺电商亏损了1520万美元,也完全没有影响到投资人对它的信心,他们似乎更看中 Etsy 的个性与情怀。虽然这家电商网站做着文艺青年的生意,但是骨子里却流淌着技术范公司的血液。

在技术圈里,Etsy 以其 DevOps 和持续交付的实践而闻名,就在前不久,Etsy 工程师 Daniel Schauenberg 还在伦敦 QCon 大会上介绍了他们如何做到每天50次的部署,对绝大多数公司来讲,这简直是无法想象。要知道 Etsy 可是拥有约60万的月访问量,然后每月的页面浏览量高达15亿次,在如此之高的流量下进行如此频繁的部署,对整个系统稳定性的挑战可见一斑。

Etsy是如何做到的?

首先,Etsy 拥有完全自动化的部署管道,有全面的应用性能监控和基于 IRC 的协作,这些都是 Etsy 能达到这个变更频率的同时又保持最小风险的重要因素。因为 Etsy 的软件开发策略是反复围绕着做许多小的、连续的变更,而这样做的一个直接后果就是需要每天做很多次部署。为了能够让每次部署都可以轻松完成,Etsy 采取了一系列的工具和做法:强制基于 IRC 的沟通、开发者虚拟机、持续集成、一键式部署、全面的应用和系统监控、对于开发和运营团队都采取免责怪的事后检查和随叫随到的政策。

据了解,Etsy 的每个开发人员都拥有自己的通过 Chef 配置的 KVM「基于内核的虚拟机」。在线上运营中使用的 cookbooks 也同样地用在了开发人员的虚拟机中,这意味着每个开发人员都有自己完整的 Etsy 栈。任何人都可以通过 Virtual Madness「一个可以实现整个过程自动化的 Web 应用」来提供一个虚拟机。

在持续集成方面,Etsy 使用了一个名为 Try 的工具,它允许开发人员在 Jenkins「在 Etsy 中使用的持续集成工具」中测试他的代码变更,而不需要先提交到 trunk 中。Try 有助于保持 trunk 干净从而实现可部署,而同时让开发人员能够快速、可靠地测试他们的变更。CI「持续集成」集群必须强大到足以支持150名 工程师,以及每天超过14000个测试集的运行。LXC「Linux容器」会平衡工作的负载,它们还提供了隔离机制,确保不同测试的执行之间不会冲突。

此外,监控是 Etsy 有信心做持续交付的关键。开发人员做自己的功能监控,而且每个人都可以通过仪表盘看到所有的监控图表。 Etsy 具有这样一个策略,在默认情况下所有可以被绘制的信息都会被制成图表。随着时间的推移,指标的数量一直稳步增加,所以 Etsy 建立了 Kale 来帮助检测异常模式。所有的日志都可以通过 Supergrep 展现出来,Supergrep 是一个基于 Web 的日志展示工具,这增加了日志的信噪比。

IRC 是贯穿 Etsy 的主要沟通工具,也是 Etsy 协作文化的关键。里面有很多不同的聊天室,每一个都具有特定目的。例如,在聊天室 #warroom 中仅允许中断事故有关的会谈。聊天室是用来协调调查,讨论应对措施和解决方案监控的。与其他的聊天室一样,#warroom 是个鼓励新工程师们潜水的地方,因为这些聊天室被认为是学习的好地方。

Etsy 还拥有一个重要的文化活动,就是在每次中断发生,或接近中断的时候,所有人被邀请来做事后检查,甚至财务和支持人员需要,他们也可以参与。Etsy 认为事后检查是一个学习的机会,所以不应该包含责备。而且所有事后检查相关的信息被记录在 Morgue 里面:日期、严重性、IRC 日志、图表和补救措施。Morgue 是 Etsy 为了保存事后检查记录而特别构建的一款工具。

最后,Etsy 对于运营、开发、支付和支持部门的员工都是采取随叫随到的政策,目的是让每个人都意识到上线产品每天所面临的问题,使他们能够在开发新功能或改进现有流程时考虑到这些问题。

Etsy拥抱开源

Etsy 对开源项目的参与也是非常积极,他们在 Github上的主页,其中1000星以上的项目就有5个,而星数最高的项目是 StatsD「7408星」,这是一款运行在 Node.js 平台之上的网络应用,可以用来监听 UDP 端口的信息,并将监听到的数据生成实时图表。StatsD 0.1.0 版本发布于2012年2月16日。

文艺青年,还是技术宅男?

看到上面这些,你觉得 Etsy 是不是更像一个技术宅男呢?不少人认为 Etsy 跟阿里的风格是非常类似,包括他们在纳斯达克敲钟也是在模仿阿里巴巴。当然在国内技术圈,阿里技术的影响力毋庸质疑。

其实,对大多数人而言,他们只是关心在「双11」 那天,有没有抢到心仪已久的商品,完全感受不到凌晨那一秒,每秒数千万的流量打到阿里的服务器端,开发及运维同学所要承担的压力,常听阿里巴巴的同学开玩笑,他们的技术都是被用户的点击量逼出来的。

但是对一般的互联网公司而言,技术积累远远比不上阿里巴巴和 Etsy,他们经常会遇到网站的性能问题,比如由于网站访问量暴增出现的宕机问题,用户访问延迟,交易系统出现闪退等等。作为中国基础软件领域的领军企业,OneAPM 专注于提供新一代的应用性能管理软件和服务,并提供先进的端到端应用性能解决方案,包括对应用系统进行实时监控、告警、性能分析、故障诊断、性能报表展现等多种功能。这也意味着,即使没有 Etsy 那么深厚的技术积累,也不用再担心网站的性能问题了。

时间: 2024-10-31 20:38:17

效仿阿里的 Etsy:文艺青年 or 技术宅男?的相关文章

天天写日记争当文艺青年 2014-5-21

纠结啊为毛感觉只过了一天,就有两天没写了,今天晚上的机票离开上海.希望小叶子不会难为我. 昨晚研究了一下插卡小哥的业务流程,发现他并不是每个房间都插的,时间在每晚的9点到11点之间.估计是会在周边每个宾馆巡回一遍,插广告的房间有两种可能,第一种就是他们和宾馆沆瀣一气,知道哪个房间有人,第二种可能就是他们只给大床房的房间发,7天没有单间所以单身旅客一般会选择大床房,这绝对是优质潜在用户哇. 晚上看了个 正者无敌 还挺好看的样子,里面男主娶了3房姨太太,不错不错~ 晚上做了个梦,醒来后还是格外清晰,

天天写日记争当文艺青年 2014-5-15

今天比较悲剧,领导不知道在干啥啊,我貌似有个搞白盒的同事,也完全不干活啊.纠结啊,不给代码,让我在这挖洞加糊弄客户.现在做外包业太容易了,雇个能忽悠的临时工就搞定了. 看了一下AOuth的文章,明天翻译出来比较困难啊. 今天晚上往门缝里塞小卡片的哥们又来了,这个小伙还是很有职业操守的,每个门里面只塞一张,不像某些人一塞塞一堆,住几天宾馆都够凑一副扑克的了.其实,他们大可以印一套扑克,上面有电话号码,每个房间发一套,免去小伙子天天奔波劳累之苦. 今天感觉比较累,先睡觉啦~ 天天写日记争当文艺青年

天天写日记争当文艺青年 2014-5-12

临近毕业,心绪不宁.BCTF决赛被惨虐之后,辗转来到上海补sky的空子做渗透测试.来到之后才发现这就是一个很坑爹的工作,具体怎么坑爹我也懒得说.总觉得自己很缺乏洞察力啊,有些事情总得亲身被坑一次才知道其中缘由. 昨天飞机晚点,到宾馆时已经12点多,就没有休息好.今天早点睡吧. 最近写写日记,争当文艺青年. 天天写日记争当文艺青年 2014-5-12,布布扣,bubuko.com

天天写日记争当文艺青年 2014-5-18

竟然有3天没有写,了啊.周末这两天的defcon把我虐的很惨,果然还是跟大神有很大的差距.有点小迷茫,临近毕业季莫名到很不知所措. 见识了一下上海最繁荣的尖沙咀商业中心,晚上起了一点雾,隔江而望仿佛另一个世界. 上海外国人很多,其中不乏俊男美女,这就是国际化大都市啊,我是不是也应该好好学点英语,出个国啥的~~~~(>_<)~~~~ . 最后感谢一下骄姐带我吃了一顿不错的烤鱼O(∩_∩)O~. 天天写日记争当文艺青年 2014-5-18,布布扣,bubuko.com

写给“有钱大爷”、”美工殿下”、“前端文艺青年”的微信HTML5页面设计建议

我保证你一分钟就能看完这篇文章! 真的.. 角色解释: 需求方:有钱大爷 设计人员:美工殿下 前端工程师:前端文艺青年 一个HTML5页面从提出到完成上线的流程: 1.需求方.设计人员.H5实现人员三方共同讨论实现方案 2.设计人员出设计图 3.H5人员按设计图出H5页面 4.需求方评估已实现的H5页面后给予反馈 5.设计人员与H5人员根据反馈进行适当调整 6.发布推广 如何提出一个合理的微信HTML5页面设计诉求? 合理分析诉求与公司团队拥有的资源: 1.需求完成时间: 时间给的越多,项目做的

论“文艺青年”都是“娇情逼”

现在对文艺青年的定义我不太懂,至于以前应该没有文艺青年一说,因为在古代的话,读书人便是读书人,至于文艺与否跟读书木有关系.所以文艺青年是现代词,也难怪我这古董搞不明白了. 但由于本人爱好读书,又不时写写文字,便被人列入了"文艺青年"的队伍中,对此我是深感厌恶的.我只是单纯的爱好读书和写文字,至于文艺这东西,我实在不懂.但自己对这一动机的解释是持悲观心态的,因为他们还有一个名词冠之,它叫"娇情逼". 他们所说的"文艺青年"和"娇情逼&qu

将“文艺青年”改成“213青年”

//2.将"文艺青年"改成"213青年". //方法1 NSString *str1 = @"文艺青年"; NSString *str2 = [str1  stringByReplacingOccurrencesOfString:@"文艺" withString:@"213" ]; NSLog(@"%@",str2); //方法2 NSString *str1 = @"文艺青年

普通青年和文艺青年的区别

如题,不解释 普通青年: HashMap<String,String> map = new HashMap<String,String>; map.put("name","Lily"); map.put("age","11"); 文艺青年: HashMap<String,String> map = new HashMap<String,String>{ { put("n

jQuery制作鼠标悬停水平滑动门切换特效仿阿里妈妈联盟广告切换特效

原文:jQuery制作鼠标悬停水平滑动门切换特效仿阿里妈妈联盟广告切换特效 源代码下载地址:http://www.zuidaima.com/share/1607128309009408.htm 版权声明:本文为博主原创文章,未经博主允许不得转载.