3、微服务:原理、应用与设计解析

微服务:原理、应用与设计解析

1. 十二因子应用的微服务特性

云系统有一套标准指南,十二因子应用方法论适用于软件即服务(SaaS)、Web 应用或云部署软件,它为构建结构良好且可扩展的云应用列出了必要条件:
1. 代码库 :每个微服务维护单一代码库,针对开发、QA、生产等不同环境有特定配置,且在版本控制系统(如 Git)中有自己的仓库。
2. 依赖项 :所有微服务的依赖项作为应用包的一部分。例如在 Node.js 中, package.json 会列出所有开发依赖和整体依赖,还可使用私有仓库拉取依赖。
3. 配置 :所有配置应基于服务器环境外部化,实现配置与代码分离。可在 Node.js 中设置环境变量,或使用 Docker Compose 定义其他变量。
4. 后端服务 :通过网络使用的服务(如数据库、I/O 操作、消息查询、SMTP、缓存)以微服务形式暴露,借助 Docker Compose 实现与应用独立。
5. 构建、发布和运行 :在分布式系统中使用 Docker 和 Git 等自动化工具。利用 Docker 的 push、pull 和 run 命令隔离构建、发布和运行三个阶段。
6. 进程 :设计的微服务应是无状态且无共享的,实现零容错和轻松扩展。使用卷来持久化数据,避免数据丢失。
7. 端口绑定 :微服务应自主且自包含,将服务监听器嵌入服务本身。例

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值