前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Spring Cloud Alibaba - 01漫谈传统架构和微服务架构

Spring Cloud Alibaba - 01漫谈传统架构和微服务架构

作者头像
小小工匠
发布于 2022-02-02 07:21:00
发布于 2022-02-02 07:21:00
5000
举报
文章被收录于专栏:小工匠聊架构小工匠聊架构

文章目录

单体架构 VS 微服务架构

单体架构

简而言之 : war包走天下

我们来分析一下优缺点:

优点:

  • 架构简单
  • 开发测试部署简单

缺点:

  • 随着业务扩展,代码越来越复杂,代码质量参差不齐,开发人员的水平不一,修改每一个小bug都是心惊胆战的
  • 由于单体架构,功能复杂,部署慢
  • 扩展成本高,根据单体架构图 假设模块A是一个CPU密集型的模块 ,而模块B是一个IO密集模块。单体架构上,无法针对单个功能模块进行扩展,那么就需要替换更牛逼的CPU + 更牛逼的内 存 + 更牛逼的磁盘,这成本…
  • 阻碍了新技术的发展,升级成本高~

微服务架构

英文:https://martinfowler.com/articles/microservices.html

中文:http://blog.cuicc.com/blog/2015/07/22/microservices

微服务核心就是把传统的单机应用,根据业务将单机应用拆分为一个一个的服务,彻底的解耦,每一个服务都是提供特定的功能,一个服务只做一件事,类似进程,每个服务都能够单独部署,甚至可以拥有自己的数据库。这样的一个一个的小服务就是微服务.

单体应用,非核心业务出现了重大bug导致系统内存溢出,导致整个服务宕机 。拆分之后,只是出问题的模块不可用,系统核心功能并不受影响

单机架构扩展与微服务扩展

单机架构扩展通常都需要依赖nginx

微服务架构以及扩展可以单独扩展某个模块,无需像单体应用整体扩展。

微服务数据存储可以有自己的数据库

微服务 VS 微服务架构

微服务架构是一个架构风格, 提倡

  • 将一个单一应用程序开发为一组小型服务.
  • 每个服务运行在自己的进程中
  • 服务之间通过轻量级的通信机制(比如http rest api)
  • 每个服务都能够独立的部署
  • 每个服务甚至可以拥有自己的数据库

微服务以及微服务架构的是二个完全不同的概念。

微服务强调的是服务的大小和对外提供的单一功能,而微服务架构是指把 一个一个的微服务组合管理起来,对外提供一套完整的服务。

微服务的优缺点

优点

  • 每个服务足够小 , 足够内聚,代码更加容易理解 , 专注一个业务功能点
  • 开发简单,一个服务只干一个事情
  • 微服务能够被小团队开发,提高效率
  • 按需伸缩
  • 前后端分离 ,后端开发人员只要关系后端接口的安全性以及性能
  • 一个服务可用拥有自己的数据库,也可以多个服务连接同一个数据库.

缺点

  • 增加了运维人员的工作量,以前只要部署一个war包,现在可能需要部署成百上千个jar/war包. 甚至引入docker + k8s
  • 服务之间相互调用,增加通信成本
  • 数据一致性问题(分布式事物问题)
  • 系能监控等,问题定位…

微服务的适用场景

合适

  • 大型复杂的项目
  • 快速迭代的项目
  • 并发高的项目

