我有点想用JDK17了

大家好呀,我是summo,JDK版本升级的非常快,现在已经到JDK20了。JDK版本虽多,但应用最广泛的还得是JDK8,正所谓“他发任他发,我用Java8”。 其实我也不太想升级JDK版本,感觉投入高,收益小,不过有一次我看到了一些使用JDK17新语法写的代码,让我改变了对升级JDK的看法,因为这些

jdk17下netty导致堆内存疯涨原因排查

# 背景: ### 介绍 天网风控**灵玑**系统是基于内存计算实现的高吞吐低延迟在线计算服务,提供滑动或滚动窗口内的count、distinctCout、max、min、avg、sum、std及区间分布类的在线统计计算服务。客户端和服务端底层通过netty直接进行tcp通信,且服务端也是基于net

从JDK8升级到JDK17

一、概述 鉴于JDK8已经是老古董,还有性能问题,兼且各个公司已经不再维护1.8的JDK,所以升级公司的核心产品之一的后端到JDK到17是相对要紧的事情。 通过升级到jdk17,具有以下好处: 不要在头疼同时适应两个jdk,放下适应JDK8的负担 在生产环境基本上只需要部署一个jdk即可 具有更好的

JDK8到JDK17有哪些吸引人的新特性?

本文主要介绍JDK8到JDk17近200个JEP中比较有价值的新特性(按照价值从高到低排序),这里有一部分特性作者也在线上环境使用过,也会将其中的使用心得分享给大家。

记录一次WhatTheFuck经历

起因 很早之前就一直在维护一个git仓库,平时调研什么组件就会在里面新建一个springboot的工程用来编写示例代码。 最一开始使用的是SpringInitializr,后来网站更新之后,只能生成JDK17+的工程,WhatTheFuck?近期刚从8切换到11. 于是弃用并改用 StartAliy

inno Setup 打包Java exe可执行文件和MySQL数据库,无需额外配置实现一键傻瓜式安装

前言 出现有需要打包 Java 应用和 Mysql数据库成一个安装包给出去的需求,这里我把整个打包的流程整理一下。 环境 JDK17; MySQL 5.7; 流程 Jpackage打包EXE Jpackage是JDK14后加入的一个用于独立打包的工具,能够将应用打包成exe,有了Jpackage就不

SPECJVM2008的简单结果

SPECJVM2008的简单结果 摘要 前面两天学习了SPECJVM2008简单使用. 今天进行一下简单的数据采集. 需要说明一下SPECJVM2008貌似仅兼容JDK1.8 更新的LTS版本都不兼容,比如JDK11和JDK17 背景 我这边先测试使用 startup 的测试脚本 startup 主

[软件下载] 常用软件安装包链接-阿里云盘

1、Typora导出文件安装包Pandoc 2、JDK1.5 3、JDK17 4、JDK8 5、redis客户端工具RedisDesktopManager 6、数据库链接工具DBeaver 7、Typora带序列号破解 8、ApiPost 接口测试工具 9、IDEA2021+破解工具 10、mysq

JDK1.6在生产环境引起的坑

JVM优化的目标就是:尽可能让对象都在新生代里分配和回收,尽量别让太多对象频繁进入老年代,避免频繁对老年代进行垃圾回收,同时给系统充足的内存大小,避免新生代频繁的进行垃圾回收。

聊聊JDK19特性之虚拟线程

在读《深入理解JVM虚拟机》这本书前两章的时候整理了JDK从1.0到最新版本发展史,其中记录了JDK这么多年来演进过程中的一些趣闻及引人注目的一些特性,在调研JDK19新增特性的时候了解到了虚拟线程这个概念,于是对虚拟线程进行学习整理内容如下。

StampedLock:JDK1.8中新增,比ReadWriteLock还快的锁

摘要:StampedLock是一种在读取共享变量的过程中,允许后面的一个线程获取写锁对共享变量进行写操作,使用乐观读避免数据不一致的问题,并且在读多写少的高并发环境下,比ReadWriteLock更快的一种锁。 本文分享自华为云社区《一文彻底理解并发编程中非常重要的票据锁——StampedLock》

支持JDK19虚拟线程的web框架,之一:体验

随着JDK19的发布,虚拟线程也逐渐被大家了解和使用,然而,主流java框架是否支持虚拟线程这一特性呢?咱们应用开发者如何通过框架使用虚拟线程特性?经过精心准备,欣宸原创在第一时间为您带来详细的实战系列,与您共同学习,窥探虚拟线程技术的未来

支持JDK19虚拟线程的web框架,之二:完整开发一个支持虚拟线程的quarkus应用

本篇咱们从零开发一个quarkus应用,支持虚拟线程响应web服务,响应式操作postgresql数据库,并且在quarkus官方还未支持的情况下,率先并将其制作成docker镜像

支持JDK19虚拟线程的web框架,之三:观察运行中的虚拟线程

本篇借助JProfiler工具,从线程的观察结果去印证官方资料,做到理论结合实践,让您领先一步,掌握和了解神秘的虚拟线程内幕

支持JDK19虚拟线程的web框架之四:看源码,了解quarkus如何支持虚拟线程

quarkus是如何支持虚拟线程的呢?今天咱们一起来阅读quarkus源码,学习从框架开发视角去添加新特性,除了开阔眼界,也为为自己的设计能力提升增加有效的参考信息

支持JDK19虚拟线程的web框架,之五(终篇):兴风作浪的ThreadLocal

ThreadLocal,这个多线程场景中重要的特性,在虚拟线程领域兴风作浪,为了应付它,quarkus也是够拼,今天咱们就来聊聊这个话题,在轻松的气氛中结束《支持JDK19虚拟线程的web框架》系列

支持JDK19虚拟线程的web框架,之一:体验

随着JDK19的发布,虚拟线程也逐渐被大家了解和使用,然而,主流java框架是否支持虚拟线程这一特性呢?咱们应用开发者如何通过框架使用虚拟线程特性?经过精心准备,欣宸原创在第一时间为您带来详细的实战系列,与您共同学习

支持JDK19虚拟线程的web框架,之二:完整开发一个支持虚拟线程的quarkus应用

本篇咱们从零开发一个quarkus应用,支持虚拟线程响应web服务,响应式操作postgresql数据库,并且在quarkus官方还未支持的情况下,率先并将其制作成docker镜像

支持JDK19虚拟线程的web框架,之三:观察运行中的虚拟线程

本篇借助JProfiler工具,从线程的观察结果去印证官方资料,做到理论结合实践,让您领先一步,掌握和了解神秘的虚拟线程内幕

支持JDK19虚拟线程的web框架,之四:看源码,了解quarkus如何支持虚拟线程

quarkus是如何支持虚拟线程的呢?今天咱们一起来阅读quarkus源码,学习从框架开发视角去添加新特性,除了开阔眼界,也为为自己的设计能力提升增加有效的参考信息