不改一行代码做秒杀!
致力于为企业提供云化的应用架构
- 不修改一行代码,提高整体业务的性能和稳定性。并支持大规模的各种营销活动(如:商品秒杀)。
- 微服务编排与调度,自动化运维整个软件的应用架构。轻松提供开放平台和云化SaaS应用。
- 监控整体系统服务的健康度和性能,只有把基础层和中间件的监控指标,与应用服务乃至业务的指标关联起来,才是真正的监控。
产品使命
高性能和高可用
简单的说来,一个公司会经历如下的三个阶段:
-
第一阶段:从 0 到 1。
这一阶段主要是在验证自己的产品。
-
第二阶段:用户获取期。
这一阶段,产品已经被用户接受。公司需要做大规模的营销和推广活动来获取更多的用户。
-
第三阶段:业务扩张期。
这一阶段,公司已经成功并开始进入其它业务领域。
显而易见,在不同的阶段,公司会面临不同的技术挑战。
技术挑战
在第一阶段,软件团队只需要一个单体的软件架构,因为这样在开发测试部署上都非常快,这样可以很快把产品交付给前期的种子用户来验证软件产品
在第二阶段和第三阶段,软件团队需要考虑整个后台系统的高可用性,并要努力提高软件架构的性能来满足大量用户的访问。这个时候,需要一个分布式架构,这会带来很多的非功能性软件需要开发,比如:SOA服务化,消息中间件,远程调用中间件,缓存中间件,服务调度,监控,部署,网关……甚至需要一个私有云平台。要做到这些,对于软件团队的挑战是非常大的。
MegaEase,我们将致力于为用户提供相应的软件技术产品来帮助用户渡过这个艰难的技术成长期!
应用的云化架构
虽然,现在所有的云平台都以能帮助企业提高软件的稳定性和性能来标榜自己。但是,我们知道,事实上来说,用户的应用架构才是稳定性和性能的关键地方。所以,只有做到了应用的云化架构,我们才能让软件架构达到最终的稳定性和性能。
然而,应用的云化架构还意味着:
-
扩展性。
应用层的服务会和基础层的平台一同扩展,而应用中的服务也很容易被编排和调度。
-
服务化。
一个企业内部的服务很容易对外服务,可以让企业对外提供SaaS化的平台服务。
-
生态圈。
开放平台是生态圈的关键,把企业的服务以 Open API 的方式对外暴露,可以让更多的第三方软件提供商的软件接入到我们的平台中,从而造就一个广阔的生态圈。"
要让自己的架构变成一个云化的架构,这个挑战对于大多数企业来说挑战都非常的大。
MegaEase,我们将帮你容易地达成这个目标。
使用场景
商品秒杀及大规模营销
商品秒杀及大规模营销会为网站带来超大规模的流量和负载。这需要对后端的架构和容易进行预先调整,但对于工程来说,这需要很多的工作量和时间成本,而且对于大规模营销的流量很难估计。Ease Gateway 可以非常简单方便的,不修改后端的代码,就可以处理这样的场景。
自动化性能伸缩
对于整个架构进行性能测试是一件非常难也是非常复杂的事情,尤其是需要模拟出生产线上的环境。使用 Ease Monitor 可以随时了解生产线的运行性能和健康度,而 Ease Stack 可以非常简单方便的创建测试环境,以及在生产时进行自动化的伸缩以保证性能容易的实现要求。
开放平台
Ease Gateway 帮助企业把内部的服务变成外部开放的API,并可以自动化的生成 API 的多语言的 SDK 和相关文档。这样一来,不但可以增强自己的开发效率,同时也可以让其它组织和个人容易地集成。这个建立生态圈的关键。
多租户和云化服务
通常来说,一个公司会有多个业务开发部门,他们之间需要一个共享的应用服务或是一个共享的集成测试环境。使用 Ease Stack 可以非常方便的创建相应的多租户资源,并能很好的在他们之间进行业务上的共享,以及资源上的隔资。
灾难备份
Ease Gateway 可以自动的感知后端服务的情况,以及自动化的在不同的数据中心间做服务路由。所以,一旦数据中心出现问题,自动化将流量切换到另外一个可用的数据中心。而这些对于用户和来说是完全自动化和透明的。
资源调度
一般来说,在云市场上,会有很多相同的服务,比如:云存储服务、CDN服务、支付网关服务……。使用我们的产品可以让用户在多个相同服务间进行调度,以达到资源使用的最优效果,最大化资源的利用,最小化成本。
Ease Gateway
提升服务性能和稳定性
Ease Gateway 通过API网关技术,可以在不改一行代码的情况下,最大限度的帮助后台服务扩大基可用性和稳定性,并且可以增加整体的性能。其可以让企业在快速业务增涨的同时不用对整个技术架构进行大改造,以赢得并抓住稍瞬即逝的商业机会。
-
支持“秒杀”及大规模营销
通常我们会在线上做很多的促销活动,尤其对于电子商务的公司来说,会在线上做大规模的“商品秒杀”活动,或是“抢红包”活动。对于这样的活动,使用 Ease Gateway 将直接支持,而不用修改一行代码。
-
提高性能
Ease Gateway 可以做到不改一行后端的代码来提升服务应用的性能。比如,加入缓存机器、合并请求、减少网络带宽传输,等等。
-
关键业务保护
很多时候,网站会受到突发的高流量,在这种超过网站的整体性能或容量的,情况下,Ease Gateway 可以通过牺牲一部分不重要的功能或是用户,来保护重要业务以及重要用户的可用性。
-
流量控制
Ease Gateway 可以通过监控三个因子:吞吐量、响应时间,和成功率,来动态的控制到达后端的流量,以对后端可用性进行保护。
-
熔断技术
这个功能同样是一个保护性的功能,当后端服务错误率达到一个阈值时,系统将自动启动“熔断”机制——将拒绝所有的请求,以保护后端的服务,让后端的服务有时间恢复,一旦后端的服务恢复,Ease Gateway 将自动停止熔断。
Ease Stack
微服务编排和调度
Ease Stack 主要帮助用户管理整个系统的服务架构的编排和运行时的调度,其不但可以通过一个预先定义好的架构清单来一键部署整个架构,并且可以在运行时对整个架构中的各个服务进行调度。其主要包括如下功能:
-
架构定义
所为架构定义,就是用户只需要定义好一个架构中各个服务的构成,其中包括,服务的实例数量,需要的资源,部署方式(Docker),以及相关依整性,等。Ease Stack 可以通过这个定义文件启动整个架构。这对于需要创建环境的场景非常的简便易用。
-
架构的全生命周期管理
每一个服务在其生命周期中有很多的状态,如:部署、就绪、更新、伸缩、故障、销毁……等,自动化运维就是要自动化地维护好服务的对这些状态。Ease Stack 可以方便地对整个架构中各个服务的全生命周期的进行有效的管理。
-
服务弹性伸缩
使用 Ease Stack,或以非常方便的通过 HTTP API 或命令行的方式对系统内任一服务进行弹性伸缩,并且自动化切换相应的流量。
-
服务故障恢复
对于出现故障的服务实例,自动化故障迁移,并强行维护用户定义的实例数量。
-
驱动 DevOps 实践
DevOps 一个软件工程的优秀的实践,通过 Ease Stack,可以让工程师团队很自然地走到 DevOps 上来,并以此提高生产力以及自动化运维。
Ease Monitor
服务健康度和质量
Ease Monitor 是一种 APM(Application Performance Management)。其监控整个系统的性能和相关的健康度,和其它的 APM 不一样的是,Ease Monitor 会把基础层,中间件层的监控数据和服务的监控数据打通,从总体的视角提供监控分析。其主要包括如下的功能:
-
服务健康度
所谓服务的健康度,其实就是在服务在某个吞吐量下所表现出来的响应时间和调用成功率。Ease Monitor 可以把整个架构中所有服务的健康度给呈现出来。
-
架构性能瓶颈分析
Ease Monitor 会提供一系列的各式各样的 Top N 的服务性能排名,这样可以方便找到最影响性能的服务和相关组件或操作。
-
调用链路追踪
Ease Monitor 中以做到端到端的调用链路追踪——可以从用户的手机端开发,直到最后端的数据库。Ease Monitor 通过兼容于 zipkin 的分布式调用追踪协义,来向开发和运维人员展示整个 SOA 或微服务架构的整体调用关系。
-
全栈资源监控
最有效的监控系统不是罗列更多的指标,而是要把所有的指标和对用户提供服务关联起来,只有把底层基础层,中间的中间件层,和对外所提供的服务给关联起来,才能有效的了解整个系统的服务指标——SLA。
-
开放易用
Ease Monitor 的架构采用了非常主流和开源的架构,非常容易和现有的已存的监控系统进行整合和集成。