最新SpringCloud Alibaba实战开发
文章平均质量分 95
采用全套SpringCloudAlibaba组件开发,从需求到运维,一步一步上手微服务实战,提高动手能力
主要包含Nacos、Sentinel、RocketMQ、Seata、SMS、Dubbo 、SpringCloud、Gateway、Slueth、ELK、Docker等技术的使用,全面覆盖技术点。
江湖一点雨
本来想把收费专栏限时转为免费,给大家一波回归福利,结果官方不支持。收费专栏限时最低价好了~
展开
-
SpringCloud-Alibaba微服务架构实战教程—26构建通用型短信服务
随着手机实名制的推广,不管什么样的系统,都基本上要求手机号码注册、验证、绑定等等,这些商家拿到你的电话同时,就会给你发送不少的短信,或营销、或活动、或验证码、或报警通知等等。总之,这一切,都需要一个功能——就是发送手机短信!那么如何实现一个通用型的手机短信功能呢?在笔者以前的一些文章中,就已经说过如何开发一个手机短信发送的功能,采用腾讯云SDK+redis完成,今天在将它融入到我们的项目中。好了,废话不多说,开始今天我们的任务。原创 2021-07-08 13:52:23 · 841 阅读 · 0 评论 -
SpringCloud-Alibaba微服务架构实战教程—34项目完结与源码分享·
亲爱的读者朋友,如果你能够读到这里,相信你已经将本课程全部学完。整个系列文章,可谓是图文并茂,长达30万字(后来统计远远不止),200多M的代码,可谓细节到极点,基本囊括了微服务架构中常用技能点,全面覆盖微服务中各种问题,以及解决方案,每篇都建立了小课堂,不管对新手、初中级开发来说,都是一个字,绝!今天,我们就一起回顾一下整个课程体系。【项目背景】原创 2021-07-12 16:28:51 · 1252 阅读 · 0 评论 -
SpringCloud-Alibaba微服务架构实战教程—33微服务下多模块的打包发布
前言关于微服务下多模块的打包,就是 Maven项目多模块的打包。在微服务开发下,项目的多个模块按其各自的功能分割出来,又相互依赖的情况下进行打包部署方式,那么这个方式该怎么办呢?今天,就来说一说,微服务下,多模块的项目如何打包。一、微服务多模块的部署方式第一种方式:linux后台运行jar使用传统的服务器,直接运行jar的形式运行代码。linux中后台运行jar包免中文编码启动:java -Dfile.encoding=utf-8 -jar xxx.jar让jar运行后一直在后台运行方法原创 2021-07-12 15:37:03 · 916 阅读 · 2 评论 -
SpringCloud-Alibaba微服务架构实战教程—32代码的版本控制
前言经过这么多节的内容,实际上如果是多人开发,我们一开始就该对项目版本进行管控。本次就说一下,使用Git同时将本地代码上传到github和码云管控。我们需要采用git来进行版本控制,同时将本地代码上传到github和gitee仓库。还推荐安装 Sourcetree 软件更好的控制版本和提交代码。至于分布式git 和集中式 svn版本控制的区别,这个不多说了,懂得都懂。一、git的安装和使用这里自行百度即可,就是下载个软件,安装一下。下载地址:https://git-scm.com/down原创 2021-07-12 14:36:27 · 479 阅读 · 0 评论 -
SpringCloud-Alibaba微服务架构实战教程—31通俗说分布式链路追踪
前言在 30系统监控中心 一文中,我们采用搭建Spring Boot Admin监控中心的方式,来对服务的微服务进行资源方面的监控,但是当线上程序方面发生错误和异常时,难道我们要自己在本地跑代码来挨个debug来定位吗?这显然是费时费力的。所以,今天我们需要在景停系统中,加入一个新的功能,就是以微服务架构下对请求的链路追踪,让程序去自动定位异常点。按照我话痨的风格,本篇依旧是理论 + 实践相结合,请读者自行选择。一、为什么会有链路追踪?一个请求会调用多个服务,整个请求就会形成一个调用链,所以我们原创 2021-07-12 13:10:16 · 1117 阅读 · 0 评论 -
SpringCloud-Alibaba微服务架构实战教程—30微服务的系统监控中心
前言在上一篇,我们采用Java JDK 自带的性能监控小工具jvisualvm,来查看应用的运行状况。但是毕竟是个小家伙,当我们的程序部署到服务器上时,也不方便采用这种小工具来监控。因此,今天我们要使用,另外的方式,一个来自于springboot早期的系统健康监控工具。根据它,可以通过api查看到系统应用当前的健康状态,然后在介绍它的升级版。一、actuator初代系统健康监控工具全称 Spring Boot Actuator,一句话表述:它是springboot的一款监控系统健康状况的工具。原创 2021-07-09 18:26:05 · 365 阅读 · 0 评论 -
SpringCloud-Alibaba微服务架构实战教程—29微服务压测、性能监控与调优
前言经过前面的二十几篇文章,我们已经建立了很多模块,也写了很多接口。那么这些接口和微服务,到底有多大的承受能力呢?这就是今天我们要说的主题,关于微服务的性能压力测试。今天,就简单教大家关于微服务的压测、性能监控与调优。一、什么是性能压力测试?性能压测是什么:就是考察当前软件和硬件环境下,系统所能承受的最大负荷,并帮助找出系统的瓶颈所在。性能压测的目的:为了系统在线上的处理能力和稳定性维持在一个标准范围内,做到知己知彼,百战不殆。还可以发现内存泄漏、并发与同步的问题。性能测试关注点:原创 2021-07-09 15:52:49 · 607 阅读 · 0 评论 -
SpringCloud-Alibaba微服务架构实战教程—28分布式文件上传与对象存储
前言文件上传在系统中使用非常频繁,将上传的文件进行存储。以前传统的将文件上传到本机已不适用于分布式系统下,速度慢,占用资源多。自己搭建文件服务器有复杂性和维护成本。所以今天,准备教大家可以采用市面上成熟的文件存储服务,如阿里云的OSS对象存储服务,来完成文件上传功能。一、传统的OSS上传方式在以前,Web 端常见的上传方法是用户在浏览器或 APP 端上传文件到应用服务器,然后应用服务器再把文件上传到 OSS。流程如下:和数据直传到 OSS 相比,以上方法有三个缺点:上传慢:用户数据原创 2021-07-08 18:41:14 · 496 阅读 · 0 评论 -
SpringCloud-Alibaba微服务架构实战教程—27分布式中的定时任务
前言论在实际的开发中特别常见的功能,那么定时任务肯定榜上有名。因为在系统的使用中,经常会有需求,定时定量的去做某件事请,完成某个功能,遇到这种情况,自然就需要使用定时任务来处理了。所以,今天的需求任务是,要开发一个定时任务,用来定时完成某些事。一、Cron定时表达式在使用java中开发定时任务功能,离不开一个表达式。——Crontab表达式。Cron表达式,它是一个字符串,包含五个到七个由空格分隔的字段(每种软件不一样),表示一组时间,通常作为执行某个程序的时间表。比如:设置每5秒执行一原创 2021-07-08 15:30:36 · 1428 阅读 · 3 评论 -
SpringCloud-Alibaba微服务架构实战教程—25请求重复提交与数据库防重设计
前言用户连续快速点击某个提交按钮,前端没有针对性处理,就会导致连续发送多次请求,假如一次命中服务器A上微服务,另一次命中服务器B上的微服务, 那么就会生成了两个内容完全相同的记录数据,只是 id号不同而已,这样数据库也出现了脏数据。对于这样的现象,可以说是非常常见。那么在分布式系统中如何防止用户的重复提交操作?——我们需要做一定的防止重复提交和数据防重处理。今天就来简单的说下,在系统中如何防止重复提交和对数据库进行防重处理。一、重复提交解决思路思路:相同的请求在同一时间只能被处理一次。如原创 2021-07-08 11:10:39 · 1103 阅读 · 0 评论 -
SpringCloud-Alibaba微服务架构实战教程—24Gateway聚合knife4j文档
前言在Spring Cloud的微服务架构下,在我们之前的代码实现,07集成knife4j生成Api文档 中,是每个微服务都去引入了它,然后有自己的接口文档地址。像这样,总不能每个模块单独集成一个把?当有很多个模块的时候,是不是相应的也就产生了很多的地址呢?怎么解决这种问题呢?实际上,并不需要每一个项目都弄一个文档,根据网关成为了统一的服务接口的入口经验来看,我们也可以把文档,全部集成到一起,直接在网关一个地址就可以打开不同服务的接口文档,这样就可以更好的管理和使用了。所以,本章介绍微服务使用原创 2021-07-07 17:32:04 · 1478 阅读 · 0 评论 -
SpringCloud-Alibaba微服务架构实战教程—23JWT认证中心和cookie跨域共享方案
前言参考地址:https://gitee.com/soap9299/Authenticate/blob/master/doc/9.%E5%8D%95%E7%82%B9%E7%99%BB%E5%BD%95%EF%BC%88jwt%EF%BC%89/%E5%8D%95%E7%82%B9%E7%99%BB%E5%BD%95%EF%BC%88jwt%EF%BC%89.md登录鉴权JWT,全称是Json Web Token, 是JSON风格轻量级的授权和身份认证规范,可实现无状态、分布式的Web应用授权;官网:原创 2021-07-07 15:39:34 · 732 阅读 · 0 评论 -
SpringCloud-Alibaba微服务架构实战教程—22Dubbo与SpringCloud集成调用
前言在最初的微服务架构下,dubbo是大多数公司的选择,后来出现的springcloud,又让一些公司使用,面临老项目中采用的dubbo,如何结合springcloud呢?基于这样的问题,Spring Cloud Alibaba 推出的组件,可以使Spring Cloud 与 Dubbo 项目轻松的融合在一起,在SpringCloud项目和Dubbo项目之间互相调用。一、Dubbo(RPC框架)Dubbo是一个高性能、轻量级的开源Java RPC框架,在国内使用相当广泛。目前,dubbo生态不在断原创 2021-07-06 17:49:20 · 694 阅读 · 0 评论 -
SpringCloud-Alibaba微服务架构实战教程—21分布式事务解决方案
前言使用过电脑的不少朋友,基本上都会遇见一种情况,就是用着好好的电脑,突然一闪,就出现了满屏幕蓝字,让人抓狂。面对这种情况,我们往往会采用一个回退的解决方案,比如说,返回到上一次正确的配置。实际上,这也是一种回退操作,目的就是把系统调整到发生错误操作之前的状态。那么对于软件开发而言,也常常会遇到这样的情况,当执行业务到一定阶段,程序发生了异常,但是数据库已经产生了数据,此时,我们该如何处理让程序恢复到原来的样子呢?这就是今天要说的主角了——事务。一、怎么理解事务?事务可以简单理解为:要么一原创 2021-07-06 16:15:57 · 224 阅读 · 0 评论 -
SpringCloud-Alibaba微服务架构实战教程—20RocketMQ消息队列的使用
前言今天的主体,是消息队列的使用,在开始之前,就简单的说明几个要点问题,这样避免读者疑惑,消息队列是个很大的东西,不是三言两语就可以说清楚的,所以本文只选了部分要点进行简单的说明。有不足或者偏颇之处,望读者知悉。什么是消息队列?消息队列是指利用高效可靠的消息传递机制进行与平台无关的数据交流。为什么需要消息队列?首先,从系统之间要求有通信需求开始,就产生了消息队列的需要。其次,由于在高并发环境下,服务往往来不及同步处理大量请求,请求就会发生阻塞,比如说,大量的insert,update之原创 2021-07-06 12:28:39 · 340 阅读 · 1 评论 -
SpringCloud-Alibaba微服务架构实战教程—19分布式锁的大白话讲解
前言根据上一篇,18完善核心模块之后,我们对几个微服务模块进行了一定的完善,后续会继续增加方法。今天的话题,是另外一个知识点,一个在分布式下,必不可少的一个技术,就是分布式锁了。为什么需要分布式锁?在之前的文章中,我们采用了17分布式缓存redis设计,正是利用缓存,来提高系统的响应速度,但是同时,我们也提及到,使用缓存,在高并发下会带来的缓存穿透、雪崩、击穿的问题。那么怎么处理缓存穿透、雪崩、击穿的问题呢?对空结果进行缓存,用来解决缓存穿透问题。设置过期时间,且加上随机值进行过期偏移,用原创 2021-07-06 09:51:17 · 660 阅读 · 0 评论 -
Spring Cloud Alibaba微服务架构实战教程—18数据自动初始化
前言在前面的章节,都是在整合开发框架和集成各种组件,把这些东西搭建完毕之后,让我们的整体项目能有一个全貌,接下来,就该对我们的核心业务,进行一定的完善,把一些该用的方法,补充完整。资源模块的初始化前提条件:其中的ResourceStall 车位实体、以及它的相关层,都是由之前的MBG代码生成的章节,进行统一生成的,请读者自行先生成完毕。有时需要项目服务启动时加载一些数据或预先完成某些动作的情景,可以通过实现CommandLineRunner接口,或者实现ApplicationRunner接口原创 2021-06-29 09:37:29 · 311 阅读 · 0 评论 -
Spring Cloud Alibaba微服务架构实战教程—17分布式缓存下Redis设计
前言大多数的文章,开头就是告诉你使用redis做缓存,怎么怎么样,而本系列,不打算采用这样无趣的写法,这和直接搬运有什么区别?笔者力求读者能得到更大程度的系统学习,会从为什么使用缓存来给大家进行学习。问问大家,当系统的执行速度慢怎么办?对于更新速度不是很快的站点,可以采用静态化来避免过多的数据查询。通常前端使用Freemaker或Velocity、thymeleaf等模板引擎来实现 页面的静态化。对于更新数据频繁的站点,可通过 分布式缓存 来解决快速获取的查询,结合如Redis、MemCa原创 2021-06-15 16:31:22 · 707 阅读 · 2 评论 -
Spring Cloud Alibaba微服务架构实战教程—16微服务对频繁ip访问限制
前言在系统上线后,为了避免一些爬虫或者是恶意请求,我们通常会对访问规律性强,访问速度过快,连续访问时间过长的ip地址进行访问限制,限流。比如一秒200次访问即视为非法,会阻止10分钟的访问。——可以通过ip + token方式进行限制。ip限制机制放在哪里?对于ip的限流机制,可以放在各个微服务内部来做,也可以放到gateway网关中来建立,这么多方案,到底放在哪来做限流比较合适呢?答案是:网关层,因为它是系统的最外层,限流放置在这层才最合适。在单体应用中,就是nginx层,可以利用ngin原创 2021-06-09 17:21:06 · 874 阅读 · 0 评论 -
Spring Cloud Alibaba微服务架构实战教程—15最详细的Gateway统一网关
在分布式微服务架构中,会将服务进行拆分,不同的服务负责各自的业务功能,拆分后也有一个问题?每一个服务都有自己的服务名、ip、端口等,服务越多数量越多时,这样怎么记忆这么多的URL呢?此外,一些公共性的功能(如认证、鉴权、服务流控等)需要重复在各子模块中自身实现,造成的代码冗余怎么办??如图,诞生了一个统一网关,它将所有子服务封装起来,外部请求服务时,由网关统一调配URL和转发各个请求到不同的微服务去,并且可以在网关层针对所有公共性的功能作统一的处理,避免冗余。网关:流量请求的入口。原创 2021-05-31 19:11:13 · 57678 阅读 · 5 评论 -
Spring Cloud Alibaba微服务架构实战教程—14持久化与Nacos配置中心
前言在上一篇,13快速失败与熔断器 中,我们采用sentinel配置规则,来进行接口的流量控制,以及防范服务异常宕机时的快速熔断降级。值得一提的是,其中有一个小问题。问题描述:在我们配置好规则后,每次重启微服务,会发现上一次配置好的规则会丢失,怎么办呢?——持久化No,No,No,意思是将配置找个地存储起来。解决方案 : 将配置好的限流规则持久化到Nacos中进行保存。这样只要刷新某个接口地址,sentinel控制台的流控规则就自动看到,只要Nacos里面的配置不删除,针对于微服务接口的流原创 2021-05-31 10:08:09 · 573 阅读 · 0 评论 -
Spring Cloud Alibaba微服务架构实战教程—13快速失败与sentinel熔断机制
Hystrix作为熔断流量控制,在客户端实现,在方法上注解,当请求出错时可以调用注解中的方法返回,容错管理工具三者之间的关系图原创 2021-05-21 13:04:48 · 702 阅读 · 3 评论 -
Spring Cloud Alibaba微服务架构实战教程—12基于Nacos权重的负载均衡
前言提起负载均衡,很多人第一反应,肯定是最出名的Nginx了。本篇就边实战,边简要性的复习下负载均衡的知识。什么是负载均衡负载均衡(Load Balance),说白点就是,将各类负载进行平衡、分摊到多个操作单元上运行,保证了系统的高可用性。再给你说直白点,看图:在微服务或分布式系统下,假设A服务调用B服务,B服务部署在多台机器上,A发送多次请求到任意一个服务器均可完成调用,那么请求该发到具体哪个服务端号上,这个处理过程,就是一次负载均衡。这样好处就是使每台服务器不至于忙处理请求,导致瘫痪,将请原创 2021-05-18 10:13:26 · 613 阅读 · 0 评论 -
Spring Cloud Alibaba微服务架构实战教程—11服务的远程调用
无论是微服务架构还是分布式架构中,都存在一个基本问题——远程服务之间如何通讯?答案是,可以通过远程调用!那什么是远程调用呢?简单来说就是调用方和被调用方可能不在一个主机上,但是服务之间不可避免的需要互相调用其功能,因此称为远程调用。从微服务而已,A,B是两个不同的微服务。服务A要使用服务B的方法,需要调用它,服务A就是调用方,服务B被调用方。既然介绍了,什么是远程调用,那么远程调用方式都有哪些呢?一起走进今天的学习之路。2018年以前的微服务项目基本上都是使用Feign 组件。原创 2021-05-15 18:29:47 · 860 阅读 · 0 评论 -
Spring Cloud Alibaba微服务架构实战教程—10集成nacos注册中心
前言如图,在微服务架构的系统中,当服务A调用服务B、服务C时,若服务A不知道B、C服务所在的服务器是可用还是不可用状态,就会不停发起请求做无用功。如何解决这类问题呢?——建立注册中心。一、什么是注册中心?注册中心主要保存了各个可用服务的网络地址,如ip和port等信息。在服务相互调用时,可以统一把服务名字都注册到中心,该中心则记录这些服务的不同名称和当前状态,通过心跳机制来动态感知服务的状态,以此来准确帮助服务之间的交互。二、注册中心的组件在SpringCloud架构中,可以作为注册中心的原创 2021-05-13 18:59:16 · 440 阅读 · 2 评论 -
Spring Cloud Alibaba微服务架构实战教程—09打造公共微服务的统一体系
前言完善公共微服务,主要是统一异常处理和响应与请求体。项目构建-统一参数校验,统一结果响应,统一异常处理,统一错误处理,统一日志记录,统一生成api文档优秀的后端接口体系logback来生成日志一、公共工具包的完善在springcloud微服务架构中,common项目是不用部署的,maven的其他子项目依赖common服务,它只是用来提供其他子项目的共同部分,减少代码重复。所以,我们会把一些通用的功能,放到common项目中,比如mysql、mybatis、lombok、commons、fas原创 2021-05-12 21:58:53 · 997 阅读 · 0 评论 -
Spring Cloud Alibaba微服务架构实战教程—08优雅的生成百万测试数据
前言在上一篇我们生成了7大微服务的基础代码,也采用 swagger生成了API文档 ,让开发过程中可以更好的调试和查看接口信息,在测试CURD方法时,数据太少让我们效率不高。一、如何生成测试数据?有过开发经历的小伙伴也有感触,有时我们需要在数据库中构建大量的基础数据(比如千万级别数据)来进行测试时,就比较难搞了。现在大多数的文章教程,通常都是采用如下两种方式来创建测试数据:方式一:编写java/python/shell代码,通过代码批量插入数据库,效率低。方式二:编写复杂的SQL存储过程原创 2021-05-12 11:43:14 · 871 阅读 · 2 评论 -
Spring Cloud Alibaba微服务架构实战教程—07集成knife4j生成Api文档
Spring Cloud Alibaba微服务架构实战教程—07集成knife4j生成Api文档通过上一章的学习,我们在smartcar-message子项目中采用MBG插件来生成基础代码,为了加强对代码生成器的使用,我们这一篇,对另外一个子项目smartcar-member进行操作,巩固一下基础。代码生成首先是生成代码操作:在上一篇的message中借用一下配置环境来生成member的基础代码。打开message项目test下的mybatis-generator-config.xml文件。修改原创 2021-05-12 10:27:45 · 1147 阅读 · 2 评论 -
Spring Cloud Alibaba微服务架构实战教程—06让你躺平的敏捷开发
一、前言在高速发展的今天,微服务通常是把一个大项目根据业务或其他方面划分为了诸多小项目,也就意味着这其中,会产生大量的重复操作,比如上文,建立子模块的步骤就来回进行了7-8次。假设有几十甚至上百个微服务,岂不是新建文件夹都非常的累人?在工作中需要新增大量对象时,岂不是会发生太多重复劳动?这是无法容忍的。所以,MyBatis官方开发了一款工具叫 MyBatis Generator 。它只需要少量简单的配置,就可以完成大量的表与Java对象的生成工作,拥有零出错和速度快的优点,让开发人员从重复劳动中解原创 2021-04-22 10:59:43 · 838 阅读 · 0 评论 -
Spring Cloud Alibaba微服务架构实战教程—05项目雏形之框架搭建
前言经过前面几张的分析,有光说不练假把式的味道,加之系统架构已经设计好,开发环境也已就绪,接下来,我们就要开工了,老规矩,开始之前,请以下思考问题。微服务会将多个业务划分成多个项目来处理,如何统一的管理这些项目关系?基于maven可以构建父子项目结构的微服务架构,它可以给我们提供:统一依赖管理控制插件版本聚合项目所以,我们创建的项目,会是一个maven结构的sprinboot项目。一、创建父工程假定父项目的工程名称为smartcar-project,建立springboot项目原创 2021-04-21 20:29:35 · 2938 阅读 · 3 评论 -
Spring Cloud Alibaba微服务架构实战教程—04项目地基之架构设计
前言前几篇将从客户需求、业务分析,模型设计,数据库设计等层面进行了梳理,那么接下来,就需要开始进行系统的架构设计。就好比盖房子一样,我们需要在搭框架之前,把图纸方案设计好,这样才能循序渐进,一步一步完成作品。那么关于架构功能。你是否想过,如果要开发一个系统,需要什么环境?需要什么软件?需要什么技术等问题?要把这些前期工作准备好,就得做出一个总体的架构设计。微服务架构微服务到底是什么呢?想必很多人还没有概念。拒绝做大型单体应用,基于业务边界进行服务微化拆分,各个服务独立部署运行,被称为微服.原创 2021-04-21 16:06:30 · 500 阅读 · 0 评论 -
Spring Cloud Alibaba微服务架构实战教程—03更全面的数据库设计
前言继前一篇文章,我们对业务需求进行了大致的分析,在加上绘制了基本的业务模型,从而根据业务层次,把 景停系统 划分为了七大模块。本篇开始之前,想问问大家,系统拆分为不同的微服务之后,那么存储用的数据库是否也有必要拆分吗?答案是有必要的。目前仍然有很多微服务团队,在开发时候,往往只是将服务拆分,存储仍共用一份数据库。这样做是不好的,因为微服务得以发展的原因之一就是解耦。因此,在实施微服务架构时,我们通常建议遵循一个实践原则:每个微服务要有自己独立的数据库,避免数据库层面的耦合,这样某个服务的数据原创 2021-04-20 22:32:47 · 1133 阅读 · 1 评论 -
Spring Cloud Alibaba微服务架构实战教程—02真实项目的需求分析
前言由于本项目涉及到知识点较多,希望大家可以先补下功课:IDEA,Spring,Spring Boot,MyBatis,MySQL,Linux,Docker等基础使用,非必须技能,纯属个人意见。好了好了,废话不多说,开始进入我们的正题。景停系统需求简介为了便于讲解,我给系统取了个名字叫 景停系统。需求场景:我们是一个扶贫景区,由于资金不是很充足,在很多周末带上家人朋友开车来玩的朋友,他们把车辆开到俺们小景区,目前停车场,是叫一个大爷搬着小凳子坐旁边招呼着,游客去景区消费回来(消费具体在基础需求原创 2021-04-20 19:18:31 · 2297 阅读 · 3 评论 -
Spring Cloud Alibaba微服务架构实战教程—01实战系列教程开篇
SpringCloud-Alibaba微服务架构实战教程—01开篇SpringCloud-Alibaba微服务架构实战教程—01开篇前言技术栈SpringCloud-Alibaba微服务架构实战教程—01开篇此项目源自智慧城市方案中的部分需求,是一个结合SpringCloud,SpringCloudAlibaba、Dubbo等技术栈,进行的微服务实战开发案例,长达3万多字的手把手教程,图文并茂,细节到极点,基本囊括了微服务架构中常用技能点,全面覆盖微服务中各种问题的解决方案,是新手入门、初中级开发提升原创 2021-04-19 17:28:18 · 2625 阅读 · 8 评论