时间:2021-07-01 浏览:4275次
在本文中,我们将简单提及云原生、云原生应用与传统应用对比以及重点介绍“EMM为何需要云原生”。
云原生(Cloud-Native)
云原生(Cloud-Native)是一个组合词,从字面来看可以分成云和原生两个部分。
云与本地相对,云表示应用程序位于云端而非传统的数据中心,云包含了IaaS,PaaS和SaaS。 原生是土生土长的意思,原生表示设计应用之初便考虑到云环境,原生为云而设计,采用云端技术,充分利用云平台的优点,比如:弹性和分布式。
来自于Pivotal公司和云原生计算基金会(CNCF)的权威云原生定义:
云原生应用与传统应用的对比
| 传统应用 | 云原生应用 |
重点关注 | 使用寿命和稳定性 | 上市速度 |
开发方法 | 瀑布式半敏捷型开发 | 敏捷开发、DevOps |
团队 | 相互独立的开发、运维、质量保证和安全团队 | 协作式 DevOps 团队 |
交付周期 | 长 | 短且持续 |
应用架构 | 紧密耦合 单体式 | 松散耦合 基于服务 基于应用编程接口(API)的通信 |
基础架构 | 以服务器为中心 适用于企业内部 依赖于基础架构 纵向扩展 针对峰值容量预先进行置备 | 以容器为中适用于企业内部和云环境 可跨基础架构进行移植 横向扩展 按需提供容量 超大规模并发 |
EMM为何需要云原生?
EMM伴随企业发展已悄然走过了十多个年头,一套系统也从管理企业设备成千上万规模发展到数以十万、百万、甚至千万量级,在此过程中,传统架构的局限性表现愈发明显:
1.登录场景
传统单体应用在管理几十万设备时,由于数据库处理能力的瓶颈,面对几十万用户同时在线登录的场景,系统会造成拥塞。究其原因,EMM客户端在登录时,每次均需完成用户身份验证、检查客户端版本、检查计算环境、交换沙箱密钥、确认用户下载的应用是否有更新、检查是否有新策略、检查是否提交日志、提交位置信息、提交登录信息、后台通过准入模型分析是否风险登录等一系列操作。因此,传统单体应用在这些场景下,基本无法使用。
2.应用升级
传统单体应用采用war包方式不断升级系统,从而使得版本管理的难度越来越大,随着时间的推移,一般系统运行2年后,任意一个环节出现问题导致搞不清楚问题所在,除了降低系统可用性还会造成维护成本越来越高。
此外,企业移动管理还逐渐向统一端点管理(UEM)发展。
EMM产品发展到今天,需要使用新的思想,新的技术,新的方法,才能够真正满足用户在性能,容量方面迅速调整的需求,才能够真正做到迅速的迭代升级,不断实现用户迅速变化的需求,直到云原生的出现。
| EMM面临的问题 | 云原生应用的解决 |
涉及业务领域广阔,业务逻辑复杂: | 移动身份验证 移动设备管理 企业应用商店 安全隧道传输 终端沙箱管理 安全策略控制 安全事件审计 安全邮件服务 终端SDK集成 数据风险治理 | 微服务治理,基于服务接口,松散耦合,分别发展,各自升级,优化架构,提升各服务性能指标 |
企业规模增大:
| 基础用户数量大 移动设备数量大 管理业务量庞大 | 微服务治理,各服务按需横向扩展部署,容器化部署,自动化编排,支持大规模部署,以及全部服务的云集中管理 |
移动互联网的发展,移动计算环境的变更更加迅速: | 终端操作系统升级 终端厂商管理方法升级 新的设备上市 新的产品出现:鸿蒙OS,Windows11 国家政策 | 微服务治理,敏捷开发,devOps高效持续交付 |