微服务要面临的问题

微服务是将原来独立系统拆分成多个小的、独立进程运行的小服务单元,服务单元之间通过RPC或HTTP协议来相互通信协作。每个独立的服务内部都有自己的数据存储、业务逻辑、运维部署机制。

我们在享受微服务化后带来的灵活、便利、扩展性同时,对我们的运维和服务治理也提出了新的挑战。从早先单体应用的代码依赖变成了通信依赖。同时还要考虑网络延迟、分布式事务、异步消息等问题。

在将单体应用微服务化时我们先要从大的方面梳理出一个系统包含哪些功能,然后找出最核心的功能,再对这些核心功能梳理出主要的流程,并明确流程上的各个节点,并找出每个节点的强依赖和弱依赖。强依赖不可降级必须要有灾备方案。

原文地址:https://www.cnblogs.com/doit8791/p/9280115.html

时间: 2024-10-31 13:29:46

微服务要面临的问题的相关文章

Spring Cloud微服务安全实战_4-1_微服务网关安全_概述&微服务安全面临的挑战

  第四章  网关安全 这一章从简单的API的场景过渡到复杂的微服务的场景 4.1 概述 微服务安全面临的挑战:介绍中小企业的一个微服务架构,相比第三章的单体应用的简单的API所面临的哪些挑战 OAuth2协议与微服务安全:介绍OAuth2中的各个角色,以及相互之间的关系,介绍具体的代码实现 微服务网关安全:搭建网关,安全中心,两个微服务,怎么将安全从微服务中解耦出来放到网关上,与OAuth协议联系起来解决微服务安全面临的新的挑战. 4.2 微服务安全面临的挑战  更多的入口点,更高的安全风险

网关安全(一)-微服务安全面临的挑战及常见架构

1.微服务安全面临的挑战 在微服务的架构下,对比单体应用架构的API安全有哪些新的挑战呢? 1.1.更多的入口点,更高的安全风险 单体应用的场景下,入口点只有一个,所有的请求都会从这个入口点进来,在这个入口点去建立一组Filter或者Interceptor,就可以控制所有的风险. 微服务场景下,业务逻辑不是在一个单一的进程里,而是分散在很多的进程里.每一个进程都有自己的入口点,这就会导致防范的攻击面,比原来大得多,风险也会高的多. 1.2.性能问题 单体应用的场景下,所有的业务逻辑都在同一个进程

面向服务与微服务架构

背景 最近阅读了 Martin Fowler 和 James Lewis 合著的一篇文章 Microservices, 文中主要描述和探讨了最近流行起来的一种服务架构模式--微服务,和我最近几年工作的实践比较相关感觉深受启发.本文吸收了部分原文观点,结合自身实践经验来探讨下服务架构模式的演化. 面向服务架构(SOA) 面向服务架构 SOA 思想概念的提出已不是什么新鲜事,大概在10年前就有不少相关书籍介绍过.当时 java 企业应用领域 J2EE 依然是主流,应用程序被部署在庞大统一的符合 J2

鹰眼跟踪、限流降级,EDAS的微服务解决之道

本文主要从服务化的起源开始讲起,围绕EDAS介绍这些年来,随着阿里庞大的电商技术平台流量和并发不断攀升过程中,中间件的微服务技术面临的一系列挑战及解决方法.同时,也会向读者介绍历次双十一背后,EDAS服务化技术的演进历程. 服务化的起源 微服务的解决之道 海量微服务的挑战 关于作者 以下为精彩内容整理: 服务化的起源 阿里巴巴前期技术现状 当时阿里巴巴技术团队规模有500人左右,整个技术网站使用单一War应用,基于传统应用开发架构,业务每年翻倍增长. 我们面临着非常多的问题: 上百人维护一个核心

《Spring Cloud与Docker微服务架构实战》配套代码

不才写了本使用Spring Cloud玩转微服务架构的书,书名是<Spring Cloud与Docker微服务架构实战> - 周立,已于2017-01-12交稿.不少朋友想先看看源码,现将代码放出. 本次放出的代码: 共计70+个DEMO 覆盖Eureka.Ribbon.Feign.Hystrix.Zuul.Spring Cloud Config.Spring Cloud Bus.Spring Cloud Sleuth.Docker.Docker Compose等. 1-11章代码地址: ht

1.微服务架构概述

                                          微服务架构概述 1.0单体架构是什么?         一个归档包包含了应用所有功能的应用程序, 我们通常称之为单体应用. 架构单体应用的架构风格, 我们称之为单体架构, 这是一种比较传统的架构风格. 1.1. 单体应用架构存在的问题 复杂性逐渐变高 技术债务逐渐上升 部署速度逐渐变慢 阻碍技术创新 无法按需伸缩 1.2. 如何解决单体应用架构存在的问题 1.3. 什么是微服务 Martin Fowler:简而言

Java从单体到微服务打造房产销售平台

第1章 课程介绍本章从整体上介绍课程有什么收获,以及课程如何安排,其中包括微服务的两个不同学习阶段--单体开发阶段(基于SpringBoot)和微服务改造阶段(基于SpringCloud),知识点梳理&问答:https://www.imooc.com/article/234081-1 课程导学 第2章 单体架构之项目概要设计&数据表设计本章会带着大家对房产销售平台一功能.模型.流程三个方面进行需求分析,之后我们将抽取出项目中的功能模型,分析功能模型之间的关联关系,同时在本章我们会对房产销售

微服务基础概念认知总结

由于从未使用过Spring Cloud.Dubbo等微服务框架,所以只能不断地从微服务基础知识出发,不让自己局限于某一种工具框架上.以下知识摘自一些自己看过的微服务相关的书上,还有一些自己对微服务的理解. 单体应用存在的问题 复杂性高 单体应用项目包含的模块非常多.模块的边界模糊.依赖关系不清楚.代码质量层次不齐.混乱地堆砌在一起.每次修复BUG或者新增功能,涉及的部分比较多,存在着隐含的缺陷,有可能一小部分的改变会影响到其他功能. 技术债务 虽然时间的推移.需求变更和人员的更迭,会逐渐形成应用

2019年必须掌握的29个微服务面试问题(含答案解析)

这29个微服务面试题基本涵盖了方方面,希望对你有所帮助! 一.什么是Spring Cloud? 在微服务中,SpringCloud是一个提供与外部系统集成的系统.它是一个敏捷的框架,可以短平快构建应用程序.与有限数量的数据处理相关联,它在微服务体系结构中起着非常重要的作用.以下为 Spring Cloud 的核心特性: 版本化/分布式配置. 服务注册和发现. 服务和服务之间的调用. 路由. 断路器和负载平衡. 分布式消息传递. 二.什么是Spring Boot? Spring boot是微服务面