随笔分类 - SpringCloud
摘要:大家好,我是老三,面渣逆袭系列继续,这期给大家带来微服务相关的面试题。 概览 1.什么是微服务? 微服务(Microservices)是一种软件架构风格,将一个大型应用程序划分为一组小型、自治且松耦合的服务。每个微服务负责执行特定的业务功能,并通过轻量级通信机制(如HTTP)相互协作。每个微服务可以
阅读全文
摘要:源码地址:https://gitee.com/fighter3/eshop-project.git 持续更新中…… 大家好,我是老三,断更了半年,我又滚回来继续写这个系列了,还有人看吗…… 在前面的章节中,我们使用Fegin完成了服务间的远程调用,实际上,在更加注重性能的互联网公司中,一般都会使用R
阅读全文
摘要:源码地址:https://gitee.com/fighter3/eshop-project.git 持续更新中…… 大家好,我是三分恶。 在前面的章节中,我们已经完成了服务间的调用、统一配置等等,在这一章节里,我们会引入微服务体系的一个重要组件——网关。 网关概述 为什么要引入网关 大家都知道,我们
阅读全文
摘要:源码地址:https://gitee.com/fighter3/eshop-project.git 持续更新中…… 在我们前面介绍Nacos的时候,说到,Nacos除了可以作为注册中心,还可以作为配置中心,而在SpringCloud Netfilx的体系下,这个工作是由Spring Cloud Co
阅读全文
摘要:源码地址:https://gitee.com/fighter3/eshop-project.git 持续更新中…… 在上一节我们已经使用OpenFeign完成了服务间的调用。想一下,假如我们一个服务链路上上下游有十几个服务,每个服务有若干个节点,其中一个节点故障,上游请求打到故障的节点,加入请求一直
阅读全文
摘要:源码地址:https://gitee.com/fighter3/eshop-project.git 持续更新中…… 在上一个章节,我们已经成功地将服务注册到了Nacos注册中心,实现了服务注册和服务发现,接下来我们要做的是服务间调用。 想一下,我们日常调用接口有哪些方式呢?常见有的有JDK自带的网络
阅读全文
摘要:源码地址:https://gitee.com/fighter3/eshop-project.git 持续更新中…… 在上一节里,我们搭建了一个微服务项目的整体架构,并进行了版本控制。 接下来我们进一步来完善架构,引入SpringBoot、MybatisPlus等开发框架,来支撑具体业务的开发。 1、
阅读全文
摘要:在上一节,我们已经完成了项目的整体技术架构设计和具体的数据库设计,接下来,我们搭建整体的开发框架。 开发工具选用Idea。 开发工具只是为了提高效率,如果不习惯Idea的话,STS使用起来也是OK的。 1、创建多Module工程 1.1、创建父工程 创建一个父项目,项目命名为eshop-projec
阅读全文
摘要:1、存储设计 在上一章中,我们已经完成了基本业务流程的梳理和服务模块的划分,接下来,开始设计数据存储。 虽然在微服务的理论中,没有对数据库定强制性的规范,但一般,服务拆分之后,数据库也会对应的拆分。 这种结合业务来进行拆分的方式是数据库拆分中的垂直拆分。 数据库设计偷个懒,就不再用比较重的Power
阅读全文
摘要:选用了很常见的电商业务来进行SpringCloud Alibaba的实战。 当然,因为仅仅是为了学习SpringCloud Alibaba,所以对业务进行了大幅度简化,这里只取一个精简版的用户下单业务。 1、电商业务流程 电商系统下单业务流程图: 这个流程同样进行了简化,一般浏览完商品可能不会直接下
阅读全文
摘要:1、什么是微服务? 微服务可谓是这几年比较热门的技术,从2017开始逐渐爆火,逐渐大大小小的公司纷纷将微服务技术引入并在实际业务中落地。 微服务的概念最早是在2014年由Martin Fowler和James Lewis共同提出:微服务是由单一应用程序构成的小服务,拥有自己的进程与轻量化处理,服务依
阅读全文
摘要:@ 1、什么是微服务 1.1、架构演进 架构的发展历程是从单体式架构,到分布式架构,到SOA架构,再到微服务架构。 图1:架构演进 单体架构:未做任何拆分的Java Web程序 图2:单体架构示意图 分布式架构:按照业务垂直划分,每个业务都是单体架构,通过API互相调用。 图3:分布式架构示意图 S
阅读全文