到底什么是TAE

2016-02-02 17:37 稿源:用户投稿  0条评论

TAE2.0(Taobao App Engine)是针对移动互联网场景的定制化PaaS云服务,基于阿里云基础设施,采用Docker容器技术封装应用运行环境,并且针对互联网应用提供系统构建、发布、持续集成、运维管理的一站式解决方案,让中小团队也具备轻松服务海量用户的能力。

系统构建能力(Build)

TAE拥有丰富的镜像资源,例如Java、PHP、MySQL、Redis、Zookeeper等镜像;开发者可以利用官方镜像,快速搭建系统,完成在TAE2.0上的架构搭建;若官方镜像无法覆盖架构需求,则开发者可利用自定义镜像轻松搭建系统。

通过镜像创建容器:

构建自定义镜像:

官方镜像 :TAE提供丰富的官方镜像,供开发者创建各种类型的服务。除了 Java、PHP、Python三种Web服务器镜像外,还提供了其他常用镜像,如存储(MySQL、MongoDB)、缓存(Redis、Memcached)、消息队列(ActiveMQ、RabbitMQ)、大数据计算(Hadoop)、代理服务器(Nginx)、分布式框架(Dubbo、ZooKeeper),内容管理(Wordpress)等。开发者通过选择镜像可以一键部署相应的服务,轻松搭建起自己的整套架构。

自定义镜像: 如果官方提供的镜像不能满足需求,TAE还支持开发者构建自定义Docker镜像,通过自定义Docker镜像开发者可以创建高度个性化的服务,比如各类语言的运行环境(如:ruby、go、node.js等)、各类服务器软件Apache、Lighttpd等等。TAE支持两种构建自定义镜像方式:在线制作自定义镜像、本地制作镜像制作并提交TAE私有仓库。

公共镜像加速:

Docker registry在中国既没有部署服务器也没有CDN加速节点,造成国内开发者从Docker registry下载镜像效率低下,TAE利用自身的遍布全国的CDN网络,为开发者提供Docker registry的下载加速服务。

应用部署能力(Deploy)

互联网创业项目一般具有周期短、业务爆发快等特点,这使得应用的发布升级非常频繁,TAE提供完善的开发工具和部署发布系统,提升开发部署效率,保障应用平滑发布。

发布管理系统 :

-- 部署发布

根据不同的使用场景和开发习惯,TAE提供了多种部署发布手段:

1.上传部署

开发者在本地将程序编译打包好后,上传到服务的测试环境,上传完毕后TAE将自动执行部署。

2.编译部署

开发者使用代码仓库管理应用的源代码,可以通过指定代码仓库分支直接编译部署到测试环境。

3.回滚部署

开发者每次部署的程序包会自动备份到历史版本,发布异常时,可以指定回滚部署到某一历史版本。

4.Beta发布

发布新版本的程序时,可以选择正式环境中的部分实例进行发布,而其它实例保留运行老版本程序,新版本运行一段时间无异常后,再全部上线,以确保发布稳定 。

--线上-测试环境模式

针对应用服务器类的服务,提供了线上环境和测试环境两个运行环境,开发者可以先在测试环境部署验证通过后,再上线到正式环境,确保发布稳定。

--主-备环境模式

对于支持主-备部署的服务(如MongoDB、Redis等),支持创建Master和Slave两套运行环境,默认master提供线上服务,一旦Master发生问题,开发者可以将slave切换为Master,以保障线上服务稳定。

在线IDE :支持单文件热部署以及整体应用的打包部署;支持在线编辑代码、推送仓库等操作。

运维管理能力(Management)

据统计,70%的移动互联网应用都曾遭受网络攻击而导致故障,创业团队往往难以应对,TAE提供了多重的安全防护机制,让系统免受基础设施故障和网络攻击的困扰。

同时,互联网创业团队一般规模较小、资源有限,应用的日常运维工作又耗时耗力,开发专业运维系统又成本高昂,TAE集成了运行环境管理、数据库管理、自动化监控、日志采集分析、压测系统,将开发者从运维工作中解放出来,专注业务实现。

