【软件开发】从单机到分布式

news2024/11/19 14:44:40

从单机到分布式

1.单台服务器应用

在这里插入图片描述
问题:由于流量越来越大出现服务器性能问题。

2.应用服务器和数据库服务器分离

对架构增加了一台服务器,应用和数据库分别部署到不同的服务器上,对于开发和测试没有任何影响,只需要应用服务器新增一个远程调用数据库服务器的连接,有效地缓解了应用服务器负载的压力。
在这里插入图片描述

问题:随着请求流量的进一步增大,出现应用服务器性能问题。

3.应用服务器集群

在这里插入图片描述
流量请求得到缓解。

应用服务器集群后出现以下问题:

  • 需要使用 Session+Cookie 维护用户。
  • 如何做请求转发(CDN,前端做负载均衡器)。

4.负载均衡器

负载均衡器优化了访问请求在服务器组之间的分配,消除了服务器之间的负载不平衡,从而提高了系统的反应速度与总体性能。

负载均衡器可以对服务器的运行状况进行监控,及时发现运行异常的服务器,并将访问请求转移到其它可以正常工作的服务器上,从而提高服务器组的可靠性采用了负均衡器器以后,可以根据业务量的发展情况灵活增加服务器,系统的扩展能力得到提高,同时简化了管理。
在这里插入图片描述
负载均衡器之后出现以下问题:随着流量的新增,数据库服务器有性能压力,数据库遇到瓶颈。

5.数据库服务器集群

在这里插入图片描述
数据库服务器集群后出现以下问题:

  • 数据库读写分离
  • 数据库数据同步
  • 数据库路由

6.搜索引擎集群

在这里插入图片描述
搜索引擎集群后出现以下问题:

  • 搜索引擎的索引数据如何同步,实时增量还是定时全量?

7.缓存服务器

在这里插入图片描述
用户量是没有上限的,缓存、 限流、 降级。

注:架构到了第七版还不能算分布式架构,只能说是由多台服务器组成的高可用的架构。

8.数据库水平/垂直拆分

在这里插入图片描述
目前将数据库进行垂直拆分,还未进行数据库水平拆分(比如将订单表分库分表就属于水平拆分)。

9.应用服务器垂直拆分

在这里插入图片描述
以淘宝为例:

  • user.taobao.com
  • product.taobao.com
  • order.taobao.com

根据不同域名请求访问不同服务器,如果涉及到用户需要查询商品或订单,直接在用户服务器里写 DAO 层查询商品或订单数据库表。

问题:应用服务器交互调用问题。

10.SOA服务(分布式架构)

SOA(Service Oriented Architecture,面向服务的架构)是一种可通过服务接口复用软件组件的方法。
在这里插入图片描述
最后第十版就不是 Web 应用服务了,应用服务拆分为服务节点,属于 微服务 了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/492178.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

画了个 MSP430F149的最小系统板 开源出来了

使用MSP430F149单片机设计的一个最小系统板,包含晶振电路、复位电路、CH340串口和BSL下载电路、按键和LED电路等,使用了Type-C接口作为供电和串口通信,另外引出了JTAG接口,所有IO口都引出了。 板载了3个按键和LED,可以…

项目范围说明书如何编写?

范围说明书是一份定义了项目范围的所有要素以及假设、项目要求和验收标准的文件。项目范围说明书将作为主要工具,供利益相关者和团队成员参考,并作为准确衡量项目成功的准则。 项目范围说明书是范围管理计划的一部分,包含了管理项目范围的所…

百度智能云联合发布《雄安新区2022年大数据研究报告》

近日,百度智能云、百度研究院商业智能实验室联合发布《未来之城 雄姿初显——雄安新区2022年大数据研究报告》(以下简称《报告》),运用人工智能和大数据分析技术,全面呈现过去一年雄安新区在承接疏解、生态治理、城市建…

Golang当中的定时器

定时器 前言定时器的基本使用 前言 在平时写代码的时候,我们经常会遇到在将来某个时间点或者间隔一段时间重复执行函数。这个时候我们就可以考虑使用定时器。本片文章主要介绍一下golang当中的几个常用的定时器。time.Timer,time.Ticker,time.After以及time.AfterF…

文鼎创智能物联云原生容器化平台实践

作者:sekfung,深圳市文鼎创数据科技有限公司研发工程师,负责公司物联网终端平台的开发,稳定性建设,容器化上云工作,擅长使用 GO、Java 开发分布式系统,持续关注分布式,云原生等前沿技…

《安富莱嵌入式周报》第311期:300V可调节全隔离USB PD电源,开源交流负载分析仪,CANFD Trace,6位半多斜率精密ADC设计,开源数学库

周报汇总地址:嵌入式周报 - uCOS & uCGUI & emWin & embOS & TouchGFX & ThreadX - 硬汉嵌入式论坛 - Powered by Discuz! 视频版: https://www.bilibili.com/video/BV1Hh4y1H7dR 《安富莱嵌入式周报》第311期:300V可调…

