初识微服务

目录

[一、单体结构 VS 分布式结构](#一、单体结构 VS 分布式结构)

二、微服务简介


一、单体结构 VS 分布式结构

单体结构:将所有功能集中在一个项目开发,打包部署。

优点:架构简单,部署成本低;

缺点:耦合度较高。

分布式结构:根据业务功能的具体功能对系统进行拆分,每个业务模块作为独立的项目开发,称为一个服务。

优点:耦合度低,便于业务拓展。

缺点:架构复杂,运维、监控以及部署的难度大。

二、微服务简介

微服务是一种经过良好架构设计的分布式架构方案

微服务架构特征

  • 单一职责:微服务拆分粒度更小,每一个服务都对应唯一的业务能力,做到单一职责,避免重复业务开发;
  • 面向服务:微服务对外暴露业务接口;
  • 自治:团队独立、技术独立、数据独立、部署独立;
  • 隔离性强:服务调用做好隔离、容错、降级,避免出现级联问题。

微服务注意点

  1. 微服务需要根据业务模块拆分,做到单一职责,不要重复开发相同业务
  2. 微服务可以将业务暴露为接口,供其它微服务使用
  3. 不同微服务都应该有自己独立的数据库

微服务调用方式:基于RestTemplate发起的http请求实现远程调用,http请求做远程调用是与语言无关的调用,只要知道对方的ip、端口、接口路径、请求参数即可。

服务调用关系:

服务提供者:暴露接口给其它微服务调用

服务消费者:调用其它微服务提供的接口

提供者与消费者角色其实是相对的,一个服务可以同时是服务提供者和服务消费者

相关推荐
可莉丝婷17 分钟前
生物医药科研协作平台架构深度评测:十大技术选型指南
架构·系统架构模式·数据模型设计·api开放性·部署灵活性和合规工程能力
VortMall34 分钟前
全维度打磨细节体验,赋能商城稳定有序运营|VortMall 微服务商城 v1.3.11 版本发布
java·微服务·云原生·架构·商城系统·开源商城·vortmall
MicrosoftReactor38 分钟前
技术速递|智能体测试智能体:基于 Foundry Hosted Agents 构建云原生 Skill-Eval Harness
ai·云原生·agent·ai-agent·skill
阿标在干嘛9 小时前
从物理机到K8s:政策快报平台的容器化部署实践
云原生·容器·kubernetes
张青贤11 小时前
Centos7离线部署K8s集群V1.28.8
云原生·容器·kubernetes·containerd·kubekey·离线部署
卖买买卖12 小时前
美业收银系统对比分析:系统架构、功能深度与服务模型评估
架构·sass
wdfk_prog12 小时前
嵌入式面试真题第 15 题:不可恢复异常后的通用崩溃快照、调用栈保存与离线分析架构
linux·开发语言·面试·架构
阿里云云原生12 小时前
2026 GOAI 世界人工智能开源大赛「Agent Infra 新智基座」赛道正式启动
云原生
小小测试开发14 小时前
PromptFoo 源码分析与工程实战:LLM 测试框架的架构与最佳实践
人工智能·架构
葬送的代码人生14 小时前
别再让 AI 瞎写代码了!Vibe Coding 三步法教你写出靠谱代码
前端·设计模式·架构