单体到分布式到微服务

这篇具有很好参考价值的文章主要介绍了单体到分布式到微服务。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

背景

业务驱动着技术发展是亘古不变的道理。最开始的时候,业务量少、复杂度低,采取的技术也相对简单,能够基本满足用户对功能的需求。随着 IT 信息化的普及,更多交易被放到了网络上,增加的信息量和频繁的业务访问就变成了需要解决的问题。因此,逐渐产生了缓存、集群等技术手段,同时对业务扩展性和伸缩性的要求也变得越来越高。高并发、高可用、可伸缩、可扩展、够安全一直都是架构设计所追求的目标。下面我们来看一下架构设计经历了哪些阶段,以及每个阶段分别解决了哪些问题,又引出了哪些新问题。

步骤

应用与数据一体模式:

1、访问人数有限
2、基本没有高并发的特性
3、部署成本较低
4、单个应用和数据库在单体服务器上
单体到分布式到微服务,JAVA,分布式,微服务,架构

应用与数据分离模式:

1、应用和数据库都要占用一台机器的资源,当前这台机器性能出现问题。
2、业务应用和数据存储分开,放在两台机器上了单体到分布式到微服务,JAVA,分布式,微服务,架构

缓存与性能的提升

1、用户对某些数据的请求量特别大,热点数据
2、受到数据库io性能的影响
3、客户端服务器,应用服务器本地缓存,缓存服务器缓存
单体到分布式到微服务,JAVA,分布式,微服务,架构

服务器集群并发处理

1、并发问题:并发就是指多个用户同时请求应用服务器。如果说原来的系统面对的只是大数据量,那么现在就需要面对多个用户同时请求
2、银行柜台
单体到分布式到微服务,JAVA,分布式,微服务,架构

数据库读写分离

1、数据库写的时候会加锁很慢,读的时候很快,写的时候会排队。写影响读了。读的操作多。

2、主库用来写操作,通过binlog形式将数据更新到从库中。
单体到分布式到微服务,JAVA,分布式,微服务,架构

反向代理和CDN

1、人们对网络安全和用户体验的要求也越来越高,索引引入好反向代理服务器
单体到分布式到微服务,JAVA,分布式,微服务,架构
2、客户端就可以从离自己最近的网络节点获取资源,大大提升了用户体验和传输效率

单体到分布式到微服务,JAVA,分布式,微服务,架构
CDN 的加入明显加快了用户访问应用服务器的速度,同时减轻了应用服务器的压力,原来必须直接访问应用服务器的请求,现在不需要经过层层网络,只要找到最近的网络节点就可以获取资源。但从请求资源的角度来看,这种方式也有局限性,即它只对静态资源起作用,而且需要定时对 CDN 服务器进行资源更新。反向代理和 CDN 的加入解决了安全性、可用性和高性能的问题。

分布式数据库与分库分表

单体到分布式到微服务,JAVA,分布式,微服务,架构
● 对于数据表来说,当表中包含的记录过多时,可将其分成多张表来存储。例如,有 1000 万个会员记录,既可以将其分成两个 500 万,分别放到两张表中存储,也可以按照业务对表中的列进行分割,把表中的某些列放到其他表中存储,然后通过外键关联到主表。注意被分割出去的列通常是不经常访问的数据。● 对于数据库来说,每个数据库能够承受的最大连接数和连接池是有上限的。为了提高数据访问效率,会根据业务需求对数据库进行分割,让不同的业务访问不同的数据库。当然,也可以将相同业务的不同数据放到不同的数据库中存储。

业务拆分

1、解决了数据存储问题
2、应用分开部署,之前是一个应用分开部署,将一个应用拆成多个部署到不同非服务器中。

单体到分布式到微服务,JAVA,分布式,微服务,架构

分布式和微服务

分布式:拆了就行。

微服务:细粒度的垂直拆分。

● 拆分目的不同:提出分布式设计是为了解决单体应用资源有限的问题,一台服务器无法支撑更多的用户访问,因此将一个应用拆解成不同的部分,然后分别部署到不同服务器上,从而分担高并发的压力。微服务是对服务组件进行精细化,目的是更好地解耦,让服务之间通过组合实现高性能、高可用、可伸缩、可扩展。

● 拆分方式不同:分布式服务架构将系统按照业务和技术分类进行拆分,目的是让拆分后的服务负载原来单一服务的业务。微服务则是在分布式的基础上进行更细的拆分,它将服务拆成更小的模块,不仅更专业化,分工也更为精细,并且每个小模块都能独立运行。● 部署方式不同:分布式架构将服务拆分以后,通常会把拆分后的各部分部署到不同服务器上。而微服务既可以将不同的服务模块部署到不同服务器上,也可以在一台服务器上部署多个微服务或者同一个微服务的多个备份,并且多使用容器的方式部署。
单体到分布式到微服务,JAVA,分布式,微服务,架构文章来源地址https://www.toymoban.com/news/detail-849139.html