【机器学习】决策树算法解读

【机器学习】决策树算法解读 文章目录 【机器学习】决策树算法解读1. 介绍1.1 优缺点1.2 结构1.3 学习过程1.4 决策树与条件概率分布 2. 决策树学习过程2.1 训练策略2.2 特征选择2.2.1 信息增益和条件熵 2.3 决策树的生成2.3.1 ID32.3.2 C4.52.3.3 CART2.3.4 小结 2.4 决策树的…

Nacos配置中心、配置热更新、及配置共享的记录

Nacos除了提供了注册中心的功能,同样也提供了配置中心的功能,用于管理一些叫常改动的配置 当微服务部署的实例越来越多,达到数十、数百时,逐个修改微服务配置就会让人抓狂,而且很容易出错。我们需要一种统一配置管理方案,可以集中…

计算时间复杂度详解

1,前置知识 我们在计算时间复杂度之前的前置知识是等差数列的通项公式和求和公式以及等比数 列的通项公式和求和公式 等差数列: 通项公式:ana1(n-1)d(d是公差) 求和公式:Snn(a1an)/2 等比数列&#xf…

【Python入门知识】NumPy数组拆分,超详细讲解

前言 嗨喽~大家好呀,这里是魔王呐 ❤ ~! 今天我们来学习python中NumPy数组的拆分 拆分 NumPy 数组 拆分是连接的反向操作。 连接(Joining)是将多个数组合并为一个,拆分(Spliting)将一个数组拆分为多个。…

Mysql 学习(七)独立表结构存储 二

段的结构 上一节说过表空间分为各个段,每个段里面又是以区为单位,每个区则有64个页。区根据剩余存储空间分为:Free,FREE_FRAG,FULL_FRAG 三种类型,为了方便管理区,给每个区创建XDES Entry结构&…

【校招VIP】用户反驳:你说大厂校招不会问框架实战,现在就有问的了,打脸了吧?一看是专业技能给自己挖的坑

最近有个用户过来质疑,不是说大厂不考框架的使用吗? 但网上的这两份面经里,却问到关于SpringBoot的问题。 接着发来了相对应的简历,一看,直接真相大白: 他在专业技能这栏写了:我熟练掌握Sprin…

flink内存参数配置学习

直接上官网 配置 JobManager 内存 | Apache Flink配置 JobManager 内存 # JobManager 是 Flink 集群的控制单元。 它由三种不同的组件组成:ResourceManager、Dispatcher 和每个正在运行作业的 JobMaster。 本篇文档将介绍 JobManager 内存在整体上以及细粒度…

自动驾驶中地图匹配定位技术总结

引言 汽车定位是让自动驾驶汽车知道自身确切位置的技术,在自动驾驶系统中担负着相当重要的职责。汽车定位涉及多种传感器类型和相关技术,主要可分为卫星定位、惯性导航定位、地图匹配定位以及多传感器融合定位几大类。其中地图匹配定位技术利用道路物理…

CSS绝对定位、相对定位

目录 静态定位 - static 相对定位 - relative 绝对定位 - absolute 固定定位 - fixed z-index属性: 在CSS中定位有以下4种: 静态定位 - static相对定位 - relative绝对定位 - absolute 固定定位 - fixed 静态定位 - static 静态定位是css中的默认定…

网络机顶盒哪个牌子好?资深数码粉分享网络电视机顶盒排名

智能电视配置跟不上经常死机卡顿,但显示正常的情况下不想花钱换电视机怎么办?一台网络机顶盒就可以解决你的烦恼,安装上网络机顶盒以后就可以让旧电视新生,那么你知道网络机顶盒哪个牌子好吗?如果不懂这行,…

【自然语言处理 | Transformer】Transformer:Attention is All You Need论文讲解

Transformer由论文《Attention is All You Need》提出: 论文地址为: https://arxiv.org/pdf/1706.03762.pdf文章目录 一、Transformer 整体结构二、Transformer 的输入2.1 单词 Embedding2.2 位置 Embedding 三、Self-Attention(自注意力机制…

.net7 通过 JsonTranscoding 实现 gRPC 与 Web API 一鱼两吃

目标 在一个网站内,用一套proto即提供gPRC 调用,又提供 Web API 调用。 实现方法 根据微软官方James Newton King(Newtonsoft.json 作者)的文章,.net7 里面提供了 JsonTranscoding 特性,只需要三步&#x…

听我一句劝,别去外包,干了6年,废了....

先说一下自己的情况,大专生,18年通过校招进入湖南某软件公司,干了接近6年的功能测试,今年年初,感觉自己不能够在这样下去了,长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了6年的功能测试&…

NANK OE骨传导开放式蓝牙耳机发布,极致体验拉满!

近日,中国专业音频品牌NANK南卡发布了全新一代——骨传导开放式蓝牙耳机NANK OE,耳机采用了传统真无线和骨传导的结合方式,带来更加舒适的佩戴体验和音质升级,同时还支持单双耳自由切换,全新的设计收获了市场的喜爱和认…