创新实践 | 基于容器平台的学生一站式办事大厅服务支撑
程序猿天天在小奕耳边叨叨
“docker真的是太牛了!”
“这个东东用docker解决不就OK啦”
“只有一个办法,那就是docker”
docker
docker
docker
……
所以docker到底是什么?
以下是傲娇的程序猿给小奕的解释。
Docker是一个开源的引擎,可以轻松为任何应用创建一个轻量级的、可移植的、自给自足的容器。
Docker容器技术应该是近年来最火热的一个开源技术,它真正改变了应用从开发、构建到发布、运行的整个生命周期。
Docker定义了一套应用从开发构建、部署以及运行的标准体系,使得应用的交付管理变得非常简单。
容器技术特性包括:封装、隔离,高效。
封装特性解决私有化部署问题;
隔离特性解决安全问题;
灵活部署的高效性解决大客户问题,采用微服务架构利用模块服务解决定制化问题。
容器平台打破开发和运维团队之间的障碍,提高应用开发、部署、维护效率,通过统一界面,管理应用和集群,并可随时监控每一个应用、集群、主机的运行健康状态。
总之,在程序猿的眼里,Docker容器就是棒棒棒!
“听上去确实很腻害的样子,可是跟智慧校园建设有什么关系?有本事你摆个事实,举个例子!”小奕翻了个白眼。
“举就举,怕你不成?”
程序猿一脸得意,“就以武汉大学学生一站式办事大厅的迎新服务为例子,让你见识见识容器平台的能量!”
基于容器平台的学生一站式办事大厅服务支撑
——以武汉大学为例
武汉大学学生一站式办事大厅就是基于联奕自主研发的容器平台奕云CaaS平台实现。
该办事大厅在迎新季凭着稳定的性能和超高的效率在2017级新生面前怒刷了一波好感,成为2017年高校办事大厅里的现象级爆款、网红。
武汉大学学生办事大厅首页
办事大厅系统首页,采用互联网思维的搜索引擎模式,快速查询自己需要办理的事务,简单,明了,快速,高效;
基于办事大厅系统环境的“迎新现场”
基于办事大厅系统环境的“迎新现场”,集成身份证读卡器以及输入即联想的查询方式,可以快速定位新生,提高报到手续的办理效率。
武大高效率迎新背后的技术解读
武汉大学本次迎新采用微服务技术架构,根据学校自身业务需求,采用基于事件驱动的DDD领域驱动设计。
整个迎新由迎新服务网、现场服务、后台服务三个部分组成,前端后台分离设计。
采用奕云CaaS容器平台进行部署运维,各服务均采用独立部署,相互之间完全隔离,互不影响。
采用 REST 的 API,由API Gateway 负责管理所有任务,涉及接受和处理成百上千并发 API 调用,包括流量管理、授权和访问控制。
弹性伸缩
武汉大学9月5-7日三天迎新日,陆续接待了17000余名新生注册报到,在迎新期间根据新生报到数及访问流量对迎新系统的服务进行按需伸缩,轻松应对业务快速增长带来的高并发问题,提高设备利用率,节省部署和实施成本。
2
灰度发布
采用灰度发布,迎新系统即使正在线上运行,也可以根据具体情况随时进行调整,完全不影响现场使用,让师生感受到不停机更新服务。
9月5日本科生第一天迎新,为满足学校老师手机移动端实时掌握新生报到情况的需求,项目组利用容器平台灰度发布的特性,在迎新过程中更新升级,增加手机移动端统计功能。
一天之内超过5个版本的迭代,依然保证系统平滑运行。
3
实时监控
容器平台后台可以实时监控各服务器的运行状况,监控CPU使用率、内存占用率、磁盘占用率、网络流入等运行情况,以便于随时做出合理的资源配置。
再来回忆一下传统迎新状态
1、臃肿的部署
单体应用迎新系统一旦出现功能或者缺陷的变更,就必须重新部署整个应用。
这种部署方式影响大、风险高,决定了部署频率低,导致两次发布之间有大量的功能或者缺陷需要进行变更,出错概率增高。
2、局限的弹性与扩展能力
单体应用迎新系统作为一个强耦合的整体,无法根据业务功能伸缩,只能作为一个整体进行扩展。这造成资源浪费,同时无法针对不同业务模块的特性进行有针对性的伸缩,比如计算密集型服务、IO密集型服务。
优势对比
1、基于业务进行拆分,可以对业务进行更精细化的设计,达到极致的体验。
2、采用自动化文化,做持续集成和持续交付,保证需求的改动上线在数分钟之内完成。
3、服务独立部署 ,迎新系统由一组小但是独立的服务来组成,这些服务运行在自己的进程中,可以被独立开发,独立部署。
4、服务完全自治,在迎新系统运营时,修改其他某功能服务也不会对其他服务的功能造成影响。
程序猿讲完了,冲小奕比了个V,发出杠铃般的笑声。
那什么,小奕的表情,此刻如下↓↓↓
不说了,小奕学习容器技术去了~
迎新特辑: