java框架学习
决决怪
这个作者很懒,什么都没留下…
展开
-
linux查看java堆栈
1、查看JAVA进程JVM参数jinfo -flags pid(进程号)-XX:CICompilerCount=2 最大的并行编译数-XX:InitialHeapSize=16777216 JVM 的初始堆内存大小-XX:MaxHeapSize=257949696 JVM 的最大堆内存大小-XX:MaxNewSize=85983232-XX:MinHeapDeltaBytes=196608-XX:NewSize=5570560-XX:OldSize=112066562、JVM 查看.原创 2020-10-28 15:02:54 · 3958 阅读 · 0 评论 -
springBoot使用guava的令牌桶机制实现限流
guava是谷歌提供的一RateLimiter,指定一个qps的值,请求来需要acquire获取令牌,直到令牌重新填充才得到放行。tryAcquire方法的话,可以指定一个等待时间,并返回一个Boolea值。套框架,我们这里需要用到的是它的限流器:不足之处:所有的请求进来都是调用acquire。无法根据ip或者其他的类型关键字来区分。所以我们引入了缓存,类似HashMap,针对不同的关键字(本文使用方法名)生成不同的限流器。1、引入配置依赖低版本没有RateLimiter方法,版本不对时...原创 2020-08-28 15:26:34 · 706 阅读 · 0 评论 -
SpringBoot使用redis+lua实现限流或重复提交
本文主要演示了 Spring Boot 项目如何通过 AOP 结合 Redis + Lua 脚本实现分布式限流,旨在保护 API 被恶意频繁访问的问题; 1、redis 配置文件@Configurationpublic class RedisConfig { @Bean public RedisScript<Long> limitRedisScript() { DefaultRedisScript redisScript = new Defau...原创 2020-08-28 11:20:55 · 983 阅读 · 2 评论 -
springboot实现logback日志
在resources目录下创建logback.xml日志具体配置内容如下:<?xml version="1.0" encoding="UTF-8"?><configuration> <!-- %m输出的信息,%p日志级别,%t线程名,%d日期,%c类的全名,%i索引【从数字0开始递增】,,, --> <!-- appender是configuration的子节点,是负责写日志的组件。 --> <!-- ConsoleA转载 2020-08-13 10:27:54 · 153 阅读 · 0 评论 -
SpringBoot实现简单上传功能
# Getting Started# spring boot 实现简单上传1、pom.xml文件添加依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency>2、yml文件添加.原创 2020-08-13 09:04:20 · 206 阅读 · 0 评论 -
使用SpringBoot快速构建WebSocket项目
目前大数据越来越火爆,大量的数据墙如何快速构建完成,webSocket将是至关重要的一环。、github地址:git@github.com:juejuedog/SpringBootDemo.git1、首先要引入webSocket的依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-websocket&l原创 2020-07-24 15:20:28 · 939 阅读 · 0 评论 -
springboot快速构建mybatisplus项目+问题汇总
对比现在常用的mybatis,mybatisPlus可以帮助我们更加专注业务的开发,减少sql文件的编码。下面就使用SpringBoot+ mybatisPlus 构建一个项目。1、构建过程中遇到的问题汇总(1)启动报错问题添加依赖<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId.原创 2020-07-17 17:06:11 · 650 阅读 · 0 评论 -
Spring Boot 如何快速实现定时任务
## pom.xml```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 http://maven.apache..原创 2020-07-15 11:48:27 · 117 阅读 · 0 评论 -
SpringBoot+redis:内缓存的使用与Cache注解详解
随着时间的积累,应用的使用用户不断增加,数据规模也越来越大,往往数据库查询操作会成为影响用户使用体验的瓶颈,此时使用缓存往往是解决这一问题非常好的手段之一。Spring 3开始提供了强大的基于注解的缓存支持,可以通过注解配置方式低侵入的给原有Spring应用增加缓存功能,提高数据访问性能。在Spring Boot中对于缓存的支持,提供了一系列的自动化配置,使我们可以非常方便的使用缓存。下面我们通过一个简单的例子来展示,我们是如何给一个既有应用增加缓存功能的。1、创建User实体类2、添加配置原创 2020-07-14 22:21:13 · 381 阅读 · 0 评论