技术与生活
开发实践、AI 工具、乡音与读书。
开发实践
7–12 / 13 篇
开发实践
全局视角看技术-Java多线程演进史
2022年09月22日,JDK19发布了,此版本最大的亮点就是支持虚拟线程,从此轻量级线程家族再添一员大将。虚拟线程使JVM摆脱了通过操作系统调度线程的束缚,由JVM自身调度线程。其实早期sun在Solaris操作系统的虚拟机中实现过JVM调度线程,基于其复杂性,和可维护性考虑,最终都回归到了由操作系统调度线程的模式。
开发实践
SpringBoot 构建 Docker 镜像的最佳 3 种方式
本文将介绍3种技术,通过 Maven 把 SpringBoot 应用构建成 Docker 镜像。 (1)使用 spring-boot-maven-plugin 内置的 build-image. (2)使用 Google 的 jib-maven-plugin。 (3)使用 dockerfle-maven-plugin。
开发实践
rabbitmq消费者“无故消失”
9月1号17:12左右,发现影子队列存在大量“unacked”(收到了消息,但是还没有手动确认消息)的消息,一段时间后“unacked”的数量没有减少,但是观察消费者端的日志,并没有新消息进来, 原因竟是。。。
开发实践
把网站的图片升级到WebP格式吧
WebP是Google开发的一种新的图片格式,它支持有损压缩、无损压缩和透明度,压缩后的文件大小比JPEG、PNG等都要小。所以可以节省带宽,减少页面载入时间,节省用户的流量。 Android和iOS的app只要引入Google提供的解码库,都可以很轻松的支持WebP格式。不过在web上,WebP的支持还不是很广泛,根据Can I Use的数据,目前只有Chrome、Opera浏览器,以及Android的WebView是支持WebP的。但是WebP图片有这么多优点,我们能不能在web页面中使用呢?
开发实践
Spring Cache使用介绍
springcache 是spring3.1版本发布出来的,他是对使用缓存进行封装和抽象,通过在方法上使用annotation注解就能拿到缓存结果。正时因为用来annotation,所以它解决了业务代码和缓存代码的耦合度问题,即再不侵入业务代码的基础上让现有代码即刻支持缓存,它让开发人员无感知的使用了缓存。