如何使用SpringBoot写一个属于自己的Starter
[#](#一-概述) (一)概述 {#一-概述} ------------------------ SpringBoot以其自动装配的能力被广泛应用,我们在写代码时肯定遇到过很多spring-boot-starter命名的依赖,比如spring-boot-starter-web,在pom文件中引入这些starter依赖后,SpringBoot就能通过自动装配的技术扫描到这些类...
51工具盒子
[#](#一-概述) (一)概述 {#一-概述} ------------------------ SpringBoot以其自动装配的能力被广泛应用,我们在写代码时肯定遇到过很多spring-boot-starter命名的依赖,比如spring-boot-starter-web,在pom文件中引入这些starter依赖后,SpringBoot就能通过自动装配的技术扫描到这些类...
<h2><a href="#前言">#</a> 前言 {#前言}</h2> <p>前几天有人问了我这样一个问题:在使用多线程的时候,发现有一些数据会在进入到子线程之后丢失,比如用户信息,又比如记录日志的TraceId等等。这个子线程数据丢失的问题我早前也遇到过,刚好来讲讲解决方案。</p>...
<h2><a href="#前言">#</a> 前言 {#前言}</h2> <p>上一篇文章介绍了如何使用MyBatis的Plugin,来实现SQL的日志打印,这篇文章介绍一下如何将SpringBoot的请求日志,优雅地打印到日志中。 实现效果是这样的,只需要在需要打印的接口上加上一个注解,或者增加...
<h2><a href="#一-什么是粘包、半包">#</a> (一)什么是粘包、半包 {#一-什么是粘包、半包}</h2> <p>在实际的网络开发中或者在面试中,最开始使用TCP协议时经常会碰上粘包和半包的情况,因此我们有必要了解一下什么是粘包,什么是半包,以及如何去解决。</p> &...
[#](#一-什么是netty) (一)什么是netty {#一-什么是netty} ------------------------------------------ Netty是一个**异步的,基于事件驱动的网络应用框架** ,用于快速开发可维护、高性能的**网络服务器和客户端** 。Netty的应用十分广泛,可以说主流的框架中,如果有网络方面的需求,一般用的都是net...
<h2><a href="#一-hystrix的介绍">#</a> (一)Hystrix的介绍 {#一-hystrix的介绍}</h2> <p>微服务的调用有时候会存在连环调用,即微服务A调用微服务B,微服务B调用微服务C。此时当微服务C不可用的时候,所有的请求都会阻塞到微服务B,可能会导致微服务B...
[#](#一-什么是微服务网关) (一)什么是微服务网关 {#一-什么是微服务网关} ------------------------------------------ 后端写完所有的微服务之后,最终是要交给前端去调用。我们都知道每个微服务都有各自的端口号,如果前端直接通过IP加端口的方式去调用微服务会很麻烦。如果想对请求增加限制也会变得十分困难。这个时候微服务网关就出现了...
[#](#一-前言) (一)前言 {#一-前言} ------------------------ 如今微服务架构已经被炒的如火如荼,互联网公司况且不说,连我接触的一个国企现在都开始往微服务分布式架构发展。因此,我会通过最近几篇博客介绍目前比较流行的一些微服务组件,其实微服务并没有那么难。如果在跑项目过程中,想要知道整个项目的所有依赖pom文件或者任何疑问,**直接联系我即可...
<h2><a href="#一-概述">#</a> (一)概述 {#一-概述}</h2> <p>在分布式系统中,许多服务之间通过远程调用实现信息交互,调用时难免会出现调用失败的情况,Sentinel能保证在一个服务出现问题的情况下,不会导致整体服务失败,防止服务雪崩,提高分布式系统的可用性。<...
[#](#一-什么是微服务网关) (一)什么是微服务网关 {#一-什么是微服务网关} ------------------------------------------ 后端写完所有的微服务之后,最终是要交给前端去调用。我们都知道每个微服务都有各自的端口号,如果前端直接通过IP加端口的方式去调用微服务会很麻烦。如果想对请求增加限制也会变得十分困难。这个时候微服务网关就出现了...