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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

相关推荐
LKAI.29 分钟前
传统方式部署(RuoYi-Cloud)微服务
java·linux·前端·后端·微服务·node.js·ruoyi
天上掉下来个程小白29 分钟前
微服务-02.认识微服务-单体架构
微服务·云原生·架构
HeyZoeHey30 分钟前
Mybatis执行sql流程(一)
java·sql·mybatis
nshkfhwr32 分钟前
什么是微服务
微服务·云原生·架构·云计算·集群
2301_7930868734 分钟前
SpringCloud 07 微服务网关
java·spring cloud·微服务
forestsea37 分钟前
微服务远程调用完全透传实现:响应式与非响应式解决方案
微服务·云原生·架构
柳贯一(逆流河版)2 小时前
Spring 三级缓存:破解循环依赖的底层密码
java·spring·缓存·bean的循环依赖
维尔切2 小时前
Linux中基于Centos7使用lamp架构搭建个人论坛(wordpress)
linux·运维·架构
tan77º3 小时前
【项目】分布式Json-RPC框架 - 项目介绍与前置知识准备
linux·网络·分布式·网络协议·tcp/ip·rpc·json
知白守黑2673 小时前
lamp架构部署wordpress
架构