【微服务】
天青色的烟雨.
本博客只为加深自身知识体系,不为任何商业用途呦呦呦!
展开
-
Springcloud Stream详解与kafka整合实例
为什么需要SpringCloud Stream消息驱动呢? 比方说我们用到了RabbitMQ和Kafka,由于这两个消息中间件的架构上的不同,像RabbitMQ有exchange,kafka有Topic,partitions分区,这些中间件的差异性导致我们实际项目开发给我们造成了一定的困扰,我们如果用了两个消息队列的其中一种,后面的业务需求,我想往另外一种消息队列进行迁移,这时候无疑就是一个...转载 2019-06-04 22:11:30 · 25220 阅读 · 8 评论 -
SpringBoot的异常处理
SpringBoot通过注解@ControllerAdive拦截所有由@Controller修饰的类。并根据异常类型进行响应的处理。实例:import com.leyou.common.enums.ExceptionEnum;import org.springframework.http.ResponseEntity;import org.springframework.web.bi...原创 2019-06-14 11:55:20 · 284 阅读 · 0 评论 -
SpringCloud config详解与实例
统一配置中心概述如果微服务架构中没有使用统一配置中心时,所存在的问题:配置文件分散在各个项目里,不方便维护 配置内容安全与权限,实际开发中,开发人员是不知道线上环境的配置的 更新配置后,项目需要重启 Spring Cloud Config就是我们通常意义上的配置中心。Spring Cloud Config-把应用原本放在本地文件的配置抽取出来放在中心服务器,...转载 2019-06-02 15:42:31 · 2026 阅读 · 1 评论 -
Zuul详解与实例
前言 介绍完分布式配置中心,结合前面的文章。我们已经有了一个微服务的框架了,可以对外提供api接口服务了。但现在试想一下,在微服务框架中,每个对外服务都是独立部署的,对外的api或者服务地址都不是不尽相同的。对于内部而言,很简单,通过注册中心自动感知即可。但我们大部分情况下,服务都是提供给外部系统进行调用的,不可能同享一个注册中心。同时一般上内部的微服务都是在内网的,和外界是不连通...转载 2019-06-02 11:04:45 · 6220 阅读 · 0 评论 -
Hystrix详解与实例
引言 首先,之所以谈这个话题呢,是发现现在很多人对微服务的设计缺乏认识,所以写一篇扫盲文。当然,考虑到目前大多微服务的文章都是口水文,烟哥争取将实现方式讲透,点清楚,让大家有所收获! OK,我要先说明一下,我有很长一段时间将服务降级和服务熔断混在一起,认为是一回事!为什么我会有这样的误解呢?针对下面的情形,如图所示: 当Service A...转载 2019-05-27 10:04:50 · 4398 阅读 · 1 评论 -
Feign详解与实例
基本介绍 Feign是一种负载均衡的HTTP客户端, 使用Feign调用API就像调用本地方法一样,从避免了调用目标微服务时,需要不断的解析/封装json 数据的繁琐。Feign集成了Ribbon。Ribbon+eureka是面向微服务编程,而Feign是面向接口编程。 Fegin是一个声明似的web服务客户端,它使得编写web服务客户端变得更加容易。使用Feg...原创 2019-06-01 16:28:49 · 10259 阅读 · 1 评论 -
Ribbon详解与实例
Ribbon是一个为客户端提供负载均衡功能的服务,它内部提供了一个叫做ILoadBalance的接口代表负载均衡器的操作,比如有添加服务器操作、选择服务器操作、获取所有的服务器列表、获取可用的服务器列表等等。需要解决的问题:①如何在配置Eureka Client注册中心时不去硬编码EurekaServer的地址? ②在微服务不同模块间进行通信时,如何不去硬编码服务提...原创 2019-06-01 15:38:18 · 28923 阅读 · 6 评论 -
Eureka原理分析与实例
1、概述 Spring Cloud 封装了 Netflix 公司开发的 Eureka 模块来实现服务注册和发现(请对比Zookeeper)。Eureka包含两个组件:Eureka Server和Eureka Client Eureka 采用了 C-S 的设计架构。Eureka Server 作为服务注册功能的服务器,它是服务注册中心。 而系统中的其他微服务,使用 E...原创 2019-05-31 20:45:40 · 3779 阅读 · 2 评论 -
Lombok使用
官方介绍如下:Lombok是一个可以通过简单的注解形式来帮助我们简化消除一些必须有但显得很臃肿的Java代码的工具,通过使用对应的注解,可以在编译源码的时候生成对应的方法。官方地址:https://projectlombok.org/,github地址:https://github.com/rzwitserloot/lombok。Lombok使用方法 Lombok能以简单的注解...原创 2019-05-30 21:01:51 · 186 阅读 · 0 评论 -
微服务架构
微服务架构 微服务化的核心就是将传统的一站式应用,根据业务拆分成一个一个的服务,彻底地去耦合,每一个微服务提供单个业务功能的服务,一个服务做一件事,从技术角度看就是一种小而独立的处理过程,类似进程概念,能够自行单独启动或销毁,拥有自己独立的数据库。相对于单体架构和SOA,它的主要特点是组件化、松耦合、自治、去中心化,体现在以下几个方面: 一组小的服务 服务粒度要小,而...原创 2019-05-30 16:59:21 · 222 阅读 · 0 评论 -
SpringBoot自动配置原理
配置文件到底能写什么?怎么写?自动配置原理; 配置文件能配置的属性参照1、自动配置原理: 1)、SpringBoot启动的时候加载主配置类,开启了自动配置功能 @EnableAutoConfiguration 2)、@EnableAutoConfiguration 作用: 利用EnableAutoConfigurationImportSelector给容器中导入一些...原创 2019-05-12 17:35:48 · 224 阅读 · 0 评论 -
SpringBoot配置文件、依赖注入
1、配置文件 SpringBoot使用一个全局的配置文件,配置文件名是固定的; application.properties application.yml 配置文件的作用:修改SpringBoot自动配置的默认值;SpringBoot在底层都给我们自动配置好; YAML(YAML Ain't Markup Language) 标记语言: 以前的配置文件;大多都使用的是 xx...原创 2019-05-12 16:06:07 · 1883 阅读 · 0 评论 -
SpringBoot快速入门
浏览器发送hello请求,服务器接受请求并处理,响应Hello World字符串;1、创建一个maven工程;(jar)2、导入spring boot相关的依赖 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring‐boot‐sta...原创 2019-05-12 10:58:04 · 151 阅读 · 0 评论 -
基于JWT的单点登录方案
cookie机制关于cookie和seesion的联系 cookie中会包含那些信息 名字,值,过期时间,路径,域 cookie会带到http请求头中发送给服务端 如果cookie没有设置过期时间的话,那么cookie的默认生命周期是浏览器的会话。session机制1,session是容器对象,客户端在请求服务端的时候,服务端会根据客户端的请求判断是否包含了jsessionId的...原创 2019-05-03 21:35:57 · 1085 阅读 · 1 评论