服务器集群,负载均衡,分布式等问题

服务器集群,负载均衡,分布式等问题,第1张

什么是微服务?

微服务(Microservices Architecture)是一种架构风格,一个大型复杂软件应用由一个或多个微服务组成。系统中的各个微服务可被独立部署,各个微服务之间是松耦合的。每个微服务仅关注于完成一件任务并很好地完成该任务。在所有情况下,每个任务代表着一个小的业务能力。

微服务的概念源于2014年3月Martin Fowler所写的文章“Microservices” martinfowlercom/articles/mi…

单体架构(Monolithic Architecture )

企业级的应用一般都会面临各种各样的业务需求,而常见的方式是把大量功能堆积到同一个单体架构中去。比如:常见的ERP、CRM等系统都以单体架构的方式运行,同时由于提供了大量的业务功能,随着功能的升级,整个研发、发布、定位问题,扩展,升级这样一个“怪物”系统会变得越来越困难。

这种架构模式就是把应用整体打包部署,具体的样式依赖本身应用采用的语言,如果采用java语言,自然你会打包成war包,部署在Tomcat或者Jetty这样的应用服务器上,如果你使用spring boot还可以打包成jar包部署。其他还有Rails和Nodejs应用以目录层次的形式打包

上图:单体架构

大部分企业通过SOA来解决上述问题,SOA的思路是把应用中相近的功能聚合到一起,以服务的形式提供出去。因此基于SOA架构的应用可以理解为一批服务的组合。SOA带来的问题是,引入了大量的服务、消息格式定义和规范。

多数情况下,SOA的服务直接相互独立,但是部署在同一个运行环境中(类似于一个Tomcat实例下,运行了很多web应用)。和单体架构类似,随着业务功能的增多SOA的服务会变得越来越复杂,本质上看没有因为使用SOA而变的更好。图1,是一个包含多种服务的在线零售网站,所有的服务部署在一个运行环境中,是一个典型的单体架构。

单体架构的应用一般有以下特点:

微服务架构(Microservices Architecture)

微服务架构的核心思想是,一个应用是由多个小的、相互独立的、微服务组成,这些服务运行在自己的进程中,开发和发布都没有依赖。不同服务通过一些轻量级交互机制来通信,例如 RPC、>处理机中概念:
处理机之间连接的紧密程度,可用处理机之间的距离及相互连接的信号线数目表示计算机网络与多机系统在耦合程度上有明显差别:多机系统是紧耦合系统,计算机网络属于松耦合系统。
紧耦合多机系统又称为直接耦合系统,是指各处理机之间通过互联网共享内存。紧耦合多机系统由P台处理机、m个存储器模块、d个I/O通道和3个互联网网络构成。处理机-存储器网络实现处理机与各存储模块的连接。处理机中断信号网络实现多处理机之间的互联。处理机-I/O互联网络实现处理机与外设的连接。每个处理机可自带局部存储器,也可自带cache。存储器模块可采用流水工作方式。紧耦合多机系统多用于并行作业中的多任务,一般处理机是同构的。SMP(symmetrical multi-processing)属于紧耦合多机系统。
松耦合多机系统又称为间接耦合系统,是指各处理机间通过共享I/O子系统、通道或通信线路实现机间通信,不共享内存。松耦合多处理机由P个处理机、1个通道、1个仲裁开关和消息传送系统构成。每个处理机带有一个局部存储器和一组I/O设备。在仲裁开关的通道中有高速通信存储,用来缓冲传送的信息块。松散耦合多处理机适合粗粒度的并行计算。MPP(massive parallel processing)属于松耦合多机系统

软件设计中概念:

基本概念:
软件设计中通常用耦合度和内聚度作为衡量模块独立程度的标准。划分摸块的一个准则就是高内聚低耦合。
耦合度(Coupling)是对模块间关联程度的度量。耦合的强弱取决与模块间接口的复杂性、调用模块的方式以及通过界面传送数据的多少。
模块间的耦合度是指模块之间的依赖关系,包括控制关系、调用关系、数据传递关系。模块间联系越多,其耦合性越强,同时表明其独立性越差。
降低模块间的耦合度能减少模块间的影响,防止对某一模块修改所引起的“牵一发动全身”的水波效应,保证系统设计顺利进行。
内聚和耦合密切相关,同其它模块存在强耦合关系的模块常意味这弱内聚,强内聚常意味着弱耦合。

