- 博客(27)
- 资源 (7)
- 收藏
- 关注
原创 (vue前端)nginx->代理https->k8s(ingress)->spring-cloud-gateway->websocke必坑说明
nginx反射代理+https+k8s(ingress)+websocket
2022-12-21 12:32:56
803
原创 rancher2.6安装问题记录
环境:centos7.6docker:查看k3s.log错误:Error while dialing dial tcp 127.0.0.1:2399: connect: connection refused最终问题确认是服务上有360safe软件导致。关闭:360即可:centos7.6卸载360safe:cd /opt/360safe执行:./uninstall.sh...
2022-04-05 11:11:38
1012
原创 java 各种方法反射性能对比(原生/Introspector/MethodHandles/MethodAccess)
直接上代码:package com.example.demo;import com.esotericsoftware.reflectasm.MethodAccess;import lombok.Data;import lombok.Getter;import org.junit.Test;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringB
2022-03-02 10:47:22
902
原创 win10 搭建rabbitmq集群(最正确,最简单的方式)
安装先安装erl-24.2(自行百度下载,版本一定要对)rabbitmq_server-3.9.11下载(百度配置环境变量即可)获取配置下载此:https://github.com/rabbitmq/rabbitmq-server/blob/b62c5499ce/deps/rabbit/docs/rabbitmq.conf.example或使用:# ======================================# RabbitMQ broker section#
2022-01-10 11:55:52
1057
原创 jvm(1)-入门
官方链接:文档:https://www.oracle.com/java/technologies/javase-jdk8-doc-downloads.htmljdk:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html基础知识:jvm从编译到执行都做了哪些事: 一个 Java 程序,首先经过 javac 编译成 .class 文件,然后 JVM 将其加载到方法区,执行引擎将会执行这些字节码。
2021-05-14 15:29:44
135
原创 JAVA中i++问题解释
先看一段代码,再解释原因:public class Demo { public static void main(String[] args){ int i = 0; int y=i++; System.out.println(i); System.out.println(y); }}打印结果:i:1y:0解释这个问题得从两个地方分析“class指令码”和"jvm的线程栈执行":1.首先我们查看一下.cla
2021-05-14 13:00:18
577
原创 spring-cloud-netflix升级spring-cloud-alibaba-nacos坑
升级新版本:spring-cloud-alibaba-version:2.2.4.RELEASEspring.cloud-version:Hoxton.SR8spring-boot.version:2.3.2.RELEASE以下问题在spring-cloud-config中均无问题:1.如果同一个服务用多个@FeignClient要在bootstrap.yml文件中加入:spring.main.allow-bean-definition-overriding=true2.nacos中的配置尽量
2021-02-02 18:16:57
435
原创 spring cloud源码解读(4)-Hystrix
温馨提示:请先学会在spring cloud使用Hystrix,并且具备spring及spring boot源码知识,再来看本文章,前面有spring及spring boot源码讲解。1。对应的jar包2。先找到入口注解EnableCircuitBreaker中EnableCircuitBreakerImportSelector继承SpringFactoryImportSelector中有方法用spi机制导入hystrix对应的aop切面类:创建 hystrixCommand 注解的切面类同
2020-06-01 14:42:59
168
原创 spring cloud入门(4)-Hystrix使用
Hystrix能解决什么问题?可以解决:服务雪崩雪崩是系统中的蝴蝶效应导致其发生的原因多种多样,有不合理的容量设计,或者是高并发下某一个方法响应变慢,亦或是某台机器的资源耗尽。从源头上我们无法完全杜绝雪崩源头的发生,但是雪崩的根本原因来源于服务之间的强依赖,所以我们可以提前评估。当整个微服务系统中,有一个节点出现异常情况,就有可能在高并发的情况下出现雪崩,导致调用它的上游系统出现响应延迟,响应延迟就会导致 tomcat 连接本耗尽,导致该服务节点不能正常的接收到正常的情况,这就是服务雪崩行为。
2020-05-31 19:32:27
295
原创 spring cloud源码解读(3)-ribbon
请务必读完读明白前两节的源码,否则此篇你会蒙。1.首先找到对应的配置类利用spi机制引入配置类:2。此类内处重点位置:标注1说明1。此配置类对应方法:org.springframework.cloud.client.loadbalancer.LoadBalancerAutoConfiguration.RetryInterceptorAutoConfiguration#restTemplateCustomizer(把ribbon的interceptor加入到拦截器链路,为后面获取服务列表做准备。d
2020-05-31 16:39:56
301
原创 spring cloud源码解读(2)-eureka server
请先看上一章节:spring cloud源码解读(1)客户端拉取:1.拉取会进到此方法com.netflix.eureka.resources.ApplicationsResource#getContainers(jsr330的标准和springmvc对应的http注解差不多,自己不懂的可以去了解一下):...
2020-05-30 21:54:58
213
原创 spring cloud源码解读(1)-eureka-client
以下划出来的都是重要运行路线:1.首先找到项目中对应的jar包,以及spi中的org.springframework.cloud.netflix.eureka.EurekaClientAutoConfiguration2.找到org.springframework.cloud.netflix.eureka.EurekaClientAutoConfiguration.RefreshableEurekaClientConfiguration#eurekaClient方法中(启动项目时会调用此CloudEu
2020-05-30 16:21:39
345
原创 spring cloud入门(2)-eureka注册中心
创建mic-eureka子项目:注意pom中导入此包:<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-netflix-eureka-server</artifactId> </dependency>说明:配置文件说明:...
2020-05-28 17:55:42
115
原创 spring cloud入门(1)
创建maven工程:主项目中pom.xml导入:<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.
2020-05-28 17:48:45
232
原创 spring-boot(2)自动配置源码说明
springBoot的自动配置主要在SpringBootApplication导入相关的Processor.最终会通过以上注解引用的BeanProcessor调用到org.springframework.boot.autoconfigure.AutoConfigurationImportSelector#getAutoConfigurationEntry就去中:以上configurations会加载到所有springBoot组件的自动配置类:上面完整调用链路特别说明(ConfigurationC
2020-05-12 18:07:57
145
原创 spring-boot(1)启动源码说明
温馨提示:看此文章必须具备能读spring ioc源码首先会启动调用到:org.springframework.boot.SpringApplication#run(java.lang.String…)通过实现了SpringApplicationRunListener接口的实现类,通过spi机制加载META-INF/spring.factories文件下的类spi:就是spring加载代码根目录下META-INF/spring.factories中所有的类,变为map;图1代码详细说明:标注
2020-05-12 16:30:39
135
原创 spring mvc启动说明
1.spring mvc启动主要是通过(与src下的代码同级)META-INF/services/javax.servlet.ServletContainerInitializer文件中:2.文件中类org.springframework.web.SpringServletContainerInitializer说明:3.根容器/子容器说明:4.根容器初始化类org.springfr...
2020-05-12 15:05:57
124
原创 springIOC主线原码说明笔记
/**扩展原理:BeanPostProcessor:bean后置处理器,bean创建对象初始化前后进行拦截工作的1、BeanFactoryPostProcessor:beanFactory的后置处理器; 在BeanFactory标准初始化之后调用,来定制和修改BeanFactory的内容; 所有的bean定义已经保存加载到beanFactory,但是bean的实例还未创建...
2020-05-05 15:43:26
172
原创 Spring声明式事务(Transactional)源码解读
spring版本:5.1.9(其它5.0及以上版本代码主线都区别不大)辅助案例代码地址:https://gitee.com/lelesccode/spring-sample-demo.git开启事务注解 @EnableTransactionManagement说明...
2020-05-05 14:41:43
257
原创 spring切面aop源码分析
spring版本:5.1.9(其它5.0及以上版本代码主线都区别不大)辅助demo代码地址(在demo9中):https://gitee.com/lelesccode/spring-sample-demo.gitspring的源码的知识比喻:1.什么是BeanPostProcessor?BeanPostProcessor通俗解释:后置处理器(增强对象)用玩网游举个例子: 玩家人物(要被...
2020-05-03 11:36:18
160
原创 spring中AutoWired/Quafifier/Primary及相关注解知识
1.@AutoWired使用的是默认优先@Component以子注解(service/controller/Repository)bean在无Primary修饰的情况下2.Quafifier配合AutoWired使用,意思为手动选择对应ID的bean3.Primary使某个bean为默认Bean(主选bean)@AutoWired/@Resource/@Inject区别:名称@P...
2020-05-02 13:39:16
347
原创 spring注解@value使用
public class Bike{ @Override public String toString() { return "Bike{" + "name='" + name + '\'' + '}'; } public void setName(String name) { this.name = name; } @Value("${bike.name}"...
2020-05-01 22:34:28
187
原创 spring中Bean的生命周期介入的几种方法,及重要spring源码位置
代码目录:bean的生命周期几个过程:创建–>初始化–>销毁1.@Bean(initMethod=“方法1”,destroyMethod=“方法2”)public class Bike { public Bike(){ System.out.println("创建。。。。。"); } public void init(){ System.out.println(...
2020-05-01 21:56:51
226
原创 springBean注入的几种形式,你是否都知道
1.基于spring5代码的目录结构,以下代码都是基于此:其它类都加了注解除Person:@Repositorypublic class OrderDao {}@Servicepublic class SampleService {}@Controllerpublic class TestController {}启动类SampleTest类代码:public cla...
2020-04-30 16:21:50
463
1
原创 JVM详解图
JVM详解图:动态链接:动态生成(存在当前方法指令在元空间的起始指针,会从对象头中取得相应信息类在元空间指针位置进而取得对应方法相应指令的起始指针)对象头信息:...
2020-04-24 22:27:34
126
原创 HashMap1.8与1.7的区别
HashMap1.8与1.7的区别组成差别1.7:数组+单链表1.8:数据+单链表+红黑树(选它的原因:修改/插入/查询 综合效率高)链表存放差别:出现哈希冲突时:1.7直接把数据存放在链表,再无其它操作1.8把数据存放在链表,链表长度超过8就转红黑树扩容差别:1.7扩容条件是数组大于阈值且存在哈希冲突时扩容1.8扩容条件是数组长度大于阈值或链表转红黑树时且数组元素小于64时扩...
2020-04-24 22:16:33
528
nwjs 读取串口数据(防中文乱码)
2016-04-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人