什么是微服务

简介: 什么是微服务

一、微服务的定义


微服务架构风格是一种将单个应用程序开发为一组小型服务的方法,每个小服务运行在自己的进程中,并且以轻量级机制(通常是HTTP REST API)通信。这些服务是围绕业务能力建立的,并且可以由完全自动化的部署机构独立部署。这些服务的集中管理只有最低限度,可以用不同的编程语言编写并使用不同的数据存储技术。


二、微服务与SOA



SOA(Service-Oriented Architecture,面向服务架构)

SOA的核心是通过ESB(企业消息总线)构建更可靠的软件系统

SOA的代表工具:Dubbo\Dubbox\Mule\CXF


image.png


ESB企业消息总线


三、微服务与SOA的区别



MS可独立运行,SOA不可以

应用规模不同,SOA着眼企业应用,MS适用互联网

通信协议不同,MS基于Http Restful,SOA基于BPEL/WebService等不同标准

MS更轻量,SOA更重量


四、微服务缺点



思想观念的转变 - 强调快速迭代,对产品规划提出更高要求

团队协作改变 - 按业务分组,每个团队只负责独立的微服务

自动化基础建设 - 提高了测试与运维的工作量,需要借助工具

传统应用转型难 - 尽量避免将库存项目强行向微服务靠拢

成本的提高 - 更多的人力成本,更高的采购成本



相关文章
|
Web App开发 监控 Kubernetes
容器技术入门3:chaos混沌工程
参加冬季实战营第四期:零基础容器技术实战。参加学习一下,教程很好,做笔记记录一下。本文记录冬季实战营第四期:零基础容器技术实战动手实战-Chaos带你快速上手混沌工程。
1989 0
容器技术入门3:chaos混沌工程
|
人工智能 算法 决策智能
【五子棋实战】第2章 博弈树负值极大alpha-beta剪枝算法(一)
市面上比较常用的五子棋算法是博弈树极大极小值alpha-beta剪枝算法,该算法可以分成四个部分来讲解,它们是环环相扣的:博弈树 - 极大极小值搜索 - 负值极大法 - alpha&beta剪枝 。
1641 0
|
负载均衡 Cloud Native Java
【秒懂·云原生】微服务篇 —— 微服务究竟是什么?
【秒懂·云原生】微服务篇 —— 微服务究竟是什么?
3281 0
【秒懂·云原生】微服务篇 —— 微服务究竟是什么?
|
10月前
|
监控 安全 Nacos
《服务治理》配置中心:微服务架构的"中央控制台"
配置中心是微服务架构的核心组件,实现配置集中化、动态更新、环境隔离与版本控制。通过Nacos等工具,支持实时推送、加密管理、灰度发布及多环境治理,提升系统灵活性与可靠性,是分布式系统不可或缺的基础设施。
|
7月前
|
运维 安全 数据可视化
Nacos 生产级安全实践:精细化鉴权、灰度平滑过渡与全量操作审计
在保障安全性的同时,提供平滑的过渡和直观的可视化能力。
369 63
如何查看自己电脑的windows系统版本?
这篇文章提供了一种简单快捷的方法来查看自己电脑的Windows系统版本,通过使用Windows的"运行"功能并输入`winver`命令来快速获取系统版本信息。
如何查看自己电脑的windows系统版本?
|
Java 测试技术 API
从一起知名线上故障,谈配置灰度发布的重要性
一起知名线上故障:一个新功能在没有经过充分测试和灰度发布的情况下被直接部署到生产环境,并且处理推送关键配置没有灰度过程。导致全球大规模服务中断约7小时。故障由空指针异常引发,暴露了错误处理不足和灰度机制缺失等问题。配置灰度发布,如Nacos支持的IP或标签灰度,可有效降低风险,提升系统稳定性。
|
12月前
|
Python
Python音频特征-梅尔滤波器
梅尔滤波器组是一种基于梅尔刻度的三角滤波器组,常用于音频信号处理。其构建步骤包括:获取梅尔刻度的范围、生成梅尔刻度序列、构建三角滤波器组并进行归一化处理。梅尔刻度反映了人耳对频率的感知特性,能更有效地表示音频特征。
492 0
|
前端开发 JavaScript API
带你入门前端工程(十一):微前端(上)
带你入门前端工程(十一):微前端
381 0
|
Kubernetes 负载均衡 Docker
构建高效微服务架构:Docker与Kubernetes的完美搭档
【10月更文挑战第22天】随着云计算和容器技术的快速发展,微服务架构逐渐成为现代企业级应用的首选架构。微服务架构将一个大型应用程序拆分为多个小型、独立的服务,每个服务负责完成一个特定的功能。这种架构具有灵活性、可扩展性和易于维护的特点。在构建微服务架构时,Docker和Kubernetes是两个不可或缺的工具,它们可以完美搭档,为微服务架构提供高效的支持。本文将从三个方面探讨Docker和Kubernetes在构建高效微服务架构中的应用:一是Docker和Kubernetes的基本概念;二是它们在微服务架构中的作用;三是通过实例讲解如何使用Docker和Kubernetes构建微服务架构。
358 6