机器人也上云-创业团队的阿里云实践心得精选.docx

机器人也上云-创业团队的阿里云实践心得精选.docx

  1. 1、本文档共22页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
机器人也上云-创业团队的阿里云实践心得精选

机器人也上云-创业团队的阿里云实践心得本文章来自于阿里云云栖社区摘要:?机器人也上云想到机器人,相信很多人会联想到斯瓦辛格主演的《终结者》系列电影。那部系列片里描绘了完全存在于云端的人工智能“SkyNet”。从科幻小说,到科幻电影,到真正的科技实践中,云计算都是解决包括人工智能在内的机器人相关技术的关键和基础。机器人也上云想到机器人,相信很多人会联想到斯瓦辛格主演的《终结者》系列电影。那部系列片里描绘了完全存在于云端的人工智能“SkyNet”。从科幻小说,到科幻电影,到真正的科技实践中,云计算都是解决包括人工智能在内的机器人相关技术的关键和基础。我们是一个负责实施机器人 Pepper 本地化的创业小团队,我们选择阿里云全面部署我们的业务,成了自然而然的选择。但是,究竟如何使用云计算,或者说怎么让“机器人上云”,我们还是做了不少工程思想和技术应用上的小革新的。项目背景我们是一个标准意义上的创业团队。人员不富裕,项目很紧急等等凡是创业团队会遇到的问题,我们都有遇到。选择云计算在某种意义上,是快速搭建业务,技术性回避创业团队人员匮乏劣势的一个最佳选择。事实上,我们至今为止,整个平台开发团队(负责所有云上业务的团队)还是一个10人以下规模的小团队。而我们需要面对的项目,包括短期内搭建多环境架构的研发体系、建立基本业务平台、内部运营平台、基础数据平台、海外 AWS Base 的服务平台的整体迁移等十数个大小项目。在这些项目中,最能体现使用阿里云计算所带来的效率最大化、可用性最优的项目是多环境网络架构和 AWS 服务整体迁移两项。本文将侧重介绍这两方面相关内容。网络架构俗话说,麻雀虽小五脏俱全。如果需要以工程化的要求来进行团队合作开发,一些标准的工程环境是必不可少的。众所周知,一般的在线工程环境包括:测试环境(QA)、预发布环境(Staging)、生产环境(Production)三大部分。我们在阿里云上完整构建了上述环境,下面是整体网络的一个概览图:测试环境:测试环境是一个独立的 VPC,拥有独立的配属于测试环境的一级域名(只做 VPC 内解析,不做公网解析)、内网 DNS、中间件和阿里云基础服务。为了测试环境的安全和日常使用的便利,我们通过OpenVPN打通测试环境和办公网络,后续视业务房展会考虑专线接入。预发布环境:预发布环境和线上环境同属于一个 VPC,公用同一套阿里云基础服务,但是 DNS、配置中心和中间件是独立的。预发布环境的域名和线上保持一致,测试验证的时候需要手动绑定(或者使用),这样做是为了尽量保持预发布环境和生产环境的高度一致。生产环境:在生产环境中,我们除了使用了包括负载均衡、容器服务、RDS等大量的阿里云基础服务之外,还基于云监控和 ELK 构建了我们的监控系统,详见监控方案章节。API网关:由于我们整体使用了前后端分离的架构,在我们的网络架构里还有一个特点是基于Zuul搭建了一套API网关。定义了统一的前后端交互协议,包括采用 JWT 协议来鉴权,以RESTful风格作为接口标准等等。Docker容器服务实践近年来Docker已然成为了DevOps圈里的大热门。作为一个自认为追求效率的小而美的团队,响应热点显然不是我们的目的,真正帮助到团队、能够提升生产效率,才是我们选择这一技术的根本原因。为什么选择Docker契机在为我们的项目做技术选型的时候,适逢阿里云容器服务上线,我们发现阿里云的容器服务支持Docker Compose,提供了完整的配置和容器部署托管方案,同时还提供了镜像加速、镜像仓库等功能方便中国用户使用的利器并且兼容标准的Docker API。成本这里说的不是虚拟化节约的服务器成本,而是采用了Docker容器环境,使得团队成员间、各环境间,协调开发资源、环境时节省了大量的时间成本。选择Docker非常重要的一点就是它改变了传统基于代码包的部署方式,而是可以基于完整的 OS 镜像进行部署。在以往的从业经验中,遇到过非常多因为系统配置不一致、软件版本不一致、代码包不一致导致的 Bug 甚至严重的线上故障,而通过使用Docker镜像部署的方式,使得我们的测试、预发布、生产环境的代码保持高度一致,大大减少环境配置差异所带来的线上故障。架构容器化的部署架构,可以使项目更多的采用“微服务”理念的独立服务来实现各个功能。我们采用前后端分离的架构体系,服务端使用 Spring Cloud 构建各种微服务,通过 API 网关暴露给机器人、Web 站点前端和移动客户端。集成在创业团队只有一个运维人员、一个测试人员的前提下,如何快速、高质量的持续交付产品是一个挑战,而Docker有效地帮助解决了这个问题。(后文相关章节详述)弹性对于创新项目来说,业务的增长有非常多的不确定性,业务推广期的访问峰值和调整期的谷值对于服务器压力的

文档评论(0)

pfenejiarz + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档