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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

相关推荐
程序员云帆哥1 分钟前
告别Swagger!Spring Boot集成Smart-Doc自动生成API文档
java·接口文档·api文档
GIOTTO情1 分钟前
技术深度:Infoseek 媒体发布系统的微服务架构与二次开发实战
微服务·架构·媒体
222you2 分钟前
SpringIOC的注解开发
java·开发语言
hgz07104 分钟前
Spring Boot、Spring MVC、Spring 三者核心区别
java
拾忆,想起11 分钟前
Dubbo深度解析:从零到一,高性能RPC框架如何重塑微服务架构
网络协议·微服务·云原生·性能优化·rpc·架构·dubbo
god0011 分钟前
Selenium等待判断元素页面加载完成
java·开发语言
CoderYanger19 分钟前
贪心算法:3.最大数
java·算法·leetcode·贪心算法·1024程序员节
爱学习的小可爱卢23 分钟前
JavaEE进阶——MyBatis-Plus新手完全攻略
java·mybatis-plus
码界奇点24 分钟前
Java Web学习 第15篇jQuery万字长文详解从入门到实战解锁前端交互新境界
java·前端·学习·jquery
CoderYanger25 分钟前
贪心算法:5.最长递增子序列
java·算法·leetcode·贪心算法·1024程序员节