首页 > 其他分享 >单体服务,微服务服务的演变 & 各自优缺点

单体服务,微服务服务的演变 & 各自优缺点

时间:2023-06-16 17:25:41浏览次数:35  
标签:web 服务 service -- 优缺点 单体 mysql

单体服务,微服务服务的演变&各自优缺点

---- 一.单体服务
web-->service-->infrastructure-->mysql
web-->service-->redis
web-->service-->rabbitMQ

优点:
随着服务的演变
1.1> 单体服务
● 优点:
1> 架构简单,清晰。服务之间调??便,快捷。
2> 服务部署简单。部署量少。运维量很低。

● 缺点:
1> 随着项目进展时间变长,整个项目的代码复杂度越来越高,很容易1个小改动,导致很大的系统问
题。
2> 由于代码量很大,编译和部署会越来越慢,甚致20~30分钟都很正常。
3> 由于有的功能属于大量运算的CPU密集型模块,有的是大量读写磁盘的IO密集型模块。但是由于融
合在了1个项目中,无法针对单个功能模块进行扩展。那么只能CPU和内存和磁盘都要提升,资源投
入很大。
4> 如果我们想要针对已有项目改变技术选型,那么就需要针对整个项目进行修改,工作量将会巨大。

----- 二.微服务
● 微服务的核心就是把传统的单体服务,根据业务拆分为1个个的服务,实现解耦;每个服务都可以
提供特定业务的功能,每个服务都能够单独部署,也可以拥有自己的数据库。这样的1个个的小服
务就是微服务。

web-->user-service-->user-domain-->infrastructure-->mysql-user(共享redis,rabbitmq)
web-->prod-service-->prod-domain-->infrastructure-->mysql-prod(共享redis,rabbitmq)
web-->order-service-->order-domain-->infrastructure-->mysql-order(共享redis,rabbitmq)

● 优点:
1> 每个服务足够小,足够内聚,专注于1个业务功能点提供服务。代码更容易理解。
2> 有代码修改或部署上线,只会影响对应的微服务,不会是整个服务。
3> 可针对服务是计算型还是IO型进行针对性的硬件升级。
4> 可以针对某些高吞吐服务进行硬件升级或者服务横向扩容,而不是对所有服务都升级。节约投入成本。
● 缺点:
1> 极大的增加了运维工作量,以前几个war包,现在可能需要部署几百个。
2> 微服务之间的互相调用,会增加通讯成本。
3> 分布式事务问题会引出数据一致性的问题。
4> 服务增多,如果管控成百上千的服务。如何准确并快速定位问题。

标签:web,服务,service,--,优缺点,单体,mysql
From: https://www.cnblogs.com/chenshaojun2008/p/17486056.html

相关文章

  • C# 使用批处理启动Windows服务
    当期环境:Win11家庭版注:批处理文件编码方式需设置为ANSI启动服务:@echooff>nul2>&1"%SYSTEMROOT%\system32\cacls.exe""%SYSTEMROOT%\system32\config\system"if'%errorlevel%'NEQ'0'(gotoUACPrompt)else(gotogotAdmin)......
  • 大带宽服务器租用能带来的好处
    1.租用大带宽服务器能够同时支持大量的在线用户,带宽资源充足,访问速度快,提高用户的使用体验。2.大带宽服务器能够带宽冗余进行抵抗,防御DDoS攻击及CC攻击,保证服务器的数据安全。3.租用大带宽服务器能够实现带宽独享,避免服务器的卡顿,减少系统中断造成的业务影响。具体内容如下:1......
  • 逾百位开发者到场,超 2 万人线上观看!龙蜥社区开发者服务 devFree MeetUp 精彩回顾来啦
    春末夏初,细雨漫漫,龙蜥社区迎来了首届开发者服务平台(devFree)线下MeetUp。此次沙龙吸引了不少来自行业头部公司、机构的代表参与主题分享,现场更是有百余位业内的专家与开源技术爱好者、工程师参与了关于如何做好开源社区,如何通过基础设施为开源赋能的讨论。5月27日,北京。濛濛细雨......
  • systemd-xxx.service服务介绍
                    1 systemd-journald.service(日志服务)                这个日志服务可以协助记录日志文件,包括启动过程中的所有信息。不过,它只能记录本次启动的信息,重启后之前的信息就查询不到了。这样的原因是;这个......
  • 【服务器数据恢复】EMC Isilon(OneFS)存储中vmware虚拟机被误删除的数据恢复案例
    EMCIsilon存储结构:Isilon群集存储系统使用的是分布式文件系统OneFS。Isilon群集存储系统的每个节点均为单一OneFS文件系统,Isilon在进行横向扩展时不会影响数据的正常使用。Isilon群集存储系统所有节点在工作时都提供相同的功能,节点没有主备之分。Isilon群集存储系统在存储文件时,O......
  • EasyExcel读取Minio文件服务器Excel文件数据
       工具类inputstream转为MultipartFile/***inputStream转MultipartFile*@paraminputStream*@paramfileName*@return*/publicstaticFileItemcreateFileItem(InputStreaminputStream,StringfileName){FileItemFa......
  • 东邻到家小程序|上门服务系统|东邻到家系统开发功能
    随着人们生活水平的提高,越来越多的年轻人选择寻求家政服务,例如保洁、家居维修、保姆等服务。然而由于缺乏对家政公司的了解,用户经常感到困惑,这为有远见的企业提供了商机,东邻到家小程序的出现让家政人员和用户更加便捷的享受家政服务,那么东邻到家小程序有哪些功能呢?接下来小编就给大......
  • 微服务的出现
    “微服务“这一概念出现于2012年,是因软件作者MartinFowler而流行。微服务将单一应用程序分解为多个业务服务。它的出现带来了下列变化单个系统按照不同业务进行分解(服务组件化),业务内部的逻辑更趋向于集中,提高了代码的复用性,减少了代码rǒng冗余,提高了业务整体系统性能,......
  • 服务器22端口没有对外开放,那使用ping命令还能通吗
       `ping`命令是基于ICMP协议的网络诊断工具,主要用于测试网络通信是否正常以及测量数据包往返时间等。它并不依赖于任何端口开放与否的情况,因此即使你的服务器的22端口没有对外开放,使用`ping`命令一样可以进行网络通信测试。当你使用`ping`命令测试某个服务器时,它会发......
  • Qt+QtWebApp开发笔记(六):http服务器html实现静态相对路径调用第三方js文件
    前言  前面做了一些交互,网页是直接通过html对response进行返回的,这里QtWebApp与传统的web服务器不同,传统的web服务器可以调用同级目录相对路径或者绝对路径下的js,而QtWebApp的httpserver是response返回当前页面的问题,默认是无法调用的。  为了解决调用一些依赖的如echarts......