04什么场景要用到微服务

一句话导读

根据微服务的特点,可以总结为在构建复杂的、大型的、分布式的、高可用、高并发、高性能的应用时可以使用微服务架构。

目录

一句话导读

一、微服务适用场景

1.业务复杂,模块多且相对独立

2.团队多,管理隔离

3.应用规模大,并发用户多

4.快速迭代、持续交付

5.技术栈多

二、总结


一、微服务适用场景

从我们上次《02单体应用真的是地狱吗》这篇博客中可以看到,在小王和小任公司业务不断发展,他们最初的单体应用已经很难适应当前的发展速度了,他们已经开始考虑做应用架构的变更重构了。

那么对于他们来说,业务越来越复杂,模块越来越多,团队也越来越大,部署迭代越来越难,修改、测试都非复杂、扩展快要达到上限。针对这些困难,我们对标微服务的特点,不难发现,当前他们转型微服务是一个不错的选择。

我们可以简单总结下微服务适应的场景:

1.业务复杂,模块多且相对独立

当公司业务越来越复杂,单体应用的模块越来越多,而且模块之间是可以相互独立,能够专注独立的一个领域的,能够相互解耦,将复杂问题分解成多个简单问题。

2.团队多,管理隔离

公司团队越来越多,每个团队都有自己的管理方式,各自负责独立的模块或者领域。相互开发进度、维护应用都是可以相互隔离的,实现团队自治,提高开发效率

3.应用规模大,并发用户多

微服务可以横向分布式扩展,能够应对应用规模的不断扩大,可以应付海量用户增长

4.快速迭代、持续交付

当业务需求不断变化,需要频繁地发布新功能和更新时,微服务架构可以实现快速的开发、测试和部署,支持持续交付和持续集成。

5.技术栈多

微服务的实现不依赖于技术栈的选型,可以是不同技术栈开发应用,只要能够对外提供统一的接口服务即可

二、总结

只有当业务规模发展到一定程度,业务复杂度对于单体应用很难应付的时候,拆分出来的模块能够相对独立解耦且可以独立迭代交付时。我们可以考虑采用微服务架构设计,总之,选择微服务架构时,需结合实际需求和团队技术水平,权衡利弊,合理规划和设计微服务架构。

相关推荐
chengooooooo17 分钟前
苍穹外卖day8 地址上传 用户下单 订单支付
java·服务器·数据库
李长渊哦19 分钟前
常用的 JVM 参数:配置与优化指南
java·jvm
计算机小白一个20 分钟前
蓝桥杯 Java B 组之设计 LRU 缓存
java·算法·蓝桥杯
Bright16682 小时前
centos9安装k8s集群
云原生·容器·kubernetes
南宫生3 小时前
力扣每日一题【算法学习day.132】
java·学习·算法·leetcode
计算机毕设定制辅导-无忧学长4 小时前
Maven 基础环境搭建与配置(一)
java·maven
ITPUB-微风4 小时前
Service Mesh在爱奇艺的落地实践:架构、运维与扩展
运维·架构·service_mesh
xidianjiapei0014 小时前
Kubernetes的Ingress 资源是什么?
云原生·容器·kubernetes
企鹅侠客5 小时前
kube-proxy有什么作用?
云原生·kubelet
风与沙的较量丶5 小时前
Java中的局部变量和成员变量在内存中的位置
java·开发语言