不合适

  • 业务稳定,主要工作修修bug
  • 迭代周期长,发版频率低
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022/02/01 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
起家于俄罗斯的NGINX开源项目宣布禁俄,不知NGINX之父怎么想?
近日,F5 公司(F5 Networks) CEO François Locoh-Donou 发布公开信表示,已暂停在俄罗斯的所有销售活动,并将客户支持相关工作转至其他地点。同时,移除俄罗斯对 F5 网络的访问权限以及停止俄罗斯对 NGINX 开源项目做贡献。不管是商业代码还是开源代码,都不会放在俄罗斯境内。
小灰
2022/04/13
4740
起家于俄罗斯的NGINX开源项目宣布禁俄,不知NGINX之父怎么想?
F5 收购 NGINX,一个时代的落幕
俄罗斯人 Igor 在 15 年前编写并开源了 NGINX,设计精良的架构,极致性能的代码,开启了高性能 web sever 的新时代,让 C10K、C100K 从可能变为了现实。
温铭@APISIX
2020/02/24
1.6K0
F5宣布停止俄罗斯对Nginx的贡献,暂停在俄的销售活动
3月15日,F5 CEO FRANÇOIS LOCOH-DONOU在官方博客发布了一篇名为《Standing Firm in Support of the People of Ukraine》的文章,以支持处于战火中的乌克兰人民。 FRANÇOIS LOCOH-DONOU 在该博文中宣布,F5已经暂停了在俄罗斯的所有销售活动,取消了F5网络接入,同时还停止了俄罗斯对Nginx开源项目的贡献。他表示,俄罗斯没有任何商业或开源代码,并将仍然致力于Nginx的发展和社区的壮大,以及保护俄罗斯人民的福祉。 近日,
程序猿DD
2022/03/24
4920
nginx之父离职
当地时间 1 月 18 日,Nginx 公司副总裁兼总经理 Rob Whiteley 在 Nginx 官网发布了一篇「告别信」,正式宣告 Nginx 的作者和 Nginx Inc. 的联合创始人 Igor Sysoev 退出 Nginx 和 F5 Networks。
后端技术探索
2022/02/23
4500
nginx之父离职
Nginx 对俄罗斯动手了。。。
点击关注公众号,Java干货及时送达 作者 | 苏宓 出品 | CSDN(ID:CSDNnews) 不久之前,一些底层工具、软件、开源项目相继宣布在俄罗斯停服,彼时也有不少开发者呼吁 Nginx 是时候进行反限制了。 万万没想到,就在国际局势发生改变的一个月后,Nginx 动了手,但是有些「意料之外,情理之中」,只因其对标的是俄罗斯的开发者们。 3 月 15 日,美国知名网络公司 F5 CEO FRANÇOIS LOCOH-DONOU 发表《Standing Firm in Support of th
Java技术栈
2022/03/28
6660
Nginx 对俄罗斯动手了。。。
点击上方“芋道源码”,选择“设为星标” 管她前浪,还是后浪? 能浪的浪,才是好浪! 每天 10:33 更新文章,每天掉亿点点头发... 源码精品专栏 原创 | Java 2021 超神之路,很肝~ 中文详细注释的开源项目 RPC 框架 Dubbo 源码解析 网络应用框架 Netty 源码解析 消息中间件 RocketMQ 源码解析 数据库中间件 Sharding-JDBC 和 MyCAT 源码解析 作业调度中间件 Elastic-Job 源码解析 分布式事务中间件 TCC-Transaction
芋道源码
2022/04/02
3020
Nginx 对俄罗斯动手了。。。
关于Nginx的一些你不得不知道的内容(基本介绍),内容比较多建议收藏哦
  因为Nginx在我们项目中的地位是越来越重要了,所以最近话时间整理了下Nginx的内容了,希望对各位小伙伴有帮助哦!
