以前开发Java用IDEA,但今天license过期了,又懒得购买激活码,遂拥抱VS Code。经过使用后,体验非常完美! 一、环境搭建与配置 1、openJdk/maven安装 略。博主安装的版本见下: 2、vs code插件安装; 经过调研,VS Code仅需要安装三个插件:Extension Pack for Java、Spring Boot Extension Pack、Lombok Annotations Support for VS Code Extension Pack for Java包含了: La…
项目中,希望后端API返回的日期、数字格式统一,则需要用到以上注解。 @DateTimeFormat @DateTimeFormat可以自定义日期的序列化样式,基本用法自行百度。 @NumberFormat @NumberFormat可以自定义数字的序列化样式,基本用法自行百度。
一、算法原理 总长度64位,从低位到高位依次划分为: 1)0~11位(共12bit)表示序列号,最大值2^12=4096,意味着在一个时间单位(我们用毫秒,当然你也可以用秒)内最多可以生成4096个ID; 2)12~21位(共10bit)表示机器id,最大值2^10=1024,意味着可以在1024台机器上部署我们的算法,当然了,像我所在的团队,一个应用能有4台机器就是“富农”了,6台都能成“地主”了,所以丝毫不用担心。 3)22~62位(共41bit)表示时间戳,最大值2^41=2 199 023 255 552(…
问题现象 某服务启动后,一直报错“org.springframework.amqp.AmqpConnectException: java.net.ConnectException: Connection refused: connect“,但本项目pom.xml内未依赖任何amqp的包。 常规检查上游自己开发的lib后,并未检查出问题,遂陷入胶着状态。 尝试使用IDEA显示依赖树后,排查解决该问题。 解决路径 通过IDEA判断,发现项目依赖spring-boot-starter-amqp 打开IDEA Maven依…
JMH简介官网:http://openjdk.java.net/projects/code-tools/jmh/ 简介:JMH is a Java harness for building, running, and analysing nano/micro/milli/macro benchmarks written in Java and other languages targetting the JVM,由简介可知,JMH不止能对Java语言做基准测试,还能对运行在JVM上的其他语言做基准测试。而且可以分析…
随着宇宙的发展,我方系统受到阿尔法星系影响,吞吐量不足支撑与时俱进的数据要求。 以前的数据分发采用Redis,现在Redis变成了瓶颈之一,遂优化之。 初步思路是设计L1本地Cache,L2网络RedisCache,优先命中L1,以提高QPS。 一、常见缓存介绍 2.1 caffeine Caffeine提供了多种灵活的构造方法,从而可以创建多种特性的本地缓存。 自动把数据加载到本地缓存中,并且可以配置异步; 基于数量剔除策略; 基于失效时间剔除策略,这个时间是从最后一次操作算起【访问或者写入】; 异步刷新; Ke…