开源Java诊断工具Arthas:开篇之watch实战
还在为排查Java程序线上问题头痛吗,看我们用阿里开源的诊断神器 Arthas 来帮您
简单好用的ElasticSearch可视化工具:es-client和Head
使用 ElasticSearch(简称 es) 的过程中,经常有一些临时查询(如 排查问题、验证效果),一个趁手的可视化工具 可以提高工作效率。个人倾向于 免费(最好开源)、易于安装(如 浏览器插件),`es-client` 就是 比较简单好用的一个,尤其是 查询
HTTP接口性能压力测试
开发接口以后,对性能有要求的 接口,需要做 性能压力测试。常见免费的如:经典的 ab,性能不太好的 jmeter、siege(有时候都怀疑程序性能不行了),另介绍 hey、k6、vegeta、wrk
Java程序性能分析:内存
开发Java项目过程中,难免会碰到一些 性能 问题,这时候就需要一些工具,帮忙排查。本文主要介绍 JDK自带的上古神器 jstat、jmap,另简单介绍 MAT、gceasy、HeapDump 等
开源数据集成平台SeaTunnel:MySQL实时同步到es
免费支持 MySQL 实时同步到 ElasticSearch 的工具很少,Apache SeaTunnel 是一个高性能开源大数据集成工具,提供灵活易用、易扩展并支持千亿级数据集成的解决方案,已经在B站、腾讯云、字节等数百家公司使用。
Java程序性能分析:开篇之jps
开发Java项目过程中,难免会碰到一些 性能 问题,这时候就需要一些工具,帮忙排查。本文开篇主要介绍 JDK自带的工具 jps,获取 Java程序列表,后面将继续介绍 JDK自带、第三方的 性能分析工具,敬请期待哦
Java并行流指北
Java并行流,方便了 并发操作,但是不注意可能会导致问题。如 最大线程数,怎么控制并发数,类加载器,线程上下文变化,ForkJoinPool 的 execute、submit、invoke 方法的区别 等。
Java代码性能测试实战之ContiPerf
最近测试一个开源项目,发现生成的 全局id 有重复,方法加上 synchronized 提交PR后,有些同行对性能有疑虑,就准备做个 代码性能测试。Java基准性能测试 一般用 JMH 比较多,但是 官方建议 性能测试单独一个项目,感觉麻烦了点。发现 ContiPerf 可以方便的设置 执行次数、时长、线程数、预热时长,还有 Html格式报告,感觉还比较适合,基于 Junit
Testng和Junit5多线程并发测试对比
最近测试一个开源项目,发现生成的 全局id 有重复,也没有单元测试,就准备贡献个 PR。想到多线程并发测试,根据经验,第一想法是用 Testng,后面看了下 Junit5也有实验性支持了,就对比下(以 maven 为例)
轻量级分布式日志追踪-Tlog快速入门
公司目前还没有上 SkyWalking、Pinpoint等分布式追踪系统,所以先用个轻量级的吧。Tlog 只生成TraceId写入日志文件,没有 收集、存储、查询,所以 轻量
多模块项目使用枚举配置spring-cache缓存
1. 近期被刷接口了,考虑增加 本地缓存提高性能,另配置 限流;2. 使用 spring-cache 注解式缓存,可以提高使用缓存的开发效率;3. 不同业务,可以定制 自己的缓存策略,是基本需求;4. 多模块项目,最好在 统一的模块(如 common) 加载缓存配置
Kubernetes(k8s)最大启动时长研究
Kubernetes(k8s) 环境中,应用 最大启动时长研究
怎么把Java枚举名称作为注解的属性值
Java注解的属性值,必须为 常量。有些场景想把 枚举名称 设置为 注解的属性值(如 spring-cache 用枚举配置缓存,使用时 需要 缓存名称)
spring boot使用Java并行流发送kafka消息报错
spring-boot-maven-plugin打包,使用Java并行流多线程发送kafka消息,刚开始发送时报错,Invalid value org.apache.kafka.common.serialization.StringSerializer for configuration key.serializer: Class org.apache.kafka.common.serialization.StringSerializer could not be found.
用easy-es简化ElasticSearch操作
ElasticSearch的Java客户端中,spring-data-elasticsearch 简化了 增删改、建索引等,没有简化 复杂查询 编码。easy-es API 类似 Mybatis-Plus,大幅降低开发门槛,减少代码量,支持 自定义排序、权重、原生查询,留下了 广阔的调整空间