云原生十五要素

2019-05-15  本文已影响0人  陈sir的知识图谱

基准代码

同一应用对应同一套基准代码,并且能够多次部署。部署到不同环境的应用其代码应该是相同,不同的仅仅是配置。

依赖

显示生命第三方依赖 (maven gradle)

配置

将配置存储在环境变量中。

后端服务

后端服务作为松耦合的资源,后端服务指通过网络远程调用的服务,比如数据库,缓存,消息中间件等。要求不应该区别对待本地服务和远程服务。都属于附加资源

构建发布运行

严格分离构建阶段与运行阶段
构建是将软件打包成二进制的过程,运行指在执行环境启动一些列应用程序进程。
禁止在运行阶段改动代码。

进程

将应用作为无状态的进程运行

端口绑定

通过端口绑定对外发布服务,应用对于发布服务的环境不应该有过多要求,不需要依赖云平台提供应用运行容器,只需要云平台分配一个对外发布的端口即可。(即通过内嵌jetty tomcat 来避免运行容器)

并发

能够通过水平伸缩应用程序来实现并发

已处理

开一快速启动和优雅关闭,一句话概括(docker)

开发环境与线上环境等价

日志

使用事件流处理日志(ELK)

管理进程

将后台管理任务当作一次性进程运行

优先考虑 API设计

通过遥测感知系统状态

认证和授权

OAUTH2 RBAC

上一篇下一篇

猜你喜欢

热点阅读