七牛技术总监肖勤:微服务架构实践经验分享.docVIP

七牛技术总监肖勤:微服务架构实践经验分享.doc

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
七牛技术总监肖勤:微服务架构实践经验分享 服务的疯狂增长与云计算技术的进步,让微服务架构受到我们的重点关注。在近日的七牛开发者最佳实践日上,七牛技术总监肖勤介绍了本人在微服务架构方面的实践经验,并接受了CSDN记者的采访,分享了个人职业经历心得以及如何看待云服务,微服务架构和Docker、Kubernetes的发展等。 微服务架构优势 肖勤首先简单介绍了微服务(Microservices)的内涵及优势,他表示,微服务架构的本质,是用一些功能比较明确、业务比较精练的服务去解决更大、更实际的问题。微服务架构将服务拆分,分别采用相对独立的服务对各方面进行管理,彼此之间使用统一的接口来进行交流,架构变得复杂,优势也很明显:复杂度可控:在将应用分解的同时,规避了原本复杂度无止境的积累。每一个微服务专注于单一功能,并通过定义良好的接口清晰表述服务边界。由于体积小、复杂度低,每个微服务可由一个小规模开发团队完全掌控,易于保持高可维护性和开发效率。 独立部署:由于微服务具备独立的运行进程,所以每个微服务也可以独立部署。当某个微服务发生变更时无需编译、部署整个应用。由微服务组成的应用相当于具备一系列可并行的发布流程,使得发布更加高效,同时降低对生产环境所造成的风险,最终缩短应用交付周期。 技术选型灵活:微服务架构下,技术选型是去中心化的。每个团队可以根据自身服务的需求和行业发展的现状,自由选择最适合的技术栈。由于每个微服务相对简单,当需要对技术栈进行升级时所面临的风险较低,甚至完全重构一个微服务也是可行的。 容错:当某一组建发生故障时,在单一进程的传统架构下,故障很有可能在进程内扩散,形成应用全局性的不可用。在微服务架构下,故障会被隔离在单个服务中。若设计良好,其他服务可通过重试、平稳退化等机制实现应用层面的容错。 扩展:单块架构应用也可以实现横向扩展,就是将整个应用完整的复制到不同的节点。当应用的不同组件在扩展需求上存在差异时,微服务架构便体现出其灵活性,因为每个服务可以根据实际需求独立进行扩展。 微服务架构实践 肖勤介绍重点介绍了七牛图片处理(FOP)场景的微服务应用。FOP服务早期的架构以它的每一个应用为后端。随着用户越来越多,流量越来越高,负载均衡逐渐出现了带宽和流量的压力。七牛将图像处理服务拆成两个部分,分别负责处理文件的传输和图像本身的处理。从负载均衡过来的请求不再是完整的文件,而是文件的地址。这样,负载均衡和流量优化跟整个图像处理没有关系,可以做单独的部署。而对于稍微复杂一些的请求(如图片格式和尺寸的变更,添加水印),就用管道的方式把不同的服务串联起来最终实现。对话肖勤 CSDN:能否介绍您现在的工作,以及您为什么选择加入七牛? 肖勤:我在3个月之前加入七牛,目前负责基础架构运营、部署相关的研发工作,为基础架构部门的同事提供支持。 选择七牛,我很认同七牛的信念和观点,就是让云服务变成和水电煤一样的基础服务。能够为这样的想法而工作,我觉得还是挺有意思的。技术工作者在不同阶段需要关注和选择不同的东西,这就是我的选择。 CSDN:那您换了两次工作,也成为了一名技术管理者,从您的经历来看,在不同的时间节点应当关注哪些不同的东西,才符合技术人员的成长路径? 肖勤:刚开始工作的时候,我首先考虑要找到一个能够真正学习技术的平台,正好有一些熟悉的师兄能够引领我。然后来到一家创业团队,多数技术人员基本都没有经验,我就成为了技术决策者,把之前积累的经验变成解决问题的方式。再然后随着云计算的发展,我就加入到基础云服务的构建当中来。 我认为,对于初创公司来说,不存在纯粹的管理者,技术团队都是为产品研发服务的,不可能脱离技术工作。所谓管理,也是针对事情,做研发项目的管理,协调团队把产品做出来。 对于个人职业发展规划,我始终认为,首先一定不能浮躁,时代和技术变化确实都很快,但解决问题的基本技能才是技术人员的根本;其次需要多交流,包括和同事和老板的交流,才能更好地发挥自己的聪明才智。 CSDN:如何看待加入七牛的工作的挑战? 肖勤:从公司层面说,存储服务基础很好,但其他方面的积累相对要少,还需要继续学习和积累。与此相对应,于我个人而言,背景知识也还有很多需要学习的地方。应对的办法,我认为是多读代码,读书,通过项目试验,以及尖端技术在实践中的使用来获得进步。 CSDN:您擅长Ruby on Rails,七牛云存储其实用Go,您如何看待不同的语言和框架的选择? 肖勤:我个人对开发工具没有特定的偏好,相信实用至上,不会参与语言的争论。语言、框架都是工具性的东西,都是为产品研发服务的,应当由项目决定。Ruby on Rails是不错的工具,七牛云存储用的Go语言,前端以AngularJS为主,也都非常成熟。七牛公司内部已经有很多的积累,所以也没必要再造车轮。

您可能关注的文档

文档评论(0)

150****0021 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档