java面试题:分布式和微服务的区别

1 分布式和微服务概念不同

微服务架构是架构设计方式,是设计层面的东西,一般考虑如何将系统从逻辑上进行拆分,也就是垂直拆分。

分布式系统是部署层面的东西,即强调物理层面的组成,即系统的各子系统部署在不同计算机上。

2 分布式和微服务含义不同

微服务架构是一种将一个单一应用程序开发为,一组小型服务的方法,每个服务运行在自己的进程中。微服务是指很小的服务,可以小到只完成一个功能,这个服务可以单独部署运行,不同服务之间通过rpc调用。

分布式系统是若干独立计算机的集合,这些计算机对用户来说就像单个相关系统。一个系统可以提供一个或多个功能,服务之间也是通过rpc来交互或者是webservice来交互的。

3 分布式和微服务解决问题视角不同

微服务架构解决的是如何将一个大型应用程席划分成多个微服务的问题;侧重于模块解耦和复用,微服务是使系统各个功能拆分更加精细和独立的垂直拓展。

分布式架构解决的是如何将一个大的系统划分为多个业务模块这些业务模块会分别部署到不同的机器上,通过接口进行数据交互的问题。分布式主要用来解决网站高并发带来问题,比如:不同块部署在不同服务器上,对系统的水平拓展,分散单个服务器压力增加系统吞吐量。

4 分布式和微服务部署方式不同

微服务架构的应用可以部署在是同一个服务器,不一定是分散在多个服务器上。

分布式架构是将一个大的系统划分为多个业务模块,这些业务模块会分别部署到不同的机器上,通过接口进行数据交互。

5 分布式和微服务耦合度不同

微服务架构的各个服务是解耦的,每个服务都可以独立地运行和更新,而不影响其他服务。

分布式架构的各个计算机之间可能会有依赖关系,需要通过接口进行通信和数据交互,以保证系统的正常运行。

总结起来,微服务架构和分布式架构在上述五个方面存在明显的差异。微服务架构更侧重于服务的拆分和独立部署,而分布式架构更侧重于不同计算机的协同。

相关推荐
pofenx25 分钟前
记录idea可以运行但是maven install打包却找不到问题
java·maven·intellij-idea
小布不吃竹33 分钟前
Maven进阶
java·maven
素雪风华43 分钟前
服务容错治理框架resilience4j&sentinel基础应用---微服务的限流/熔断/降级解决方案
java·微服务·sentinel·springboot·服务容错·resilience
_Jyuan_1 小时前
Android Studio-相对布局(私人笔记)
android·java·ide·经验分享·笔记·android studio
wuyunhang1234561 小时前
Spring AOP概念及其实现
java·后端·spring
不思念一个荒废的名字2 小时前
【黑马JavaWeb+AI知识梳理】后端Web基础01 - Maven
java·前端·maven
福理原乡大王2 小时前
进程地址空间
java·开发语言·算法
南客先生2 小时前
音视频项目在微服务领域的趋势场景题深度解析
java·微服务·面试·性能优化·音视频·高并发
xcLeigh3 小时前
HTML5好看的水果蔬菜在线商城网站源码系列模板8
java·前端·html5
Alsn863 小时前
11.Spring Boot 3.1.5 中使用 SpringDoc OpenAPI(替代 Swagger)生成 API 文档
java·spring boot·后端