
SpringBoot
一只努力的微服务
努力坚持终会有收获
展开
-
【SpringCloud源码】EurekaClient服务注册流程
Eureka-Client服务注册服务的注册和服务的发现其实是两个概念,发现所描述的是instance作为调用者,获取需要调用的下游服务的列表信息的过程,注册所描述的是instance作为被调用者,要将自己的信息注册到注册中心的过程,共给其他instance(包括自己)进行服务发现使用。对于注册过程,需要配置eureka.client.register-with-eureka = true,默...原创 2020-04-18 19:14:09 · 723 阅读 · 1 评论 -
springboot自启动脚本shell、systemctl以及service文件Environment用法
springboot通用管理脚本在springboot打包成jar包之后,往往需要很多启动参数辅助服务启动,为了避免每次都写很长的启动命令,可以将这些重复性工作写成脚本。shell脚本:#!/bin/bash# jar包的名字APP_NAME=appname# 环境配置文件,如application-dev.ymlPROFILE=devJAR_NAME=$APP_NAME\.jar...原创 2019-10-26 22:19:24 · 9613 阅读 · 1 评论 -
【SpringCloud源码】Hystrix的fallBack过程
Hystrix是SpringCloud全家桶中的熔断和隔离器,可实现服务的降级策咯、隔离策略、批量请求等等功能。一般使用方法:1.pom.xml中添加:<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starte...原创 2019-05-11 22:38:12 · 680 阅读 · 0 评论 -
SpringBoot中starter原理简介
在springboot项目的pom文件中会发现很多带starter的pom包,这也是springboot的一个典型特点,starter是什么?怎么用的?开发springboot最常见的starter就是:<dependency> <groupId>org.springframework.boot</groupId> <artifactId>...原创 2019-07-31 17:33:55 · 30167 阅读 · 1 评论 -
SpringBoot多环境配置
springboot在创建空项目时,会生成一个application.propertites的配置文件,可以在该文件中配置项目所需要的参数配置。通常的项目都有开发环境、测试环境和生产环境等,一个配置文件可能就要换来换去,springboot专门为适应这种情况做了优化。可以分环境来读取配置文件。springboot的配置文件常见的有两种格式,一种是application.yml(或applicat...原创 2019-07-31 17:34:35 · 308 阅读 · 0 评论 -
Java流控的各种实现方案
1.使用Guava的RateLimiter原理:RateLimiter使用的是一种叫令牌桶的流控算法,RateLimiter会按照一定的频率往桶里扔令牌,线程拿到令牌才能执行,比如你希望自己的应用程序QPS不要超过1000,那么RateLimiter设置1000的速率后,就会每秒往桶里扔1000个令牌。代码:LxRateLimit.javaimport java.lang.annotati...原创 2019-07-13 21:52:21 · 5827 阅读 · 0 评论