总结

到了这里,关于单体到分布式到微服务的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 下一代服务架构:单体架构-->分布式架构-->微服务(DDD)-->软件定义架构(SDF with GraphEngine)

    参考:自己实现一个SQL解析引擎_曾经的学渣的博客-CSDN博客    

    2024年02月12日
    浏览(53)
  • 深度解析四大主流软件架构模型:单体架构、分布式应用、微服务与Serverless的优缺点及场景应用

    🌷🍁 博主猫头虎 带您 Go to New World.✨🍁 🦄 博客首页——猫头虎的博客🎐 🐳《面试题大全专栏》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~🌺 🌊 《IDEA开发秘籍专栏》学会IDEA常用操作,工作效率翻倍~💐 🌊 《100天精通Golang(基础入门篇)》学会Golang语言

    2024年02月06日
    浏览(51)
  • 【架构设计】单体软件分布式化思考

    单体软件是历史悠久的软件架构形态,以下是一个简单的前后端分离的单体架构的 web 软件。 单体软件采用分布式方案部署,是根据需求而定的。 为了满足不同场景下的需求,单体软件中的客户端、代理层、服务、数据库,都可以以多个副本联合起来,提供服务的方式部署,

    2024年01月18日
    浏览(55)
  • Gin框架: Cookie和Session在单体架构和分布式架构下的应用

    Gin 中单一Cookie的应用 1 )路由处理 2 ) 控制器处理 设置cookie时,设置了两个不同过期时间的cookie 5s 后第一个cookie 自动丢失 访问 /delcookie 路由,第二个路由被主动删除 HTTP 是无状态协议,当你浏览了一个页面 然后转到同一个网站的另一个页面,服务器无法认识到这是同一个

    2024年02月22日
    浏览(47)
  • 【数据网格架构】分布式数据网格作为集中式数据单体的解决方案

    企业数据架构师不应构建大型集中式数据平台,而应创建分布式数据网格。 ThoughtWorks 的首席技术顾问 Zhamak Dehghani 在旧金山 QCon 的演讲和相关文章中表示,这种方法的改变需要范式转变。随着数据变得越来越普遍,传统的数据仓库和数据湖架构变得不堪重负,无法有效扩展

    2024年02月11日
    浏览(43)
  • Dubbo——微服务框架(单体式->分布式->微服务)

    Dubbo是阿里巴巴开源的基于Java的高性能RPC(一种远程调用)分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。; 每天为2千多个服

    2024年02月05日
    浏览(34)
  • 【分布式微服务专题】从单体到分布式(四、SpringCloud整合Sentinel)

    相对来说,Sentinel的学习难度比之之前的Dubbo要低了不少。不过在学习过程中也遇到了一些认知局限带来的困难。比如,虽然还是学习了Sentinel,但是不知道生产环境该如何配置才是最佳的状态。 说到底,Sentinel还是没有提供很好的文档支持。比如:生产最佳实践方案。 官方也

    2024年01月23日
    浏览(49)
  • [架构之路-221]:鸿蒙系统和安卓系统的比较:微内核VS宏内核, 分布式VS单体式

    目录 一、鸿蒙系统和安卓系统的系统架构 1.1 鸿蒙系统的分层架构 1.2 安卓系统的分层架构 1.3 鸿蒙系统和安卓系统是操作系统吗? 二、鸿蒙系统和安卓系统的系统架构比较 2.1 它们与Linux操作系统的关系 2.2 架构比较 三、操作系统基础 3.1 微内核架构 3.2 宏内核架构 3.3 传统

    2024年02月07日
    浏览(43)
  • 单体到微服务架构服务演化过程

    聊聊从单体到微服务架构服务演化过程 在 Web 应用程序发展的早期,大部分工程是将所有的服务端功能模块打包到单个巨石型(Monolith)应用中,譬如很多企业的 Java 应用程序打包为 war 包,最终会形成如下的架构: 巨石型应用易于搭建开发环境、易于测试、易于部署;其缺

    2024年02月08日
    浏览(49)
  • 系统架构的演变:从单体到微服务的旅程

    随着信息技术的快速发展,系统架构也在不断演变。从早期的单体架构到现代的微服务架构,每一次的变革都带来了更高的灵活性和可扩展性。本文将通过图解和代码示例,详细介绍系统架构的演变过程,并探讨微服务架构的优势和适用性。 单体架构是最早的系统架构之一,

    2024年01月18日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包