用户4919348
2021/07/29
5640
关于Nginx的一些你不得不知道的内容(基本介绍),内容比较多建议收藏哦
Freenginx: Nginx的分叉
Freenginx Web服务器致力于重现开源开发“造福公众”的精神,摆脱企业控制。
云云众生s
2024/03/28
1750
悠悠二十载,Nginx创始人Igor宣布离职
2002年春季,Igor Sysoev迈上了Nginx的开发之旅。面对互联网的早期飞速发展,他希望提出一种更好的网络流量处理方式——这将是一种新颖的架构,能够让高流量网站更从容地处理数万个并发连接,并将照片、视频等一众可能严重影响页面加载速度的内容缓存起来。
IT运维技术圈
2022/06/26
7160
悠悠二十载,Nginx创始人Igor宣布离职
Nginx 之父被抓,前东家想要 Nginx 技术的所有权了
昨天 Nginx 创始人被捕了。一周前,他的前东家 Rambler 集团对 NGINX Inc. 提出了侵犯版权的诉讼,声称拥有 Nginx 网络服务器代码的全部所有权。莫斯科警方随后展开了突袭行动,查封了 Nginx 在莫斯科的总部,扣押了设备、带走并讯问了多位雇员,包括联合创始人兼现任首席技术官 Igor Sysoev,以及联合创始人 Maxim Konovalov。
Java帮帮
2019/12/30
1.1K0
Nginx介绍
Nginx(“engine x”)是一款是由俄罗斯的程序设计师Igor Sysoev所开发高性能的 Web和 反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。和apache一样,都是web服务器软件,因为其性能优异,所以被广大运维喜欢。又因为nginx是一个轻量级的web服务器,相比apache来说资源消耗更低。
星哥玩云
2022/09/15
3300
F5 禁止俄罗斯为 NGINX 开源项目作贡献,并暂停了在俄业务
F5表示:已暂停了在俄罗斯的所有销售活动,并将客户支持工作转移到其他地方。已禁止俄罗斯访问F5网络,并停止了俄罗斯对NGINX开源项目作贡献,这项工作会在全球其他地方继续开展。没有任何代码放在俄罗斯境内,无论是商业代码还是开源代码。除了确保我们在俄罗斯的工作人员的福祉外,我们还仍然致力于NGINX的发展及社区的发展壮大。 Nginx是由俄罗斯程序员伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru网站开发的。后成立同名公司提供支持服务。 2019年3月12日,F5 Networks宣布6.7亿美元收购
云头条
2022/03/21
8830
Nginx 核心开发者发布新分支 Freenginx
最近,F5 前雇员、Nginx 项目主要贡献者发布了 Nginx 的分支 Freenginx。这个新项目是为了解决一个安全争议,并希望成为 Nginx 的可替代方案,由开发人员而不是企业实体负责运营。前 F5 首席软件工程师 Maxim Dounin 发表了对这个分支的见解:
深度学习与Python
2024/03/20
2160
Nginx 核心开发者发布新分支 Freenginx
Github 、Nginx、Intellij IDEA、Docker在俄罗斯停用!
推荐阅读: 《外包,狗都不去。。》 《这次,我得夸夸西安。。。 技术圈的战争 这段时间,俄罗斯乌克兰的战争在继续,我们也活久见的看到了很多稀奇的制裁。 上次写文章提到《谷歌、苹果、Oracle暂停俄罗斯所有业务...》,谷歌、苹果、Oracle、脸书等科技大厂都部分暂停俄罗斯功能或者业务。 就在技术圈内,也不能幸免。 大家知道,我是Java程序员出身,目前Java 领域内使用最广泛的开发工具,就是 JetBrains 公司出品的 IDE 系列。 3 月 11 日,捷克知名软件公司 JetBrains 发文
纯洁的微笑
2022/03/24
7310
GitHub 限制俄罗斯、Google 奖励 25 名开源贡献者、Linux 内核曝高危漏洞|开源月报 Vol. 04
「WeOpen Insight」是腾源会推出的「开源趋势与开源洞见」内容专栏,不定期为读者呈现开源圈内的第一手快讯、优质工具盘点等,洞察开源技术发展的风向标,预见未来趋势。 1 社区新闻 1、美国法院判决:未经 OSI 许可的开源是「假开源」! 3 月 17 日 ,OSI(Open Source Initiative,开放源代码促进会 )发文转述了一项来自美国法院的判决,表示未获 OSI 开源许可证许可,而自称「开源」的软件属于虚假广告。但独立技术律师 Kyle E. Mitchell 反驳了 OSI 的
腾源会
2022/04/01
8350
GitHub 限制俄罗斯、Google 奖励 25 名开源贡献者、Linux 内核曝高危漏洞|开源月报 Vol. 04
Nginx 的创始人被抓走了!
据国外媒体报道,俄罗斯警方于12月12日抓捕了Nginx的发明者Igor Sysoev,以及联合创始人Maxim Konovalov。
小灰
2020/04/22
1.1K0
Nginx 架构——【核心流程+模块介绍】
Nginx (engine x) 是一个高性能的Web服务器和反向代理服务器,也是一个IMAP/POP3/SMTP服务器
Java知音
2019/03/25
3K0
俄乌战争期间,美国警告要注意“浑水”趁乱搞事情
近日,美国和英国发布警告称,一个已经确定有伊朗国家背景的黑客组织正在俄乌大战期间,针对全球目标开展数字攻击以及其他的恶意活动。
FB客服
2022/04/11
2910
俄乌战争期间,美国警告要注意“浑水”趁乱搞事情
指控 NGINX 串谋侵吞的诉讼后来怎么了
2020 年 6 月 8 日, 林伍德投资有限公司(Lynwood Investments CY Limited)在加利福尼亚州北区对 NGINX 相关的各种商业实体以及个人、 鲁纳资本(Runa Capital)、 E.venture 资本合伙人(E.venture Capital Partners II, LLC)和 F5 网络公司提起诉讼,指控被起诉人共谋私吞公司资产,并不当发布和使用流行开源软件 NGINX(发音为“EngineX”)。以下是投诉内容节录:
用户8639654
2021/09/15
4810
Nginx负载均衡的详细配置及使用案例详解.
感谢看过这一些列博文和评论的小伙伴, 我把自己所看到的学到的拿到这里来分享是想和大家一起学习进步, 想听听园友给出的意见, 也是对自己学习过程的一个总结.  技术无止境, 我们仍需努力! 1,话不多
一枝花算不算浪漫
2018/05/18
1.5K0
推荐阅读
相关推荐
起家于俄罗斯的NGINX开源项目宣布禁俄,不知NGINX之父怎么想?
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档