运行环境安全 :应用运行环境数据采用多重备份,并且实现了自动恢复的策略,服务可用性达到99.95%。网络方面采用了硬件防火墙设施,提供四层到七层的全面防护,防护类型包括CC、SYN flood、UDP flood等所有DDoS攻击方式,支持清洗和黑洞机制,还接入了waf防护等功能。

运行环境管理:

--弹性管理

当业务面临突发增长或下降时,开发者可以根据需要对服务的运行实例个数进行调整,TAE会自动完成新增实例的生产、部署和接入负载均衡器进行分流。弹性扩缩过程完全平滑,用户无感知。

--SSH登录容器

对于运行中的实例(容器),开发者可以使用TAE提供的Webssh或SSH客户端工具直接登录到Docker容器进行管理,提供linux服务器的原生管理体验。

--配置管理

TAE支持对服务的运行环境进行配置修改,对于包括网络接入、日志采集路径、环境变量、高级配置(主要是“网络模式”和“状态模式”)的配置进行修改。

数据库管理系统:

--RDS控制台

对于TAE官方的RDS服务,开发者可以使用RDS控制台对数据库进行日常管理,支持导入SQL文件、数据库备份、数据库连接管理、数据库参数设置、重启实例等功能。

--iDB工具

对于TAE官方的RDS服务和通过镜像创建的MySQL服务,还提供阿里自主研发的iDB管理工具,支持对数据库表结构、数据内容、日志进行透出和管理,并提供对实例会话、事务锁、数据库服务器性能等的监控。

监控系统:

针对应用和数据库,提供针对关键性能指标的实时监控和告警,提高系统日常运维效率。

--应用监控

提供QPS(每秒查询率)、RT(请求响应时间)、PV(页面浏览量)、CPU使用率、访问错误码、自定义URL、日志关键字、应用所使用的数据源性能等进行监控。

--RDS监控

提供连接数、存储空间、IOPS(每秒进行读写I/O操作的次数)、QPS(每秒查询率)、每秒SQL执行数、慢SQL、网络流量等指标的监控。

日志系统:

--查询日志

提供日志自动采集和分析,支持对应用日志、访问日志进行格式化展示,支持包括错误码分析、URI日志分析、关键字筛查、慢日志分析在内的多种查询分析手段。

--实时日志

支持日志的实时输出展示,为开发者排查问题提供强有力支持。

在线诊断工具:

TAE为Java开发者提供了Jstack分析工具,为php开发者提供了xhprof工具,支持开发者进行在线的性能问题排查。

压测系统:

服务端程序的自动化压测和分析工具,开发者提交测试任务后,系统自动对应用进行施压并搜集性能表现指标,并输出测试报告,帮助开发者诊断性能瓶颈。

权限管理系统:

对于团队作业的开发者,TAE提供针对控制台和代码仓库的分权管理体系,解决不同角色的开发者分工协作的问题,支持子账号创建,角色管理、权限分配等功能。

关于阿里百川

阿里百川(baichuan.taobao.com)是阿里巴巴集团“云”+“端”的核心战略是阿里巴巴集团无线开放平台,基于世界级的后端服务和成熟的商业组件,通过“技术、商业及大数据”的开放,为移动创业者提供可快速搭建App、商业化APP并提升用户体验的解决方案;同时提供多元化的创业服务-物理空间、孵化运营、创业投资等,为移动创业者提供全面保障。 

本文由站长之家用户投稿,未经站长之家同意,严禁转载。如广大用户朋友,发现稿件存在不实报道,欢迎读者反馈、纠正、举报问题(反馈入口)。

免责声明:本文为用户投稿的文章,站长之家发布此文仅为传递信息,不代表站长之家赞同其观点,不对对内容真实性负责,仅供用户参考之用,不构成任何投资、使用建议。请读者自行核实真实性,以及可能存在的风险,任何后果均由读者自行承担。

相关文章

相关热点

查看更多