【足迹】除了打造高可用的应用环境,FreeWheel还为运维做了什么??[.com原稿]或许在很多人看来,FreeWheel的很多做法都出乎意料:公司的业务、销售、市场都在欧美,但技术研发团队主要是常驻中国;在大熊猫般女性程序员稀缺的IT职场,FreeWheel北京研发中心近300名员工中,女性员工占比约40%;都标榜着求贤若渴,但又有多少像FreeWheel这样的人能够在纽约为他建办公室,留住自己喜欢的工程师呢?如果说吸引了众多求职者的目光,那么吸引记者的则是公司内部的IT架构和运维。这家在欧洲、美国、中国均设有办事处,其广告平台被美国90%的主流电视媒体和运营商使用的跨国公司如何保证高效协作?FreeWheel成立十年,成立至今年广告播放量共计100万次,单日投放近10亿条广告,运维部用什么来保障稳定的应用环境产品?作为对新兴技术非常敏感的高科技企业,如何选择最合适的科技产品? 前后一个月内,记者采访了FreeWheel联合创始人、美妆CTODianeYu和运维副总裁VitoLeung。通过两人的分享,解答了上面的一系列问题,还原了一个真实的FreeWheel。在记者看来,这家公司充满活力,既没有历史包袱,也没有缺乏代码专家。他们对产品有清晰的定位,对新技术有理性的判断和尝试,对IT规划有预见和冷静。值得借鉴的地方很多。记者也希望通过本文,能够为面临IT运维困惑的跨国公司、高科技公司和创新型公司提供更多参考。 反其道而行之的研发中心 熟悉FreeWheel的人都知道,这家跨国公司的研发中心从成立之初就设在北京。有人将其归因于黛安是土生土长的北京人,有故乡情节。其实,真相并非都是如此。 Diane在美国工作九年,接触过很多中国程序员。她很早就发现,中国工程师基本功扎实、吃苦耐劳、能力出众,但往往苦于语言。另一个劣势是中国的IT人才分布在不同公司的不同部门。没有形成团队,不能互相支持和帮助,很难共同提高。当时她就在想,为什么不招募国内最优秀的工程师组成研发团队呢?后来,她遇到了FreeWheel的另外两位创始人,提出了在北京建立研发中心的想法,很快就被采纳了。 FreeWheel研发中心主要招收清华、北大、中科院、哈工大等一流大学的尖子生。组队之初,除了语言上的明显劣势外,中外思维方式的差异也经过一段时间的调整。很多小细节黛安以前从来没有想过,也会引起误会。比如研发团队发邮件,通信时间的书写往往按照中国习惯“年-月-日”来标注,而美国时间的标准习惯是“月-日-年”。因此,当邮件从中国发出时,美国团队在雨中看到了他们。雾里摸不清开会的时间。 但很快,在经历了痛苦的“磨合期”后,中国的研发团队爆发出惊人的研发能力。一方面,团队非常有思想,研发能力强,能够快速响应美国产品部门的需求。一方面,FreeWheel研发团队三分之一的人都有去美国或欧洲“在职”轮岗的经历。他们近距离接触过产品应用和客户服务,更了解研发的重点和方向。当然,还有一个不用多说的好处就是英语沟通能力的快速提升。事实证明她的决定是正确的,现在她的合作伙伴已经在各种场合告诉客户或者投资人,FreeWheel之所以能走到今天,与Diane决定在北京设立研发中心是分不开的。“有一个非常焦虑的阶段,但我很高兴我被证明是对的。” 以最小的成本试错Network,有的负责基础运维,有的专注于产品应用运维等,管理运维团队是维拓的重要职责之一。整个运维团队主要承担三项工作:一是学习和借鉴外部新兴技术;二是随时跟进公司的产品开发和支持;三是与不同部门沟通协调,满足不同部门需求。 这三件事说起来容易,真正做到却不容易。以第一件事为例,Vito需要解决FreeWheel在IT开发过程中遇到的各种挑战,其中他需要以最小的试错成本找到最有效的解决方案。他给记者举了两个例子: ★数据库选型之路 在互联网广告行业,根据用户信息和历史兴趣行为进行精准投放已经成为基本要求。为了满足这一需求,需要构建一个支持高并发、低延迟、可扩展、高可用的用户数据库系统。这是很多实时广告系统面临的一个非常大的技术挑战。 FreeWheel的用户数据从最初的几万、几十G发展到现在6亿、TB的规模,每天更新数据高达1亿,要求毫秒(ms)级别优秀的跨数据中心数据访问性能,确保数字广告的实时性能。 Vito告诉记者,基于上述业务需求,FreeWheel在产品选型、编程接口、软件设计、用户数据库运维等方面做了很多尝试、探索和改进。 初期数据量小。基于访问性能的考虑,他们首先尝试了业界非常流行的开源软件产品memcached来实现全内存访问,取得了不错的效果;随着数据量的不断增加,全内存存储已经不能满足需求。接下来研发和运维的同事们开始对leveldb进行测评,根据FreeWheel的业务需求做了一些特殊的定制,从而实现了数据在磁盘上的持久化存储,摆脱了内存容量的限制。 但后续的问题和挑战也随之而来。从运维的角度来看,很多问题无法很好解决,比如高可用难实现、节点增加成本高、跨数据中心延迟大等。这时候FreeWheel开始积极寻求和尝试更多的软件产品和解决方案,最终选择了aerospike这样的产品。在API实现、数据访问性能、命名空间定义、低延迟数据同步、SSD硬盘访问优化、高可用实现、运维友好性等方面具有突出优势,使得FreeWheel的广告投放系统不仅在响应速度有了巨大的提升,跨数据中心同步的平均延迟控制在毫秒级(ms)。产品小贴士:Memcached:是一个高性能的分布式内存对象缓存系统,用于动态web应用降低数据库负载。LevelDB:是Google实现的一个非常高效的kv数据库,可以支持亿级数据量。Aerospike:是一个具有键值存储的高性能实时NoSQL(灵活模式)数据库。 ★网络文件系统的演进 在FreeWheel中,运维团队采用NFS(NetworkFileSystem)方案,实现多系统和服务器之间的数据共享。NFS是Linux/Unix操作系统下应用广泛且非常成熟的共享文件系统,可以通过tcp/ip协议在计算机之间共享资源。在运维团队的推动下,NFS的应用在FreeWheel中经历了几个阶段。 在最初的业务阶段,他们只使用一台NFS服务器为前后端产品提供所有数据共享服务。数据包括广告创意文件、用户数据报告、广告日志等。 后来随着FreeWheel产品的不断升级和商业模式的扩展,数据量和读写吞吐量也越来越大。单一的NFS服务器无法满足需求,因此新方案基于业务逻辑拆分现有的数据资源,分布到多个NFS服务器上,从业务逻辑的角度隔离数据资源。同时,这也需要推动产品和开发部门的同事调整应用程序设计以适应这种改进。 在基本解决了容量和性能问题后,运维团队进一步提升了多台NFS服务器的高可用和可扩展性。经过研究比较,最终选择了RedhatClusterSuite作为解决方案,实现了从2节点互备到4节点多对多互备,一直到现在的7节点多对多互备架构,使共享资源的读写性能、服务可用性水平、系统冗余度、水平扩展能力等为系统提供强有力的支持。 协作痛点:美欧中如何同步? 在采访中,Vito多次表示,作为一个运维团队,需要的不是产品业务的问题,而是如何让不同区域的运维团队有一致的目标和优先级。 FreeWheel在美国、欧洲、中国的办事处,主要职能各不相同。有些办公室更喜欢与用户沟通,有些办公室更喜欢工程。因此,不同办公室的运维团队面临和要解决的问题是不同的。Vito更详细地解释道:如果一个团队在日常工作中与客户有很多接触,需要满足客户的一些特定需求,那么如何更好更快地处理客户需求将是团队需要关注的问题onimproving;而如果office主要是和工程师团队接触,那么如何更好的为工程师团队服务自然会成为重中之重。 因此,作为一个整体的全球运维团队,如何将各个区域的需求放在一起来确定优先级,并作为一个整体,共享一个backlog(工作列表)成为了FreeWheel运维的一大挑战.***解决这个问题的方法是“全球运营项目管理”流程。简单来说,各地运维团队的领导和公司的IT架构师需要定期沟通,列出优先级,保证大家一致。 协作方面,随着公司的成长,为了提高客户服务质量的标准,FreeWheel的SLA(服务水平协议)越来越严格,流程越来越成熟,临时需求越来越少和更少。据Vito介绍,SOP(标准作业程序)和硬件需求申请流程已经被替换,使得团队之间的沟通与合作更加顺畅。 2017,拥抱Devops 随着业务需求的变化,FreeWheel从只有两台机架服务器(ui?adserver?db)的简单系统发展到跨越多个机房的数千台服务器,覆盖多层复杂缓存、报告、预测和nosql等系统架构。过去几年,FreeWheel采用了私有云的方案,Vito告诉记者,他最近开始研究混合云的方向,公有云和私有云都用。 Vito透露,FreeWheel下一步的发展重点将放在DevOps上。他认为,美国和中国的运维在这方面有很大的不同。在美国,大部分运维工程师必须同时具备运维(系统+网络)能力和开发能力。在国内,传统的运维工程师还是更专注于运维。“随着中国科技产业的进步,运维领域也开始要求运维工程师除了运维思维之外,还要有更多的开发思维。” Vito的另一个思考方向是如何支持越来越快的版本迭代。显然,这不仅仅是速度的问题,更重要的是如何在快速的同时保持生产环境系统的高质量和稳定。这将涉及对技术本身和产品架构改进的研究和投资。 采访后记: 采访完FreeWheel,其实记者也有很多职业之外的感受。这家公司成功的背后,其实有很多必然性:严谨的市场调研、理性的技术判断、精准的市场定位、高效的三地协同、对产品应用开发的足够重视……他们的很多做法看似虽与常规做法背道而驰,但仔细一想又是“合理”的。 在国内企业走出去的趋势下,记者也建议其他企业可以参考FreeWheel的理性思考,不选择最知名的,只选择最适合自己的发展路径。 FreeWheel成立于2007年,总部位于美国硅谷。是一家专业从事互联网视频广告投放、监测、预测、增值等关键解决方案的外商独资公司。创始人是DouglasKnopper、JonHeller和DianeYu。 公司已经发展了十年。目前,美国约80%的传统电视媒体和运营商的数字视频广告业务使用了FreeWheel的服务。ComScore排名前10的视频网站中,大部分都是该公司的客户或合作伙伴。2017年开始,FreeWheel将重点开拓欧洲市场,在已经占据约50%市场份额的基础上进行升级。【原创稿件,合作网站转载请注明原作者和出处为.com】
