微服务OR单体架构

embedded/2024/10/21 7:58:27/

微服务OR单体架构

  • 为什么会出现微服务和单体架构的争议?
  • 在实际的业务中,你选择的是微服务还是单体架构
  • 在云上,哪种架构更符合未来云的发展趋势呢?

说到微服务OR单体架构,其实这两个场景并不存在很明确的争议界限的,而是可以理解为一个项目或者说一个系统的不同阶段。比如说系统初始阶段采用单体架构,待用户量、数据量上来之后采用微服务架构,这都是很正常的架构现象。那么为什么会出现争议呢?

为什么会出现微服务和单体架构的争议?

对于这个问题,个人理解应是项目之初对于架构的选择问题上触发的争议。因为项目之初往往为了快速上线,抢占市场,对于项目上可支配的时间往往不是很充裕,甚至说是很紧张。这个时候就会有两种声音:一种是采用单体架构,项目开发周期短,功能够用,上线速度快,无需考虑由于微服务架构带来的各种数据一致性问题以及子项目的交互问题;另外一种就是说采用微服务架构,虽然开发周期会延长,但是功能更强大,系统整体容灾性更好,系统更稳定,单一子项目代码体量小,上线更快更无感,后期拓展能力更强。

所以说这个时候,往往就会在选择微服务架构还是单体架构上产生争议,不过这个争议其实也是容易评估解决的。如果待开发项目本身初版功能比较简单,且用户量不大,单体架构足以支撑的话,那么考虑到快速上线的情况,当然是选择单体架构周期更短;后期随着功能的不断增多,用户量的不断增长,再逐渐向微服务结构转化或者说整体进行向微服务结构的迁移,都是可以的。而如果待开发项目本身初版功能就比较全,时间上也不是很紧张,那么当然选择微服务架构对于项目的拓展性以及单一子项目代码更新的便捷性上都是很不错的,只是需要考虑数据一致性以及子项目之间通信的问题。

在实际的业务中,你选择的是微服务还是单体架构

在实际业务中,我们的项目发展过程基本就是沿着单体架构微服务架构的路线进行的。项目初始往往比较急,需要尽快上线体验功能,因此采用单体架构附以nginx负载均衡转发提供服务,保证项目稳定运行;待后期项目功能不断拓展,单一项目承载太多,体量太大的时候,会拓展出小的子项目,搭建微服务架构来保证系统稳定,同时保证单一子项目迭代上线不影响整体业务运行。

在云上,哪种架构更符合未来云的发展趋势呢?

在云上,当然还是微服务脚骨更符合未来云的发展趋势。对于云来说,系统上云往往也就是由于系统本身的数据量太大,本地服务器已经无法承载才会提前上云保证服务运行。而大批量的访问和数据量处理,单体架构自然是无法承载的,这个时候微服务架构就能很好的发挥优势。对于不同的业务开辟出独立的应用进行开发、运行、部署、维护,整体上不影响整个系统本身的运行,这样其实也更符合云的开放的思想。

综合来说,微服务架构更符合未来云的发展趋势。


http://www.ppmy.cn/embedded/6569.html

相关文章

革新鞋服零售:数据驱动的智能商品管理 解锁库存优化与高效增长

国内鞋服零售企业经过多年的发展,已经形成诸多家喻户晓的品牌,但近年来一些企业的库存问题也时常显现,高库存不仅困扰着品牌商,也使一些多年合作良好的经销商深受其害,当下的订货会制度在初期帮助企业解决了盲目生产的…

移植speexdsp到OpenHarmony标准系统⑥

九、准备好上传speexdsp至OpenHarmony仓库。 移植完成后,先将代码上传至sig仓中的contest仓 sig仓库是TPC仓库的孵化仓。代码先上sig仓,到时会直接平移到tpc仓。 上传的内容包括: 原生库代码 (除了涉及需要修改原生库代码的部分…

【LeetCode热题100】【二分查找】搜索旋转排序数组

题目链接:33. 搜索旋转排序数组 - 力扣(LeetCode) 同样是要在数组中查找元素,不同的是这次的数组是这样//的,升序数组,但是往前移动了一下,也就是两段升序,456123这样 看了一位天才…

Javaweb知识之AJAX的概念的通俗理解(包含axios)

AJAX 一.概念: AJAX(Asynchronous JavaScript And XML):异步的JavaScript和XML 异步 JavaScript的理解:就像你给朋友发了一条消息,然后继续做其他事情一样。你不需要等待朋友回复,可以继续做自…

c/c++的关键字 inline 介绍

c/c C和C是两种非常流行的编程语言,它们在许多方面有相似之处,但也存在一些关键的区别。以下是C和C的一些主要特点和差异: C语言的特点: 过程式编程:C是一种过程化的语言,强调过程和函数的使用。 简洁高效…

设计模式之模板方法模式详解(上)

模板方法模式 1)概述 1.定义 定义一个操作中算法的框架,而将一些步骤延迟到子类中,模板方法模式使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 2.方案 背景:某个方法的实现需要多个步骤(类似…

科目一笔记

扣分 目前只有 12 9 6 3 1分。 扣1分的 会车 不按照规定会车, 普倒掉(普通路上不按规定掉头,倒车) ​ 高速、城市快速路…以外的道路 普通路 ​ 校车…以外的道车 普通车 使用灯光 ​ 需要注意的是只有不按规定使用灯光&…

js 过滤 json 数据

js 过滤 json 数据 一、一维数组过滤1、filter2、map 二、复杂数组过滤三、树形数据过滤四、过滤附件数组 — filter、map、findIndex 一、一维数组过滤 1、filter let arr [{id: 1,name: "张三",age: 18},{id: 2,name: "李四",} ] arr arr.filter(ite…