项目的简单介绍: 项目采用maven聚合工程 用spring boot 搭建 spring cloud的微服务 模块式开发 项目的截图: 搭建开始: 能上图 我少打字 1.首先搭建maven的聚合工程 1.1创建聚合工程的父模块 1.2设置父模块的POM文件 主要是配置 spring boot版本,spring cloud 版本,和一些通用的依赖 比如这里的 lombok依赖 <?xml version="1.0" encoding="UTF-8"?>…
很久没更新了,因为不是专职研究spring cloud,因此更新速度得看工作强度大不大,每天能抽出的时间不多,如果更新太慢了,并且有小伙伴看的话,请见谅了. Spring Cloud简介 Spring Cloud是一个基于Spring Boot实现的云应用开发工具,它为基于JVM的云应用开发中的配置管理.服务发现.断路器.智能路由.微代理.控制总线.全局锁.决策竞选.分布式会话和集群状态管理等操作提供了一种简单的开发方式. Spring Cloud包含了多个子项目(针对分布式系统中涉及的多个不同…
在spring cloud体系中,有多种手段实现注册中心,本例中采用zookeeper作为注册中心的角色.服务提供者向zookeeper注册,服务消费者从zookeeper中发现服务提供者的相关信息,从而远程调用服务提供方. spring cloud与zookeeper的集成主要依赖spring-cloud-starter-zookeeper-discovery模块,下面是实例: 1.服务提供者zktest 引入相关依赖pom.xml <project xmlns="http://mave…
公司要测试一下zipkin是否可以跟踪全流程,项目的架构比较复杂,不要问我为什么,基本架构如下:前端门户,调用spring cloud组件,spring cloud在调用dubbo,这样一套流程.于是在spring cloud以及dubbo搭建过程中的所坑所思所想,记录一下. ZUUI配置服务出错 不知为何在ZUUI里面配置serviceId无法从Eureka里面获取服务名称:但是如果配置为url,则可以跳转. 问题:为什么服务没有配通,怎么配服务,serviceId是对应Eureka里面的Ap…
Maven安装手册 1.准备安装包 安装包: apache-maven-3.5.4-bin.zip  (最好JDK 1.7及以上版本) 集成包: eclipse-maven3-plugin.zip 2.maven安装 2.1 将下载好的maven安装包解压到你想放的硬盘目录下 例:H:\maven\apache-maven-3.5.4 2.2 配置环境变量 MAVEN_HOME = H:\maven\apache-maven-3.5.4 path = %MAVEN_HOME%\bin: 2.3…
" Spring Cloud Alibaba要用到的组件很多,注册中心nacos, 限流sentinel, 数据库,网关等等.由于用到的组件相对较多,部署会很繁琐,最关键的是没有资源服务器,所以在开发过程中我会逐渐将一些组件使用docker-compose部署." 01 - 环境准备 我手上有一台macbook,这次先用mac部署,有机会再写一个ubuntu的,基本差不多. 先晒出mackbook信息,不是高配,硬件配置和这差不多的应该都没问题. 第一部安装docker-toolbox…
新建Spring Boot项目 怎么新建Spring Boot项目这里不再具体赘述,不会的可以翻看下之前的博客或者直接百度.这里直接贴出对应的pom文件. pom依赖如下: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/…
作为网关,日志记录是必不可少的功能,可以在网关出增加requestId来查询整个请求链的调用执行情况等等. 打印请求日志 打印请求日志最重要的就是打印请求参数这些东西,不过RequestBody通常情况下在被读取一次之后就会失效,这样的话,下游的服务就不能正常获取到请求参数了.所以我们需要重写下请求体. 具体方法呢有很多,这里说一下我用的两种: 第一种 代码如下: package com.lifengdi.gateway.filter; import com.lifengdi.gateway.c…
背景 作为网关,有些时候可能报文的结构并不符合前端或者某些服务的需求,或者因为某些原因,其他服务修改报文结构特别麻烦.或者需要修改的地方特别多,这个时候就需要走网关单独转换一次. 实现 话不多说,直接上代码. 首先,我们定义好配置: package com.lifengdi.gateway.properties.entity; import lombok.Data; import org.springframework.util.CollectionUtils; import java.util…
前言 本文采用Spring cloud本文为2.1.8RELEASE,version=Greenwich.SR3 本文基于前两篇文章eureka-server.eureka-client.eureka-ribbon和eureka-feign的实现. 参考 eureka-server eureka-client eureka-ribbon eureka-feign 概念 Hystrix Dashboard时Hystrix提供的一个可以查看hystrix监控数据的控制面板.Hystrix提供了近实时…