随笔分类 - java
java语言相关
摘要:package com.ruoyi.system.service.imports; import com.alibaba.excel.annotation.ExcelProperty; import com.ruoyi.system.service.imports.valid.EnumValidat
阅读全文
摘要:1、Spring Cloud核心组件:Eureka 2、Ribbon:Ribbon是一个基于HTTP和TCP的客户端负载均衡器,它可以在通过客户端中配置的ribbonServerList服务端列表去轮询访问以达到服务均衡的作用。 3、Fegin: Fegin的关键机制是使用了动态代理 1)、首先,对
阅读全文
摘要:HashMap Node数组 初始化是16,扩容因子0.75(As a general rule, the default load factor (.75) offers a good tradeoff between time and space costs.时间和空间平衡),扩容2的N次幂。
阅读全文
摘要:@Transactional介绍 @Transactional是spring中声明式事务管理的注解配置方式,相信这个注解的作用大家都很清楚。@Transactional注解可以帮助我们把事务开启、提交或者回滚的操作,通过aop的方式进行管理。 通过@Transactional注解就能让spring为
阅读全文
摘要:java提供的线程池类架构图: 全参数构造方法 public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit unit, BlockingQueue<Runnable> wo
阅读全文
摘要:JVM调优一般分两种情况考虑: 1、根据需求进行JVM的规划和预调优。 吞吐量、及时响应的需求不同使用不同的垃圾回收器。根据系统使用的技术,进行内存参数配置(如:netty,堆内存与对外内存1:1。其他可以设置2:1)。 2、优化正在运行中的jvm(慢,卡顿) 已运行JVM需要以下数据: ①、CPU
阅读全文
摘要:Condition接口通过ReentrantLock.newCondition获取ConditionObject实现类 方法说明 await:线程挂起LockSupport.park实现本地方法接口park signal:线程退出等待,LockSupport.unpark。 在研究Scheduled
阅读全文
摘要:看到alibaba的nacos注册中心中client端用这个作为心跳任务工具 BeatReactor类中 executorService spring 管理。 this.executorService = new ScheduledThreadPoolExecutor(threadCount, ne
阅读全文
摘要:如何保证外网开放接口的安全性。 1.使用加签名方式,防止数据篡改。 2.信息加密与密钥管理,AES加密。 3.搭建OAuth2.0认证授权,授权之后获取accessToken。 4.使用令牌方式,先获取token,带着token发送请求。 5.搭建网关实现黑名单和白名单。 一、令牌方式搭建搭建API
阅读全文
摘要:角色说明 Nacos Server:Nacos服务提供者,里面包含的Open API是功能访问入口,Conig Service、Naming Service 是Nacos提供的配置服务、命名服务模块。Consitency Protocol是一致性协议,用来实现Nacos集群节点的数据同步,这里使用的
阅读全文
摘要:需要安装redis 引入依赖 <dependency> <groupId>org.redisson</groupId> <artifactId>redisson-spring-boot-starter</artifactId> <version>3.16.4</version> </dependen
阅读全文
摘要:初始(NEW):新创建了一个线程对象,但还没有调用start()方法。 运行(RUNNABLE):Java线程中将就绪(ready)和运行中(running)两种状态笼统的称为“运行”。 线程对象创建后,其他线程(比如main线程)调用了该对象的start()方法。该状态的线程位于可运行线程池中,等
阅读全文
摘要:自定义的类加载器实现 编写一个类,继承ClassLoader类,然后覆盖 findClass()方法。实现该方法时,应注意必须至少做到两点: 1.为本地文件系统或其他来源的类加载其字节码, 2、调用超类的defineClass()方法,向虚拟机提供字节码。 编写自定义类加载器用途 可以在向虚拟机传
阅读全文
摘要:引入编译依赖 <properties> <project-war-name>com-test</project-war-name> <project.build.complier>1.8</project.build.complier> <project.build.sourceEncoding>U
阅读全文
摘要:需要引入的依赖,我这里集成了nacos,openfeign等。 pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://ww
阅读全文
摘要:本实例集成框架: spring boot spring web:sprignmvc openfeign:服务之间调用 nacos discovery:服务注册与发现 nacos config:配置中心 gateway:服务网关 sentinel:服务限流 loadbalancer:负载均衡 官方文档
阅读全文
摘要:nacos整合gateway gateway 配置uri时:使用注册中心应用名称 出现 503 问题 其原因缺少负载均衡器 Ribbon springcloud2020之后已经移除 替代品为loadbalancer 依赖: <dependency> <groupId>org.springframew
阅读全文
摘要:list转map @Data public class Person { private String id; private String name; private int age; public Person(String id, String name, int age) { this.id
阅读全文
摘要:consul 集成openfeign 依赖如下: <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-depe
阅读全文
摘要:api请求类型类注解 @Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) public @interface ApiEvent { String[] value() default {"BASE"}; } API接口servic
阅读全文