logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

DispatcherServlet、ServletContext 和WebApplicationContext web容器之间的关系

要想很好理解这三个上下文的关系,需要先熟悉spring是怎样在web容器中启动起来的。spring的启动过程其实就是其IoC容器的启动过程,对于web程序,IoC容器启动过程即是建立上下文的过程。spring的启动过程:首先,对于一个web应用,其部署在web容器中,web容器提供其一个全局的上下文环境,这个上下文就是ServletContext,其为后面的spring IoC容器提供...

【看图说话】SpringCloud常用组件使之间的关系——Gateway Feign Hystrix Ribbon 使用详解

简单看图上图显示了SpringCloud常见组件在日常开发中的使用情况,下面按照流程介绍:gateway在接到来自外部的请求的时候,会首先进行处理,gateway能做的事情很多,权限管理,负载均衡(通过rubbion),动态路由等。0.gateway将请求转发给对应的服务A,1.服务A中要调用服务B的服务,Feign依赖Ribbon做负载均衡.2.Ribbon通过EurakeClient去Eura

Spring循环依赖-出现的原因,发现机制和解决方法

SpringBean依赖注入——循环依赖Spring循环依赖出现的原因循环依赖的现象就是Spring的容器在创建Bean的生命周期中,出现了相互依赖的场景,A->B->A,比如上面A的实例属性值是B的实例,B的实例属性值也是A的实例,这样A在进行初始化并且属性赋值的时候发现依赖B,就去实例化B,发现在给B初始化进行属性赋值的时候,也依赖A,这样就出现了最简单的循环依赖。针对上面的问题:

#spring#java
SpringCloudGateWay自定义自己的GateWayFilterFactory的时候(exchange, chain)

Java8 函数式接口在SpringCloudGateWay上的应用

大白话讲解Apollo的使用和配置

Apollo的总体架构Apollo的使用架构Apollo的不同维度的配置分类下面按照生效顺序Application在springboot的application.property定义appid这个key的value,标识该类型的应用。EnvironmentDEV(开发环境)FAT(功能测试)UAT(验收测试)PRO(生产环境)Cluster(集群)N...

压测工具:hey

官方源码:https://github.com/rakyll/hey安装命令:go get -u github.com/rakyll/hey安装流程:首先要安装并配置git的环境变量然后安装并配置golang的环境变量在配置golang的环境变量的时候注意,要分别配置两个环境变量GOPATH和GOROOTGOROOT对应的是GOlang语言的JDK的安装路径,类似于JAVA-...

大白话讲解Kafka

KafKa介绍Kafka是有LinkedIn公司基于Scala语言开发的一个分布式消息系统,现已开源。Kafka 的标语已经从“一个高吞吐量,分布式的消息系统”改为"一个分布式流平台"Kafka与传统的消息系统的区别在于:- 分布式:Kafka是一个分布式系统,易于向外拓展- 高吞吐,低延迟:能同时为生产者和消费者提供高吞吐- 可扩展:kafka集群支持热扩展- 持久性:消...

MySQL的锁机制之 共享锁 互斥锁 读锁 写锁 意向锁 意向共享锁 意向互斥锁 行级锁 表级锁

经常听到数据库的锁机制,不同的数据库的不同实现不同, 听多了就头疼了,今天就把MySQL的锁整的明明白白:锁:首先想一下为什么我们会需要锁,其实就是为了解决并发操作数据的,是一种控制并发的机制。乐观锁和悲观锁:乐观锁和悲观锁其实是两种思想,用来指导实现锁的功能的不同实现思想,乐观锁是一种思想,它其实并不是一种真正的『锁』,它会先尝试对资源进行修改,在写回时判断资源是...

SpringCloudGateWay

SpringCloudGateWay进行服务化:我们需要将我们的springCloudGatewa项目当作一个服务注册到EurekaServer中,配置如下server:port: 8888spring:application:name: cloud-gateway-eurekacloud:gateway:discovery:locator:enabled: trueeur...

#gateway#spring boot
RedisSet缓存List数据并设置过期时间——Lua实现

RedisSet缓存List数据操作并设置过期时间—Lua脚本实现工作中自己开发需要,现有的工具不能满足,于是自己定制了一套批量缓存List内容数据,而不是将整个List作为一个value缓存,并且删除原有的数据,同时设置过期时间,定义方法内容/*** @description 批量缓存List数据,并且删除原有的数据,同时设置过期时间* @param clazz List的数据泛型* @para

#缓存
    共 11 条
  • 1
  • 2
  • 请选择