等级划分:
耦合度可分为七级。
a)非直接耦合:
两模块间没有直接关系,之间的联系完全是通过主模块的控制和调用来实现的
b)数据耦合:
一个模块访问另一模块,彼此间通过简单数据参数来交换输入、输出信息。这里的简单数据参数不同于控制参数、公共数据结构或外部变量。
c)标记耦合:
如一组模块通过参数表传递记录信息,就是标记耦合。这个记录是某一数据结构的子结构,不是简单变量。
d)控制耦合:
一个模块通过传递开关、标志、名字等控制信息,明显的控制选择另一模块的功能
e)外部耦合:
一组模块都访问同一全局简单变量而不是同一全局数据结构,而且不是通过参数传递该全局变量的信息
f)公共耦合:
一组模块都访问同一个公共数据环境。该公共数据环境可以是全局数据结构、共享的通信区、内存的公共覆盖区等。
g)内容耦合:
一个模块直接修改另一个模块的数据,或直接转入另一个模块
内聚度是指内部各元素之间联系的紧密程度,模块的内聚种类通常可分为7种,按其内聚度从低到高的次序依此为:偶然内聚、逻辑内聚、瞬时内聚、过程内聚、通信内聚、顺序内聚、功能内聚。
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
计算机网络中每台电脑都是独立的,同等重要的
分布式计算机系统中有主电脑和终端之分
算机网络是指将有独立功能的多台计算机,通过通信设备线路连接起来,在网络软件的支持下,实现彼此之间资源共享和数据通信的整个系统。
02、计算机网络的基本功能是什么?
计算机网络的基本功能是数据通信和资源共享。
03、资源共享主要是指哪些资源?
资源共享包括硬件、软件和数据资源的共享。
04、计算机网络根据其覆盖范围可分为哪三类?
计算机网络根据其覆盖范围可分为局域网、城域网和广域网。
05、学校的校园网应该属于(4)所说的哪一类?
校园网属于局域网。
06、基于服务器的网络与对等网有何区别?
基于服务器的网络中由服务器来管理网络,并为网络用户提供共享服务,而在对等网中没有专用服务器,网络中的每台计算机即作为一台非专业服务器管理自己的资源和用户,为其他计算机提供软硬件资源的共享服务。同时又可作为客户机共享其他计算机的资源。
07、服务器在网络中的作用是什么?
服务器在网络中的主要作用是管理网络,为网络用户提供共享资源。
08、Internet可以为我们提供哪些服务?
Internet可以为我们提供多种服务如,电子邮件、文件传输、信息查询、网上新闻、各种论坛和电子商务等。
09、什么是因特网上的IP地址?
IP地址是计算机在因特网上的惟一标识。
10、IP地址通常是如何表示的?
IP地址由32位二进制数组成,写成4组十进制数,每组之间有圆点隔开。
分布式计算机系统的特点:无主从区分;计算机之间交换信息;资源共享;相互协作完成一个共同任务
分布式计算机系统的功能:通信结构;网络 *** 作系统;分布式 *** 作系统(透明性)
分布式系统的优点:
集中式系统的特点
分布的需求
分布式系统的优点:方便使用;强壮性和可靠性;资源共享;可扩性;最终用户的生产效率;维护方便
与单机 *** 作系统的区别在进程通信、资源管理和系统结构等方面
进程通信
与单机的不同处:不共享内存;可靠性低;通信的实现方式取决于通信设施
通信协议:语义、语法、定时
资源管理
与单机的不同处:多管理者管同一类资源
管理方式:
分布式集中式:一个类中可以有多个资源,但每个资源本身还是由单个管理者管理。
完全分布式:每个资源都可以由多个管理者管理。
系统结构
每台计算机有自己的内核和功能模块
不同计算机上可有不同的,也可有相同功能模块(副本)
大多资源用分布集中式管理;多机共享资源用完全分布式管理


欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/zz/13470082.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-08-13
下一篇 2023-08-13

发表评论

登录后才能评论

评论列表(0条)

保存