概述

前段时间微信小程序突然火了,某天公众号突然收到个消息,说可以绑定微信小程序了,还可以面向个人,对新鲜玩意我向来比较有兴趣,很想尝鲜一下,于是想我可以捣鼓个怎样的小程序来玩玩呢?

正巧有人发了封邮件给我询问GC相关的问题,我告诉他一个JVM参数能解决掉了,再想想这块确实困扰过大部分有调优经历的JAVA程序猿们,那做一个JVM参数相关的小程序吧,毕竟大家都认为我的公众号【你假笨】是一个围绕JVM做分享的实战型技术公众号,还是为我公众号的订阅兄弟们,为JAVA社区的小伙伴们在JAVA领域做点贡献吧

我正式做Java差不多7年了,对Java有着比较深的情结,之前一直停留在上层做中间件,后面因工作需要又转做JVM,这些年查了不少问题,积累了不少经验,对Java的了解程度也越来越深,一开始碰到GC的问题,也是各种查资料,查代码,找参数,慢慢地只要一看到现象会有相关的参数浮现出来,所以做这个应该还是可以造福大家的

既然定下来要做这个,那产品主要做什么,解决哪些痛点呢,试想我们平时针对JVM参数都有些什么疑惑?

哎呀,这个JVM参数是什么意思?

怎么一升级JDK版本这个参数的默认值变了?

怎么来使用这个参数?

这个参数使用的时候要注意些什么?

聊聊JVMPoeckt(JVM口袋)

这个产品,不,其实应该说是个小工具,我希望它能解决上面的这些问题,更希望大家看到或者想到JVM参数能想到JVMPocket(JVM口袋或许好记些,不过口袋得换成英文),顾名思义是口袋里的JVM,大家随时随地都能掏出手机解决某些JVM相关的问题,当然现在能解决的问题还很有限

主要提供的能力包括如下几点:

查询参数的具体含义

查询每个参数在不同平台不同版本上的默认值

查询参数怎么使用的

给予这个参数一定的建议

假笨说-查JVM参数找JVMPocket(JVM口袋)小程序吧插图JVMPocket交易担保放心买JVM参数锦囊假笨说-查JVM参数找JVMPocket(JVM口袋)小程序吧插图1小程序

可点击上面小程序进入体验

下面是我在这个小程序上的一些思考

V0.1

我初的设计思路是两个菜单

手动输入参数或者参数列表

拍照图像识别参数

不过从实际体验来看,手动输入实在太麻烦,毕竟在手机上操作不是很顺嘛(我对参数相对熟点,所以能很快输入,所以一开始这个问题没看太重),拍照识别那个虽然很符合手机端体验,但是我短时间无法做得很好,还得找个时间弄弄

于是我花了一个的时间完成了个版本,发布上去了,在我的微信公众号菜单里加了一项菜单

假笨说-查JVM参数找JVMPocket(JVM口袋)小程序吧插图2

V0.2

虽然发出去了,但是没有通知大家有这么个东西,所以大部分时间还是我自己在玩,当然每天还是有点人来玩的,用着用着我发现了一些问题:

虽然大小写可以不敏感,但是每次都要参数输全,还是比较蛋疼的

很多用户根本不知道要输入什么,所以只能乱输,比如123,abc啥的

于是新的版本想解决掉这些问题

用户可以输入参数名称的部分内容,后端自动做匹配,找出匹配度高的那个参数

用户可以默认不输入内容,当输入为空直接点击查询的时候,默认提供几个参数的输出结果

这个版本上去之后,自己用得都爽多了,总算可以让不知道参数是什么的人能看到个大概效果了

假笨说-查JVM参数找JVMPocket(JVM口袋)小程序吧插图3

V0.3

后面有不少人反馈,其实大家都不知道有哪些参数,虽然随便输入个参数能看到某个匹配的参数的结果,但是这个并不一定是他们想查询的参数,图像识别功能还未提供,所以还是先提供一个参数列表的页面,参数根据首字母排序,可以通过首字母定位到具体的首字母是它的参数列表,然后选中某个参数列出某个参数的结果

这个上去之后大家至少不需要自己输入参数了,而且能找到自己想找但是一直模凌两可的参数了

假笨说-查JVM参数找JVMPocket(JVM口袋)小程序吧插图4

后续

目前还只发布了3个版本,后续有时间我还会做更多的优化,包括用户体验的,包括产品完善的,比如参数建议里提供更多的经验等

另外大家觉得还有个更大的问题是我不知道我要用什么参数来解决我现在碰到的问题,我想说这个真的需要积累,说实话我很多参数也没用过,凭我在阿里解决这么多年的问题经验来看,其实常见的那些个参数摸透了也差不多了,所以后续可能还会专门提取出这些常用的参数出来给大家强调学习

希望听到大家使用后的反馈来不断完整这个小程序

如何找到JVMPocket

目前产品这个效果,欢迎大家试玩,希望大家想到JVM参数想到JVMPocket,可以通过如下途径找到这个小程序

在微信上直接搜索『JVMPocket』

关注我公众号的用户通过我的公众号里的菜单『JVM口袋』进入,也可以通过

未关注我的用户,当然可以先关注,如果实在不想,可以搜索我的微信公众号『你假笨』,在关注页面里会有个『相关小程序』,点击直接进入,不过您要是觉得『JVMPocket』好记,还是直接搜更方便

写在后

多的也不多说啦,还是那句话,希望大家想到JVM参数想到JVMPocket,有JVM的疑难问题先看看公众号『你假笨』上是否发过类似的文章

对了,看到上上篇文章访问量挺高假笨说-又抓了一个导致频繁GC的鬼–数组动态扩容,但是其中有些内容不够严谨,在上篇文章假笨说-关于数组动态扩容导致频繁GC的问题,我还有话说里做了补充说明,对之前那篇文章有过印象的建议看下这篇文章,其中提到了一个CMS的JVM参数,大家可以结合这个小程序了解下,哈哈

本人其他JVM相关文章

假笨说-关于数组动态扩容导致频繁GC的问题,我还有话说

假笨说-又抓了一个导致频繁GC的鬼–数组动态扩容

假笨说-类初始化死锁导致线程被打爆!打爆!爆!

假笨说-谨防JDK8重复类定义造成的内存泄漏

假笨说-从一起GC血案谈到反射原理

假笨说-我是如何走上JVM这条贼船的

假笨说-从X86指令深扒JVM的位移操作

JVM源码分析之一个Java进程究竟能创建多少线程

JVM源码分析之String.intern()导致的YGC不断变长

JVM源码分析之不保证顺序的Class.getMethods

JVM源码分析之Metaspace解密

JVM源码分析之临门一脚的OutOfMemoryError完全解读

JVM源码分析之不可控的堆外内存

JVM源码分析之jstat工具原理完全解读

JVM源码分析之JDK8下的僵尸(无法回收)类加载器

JVM源码分析之栈溢出完全解读

JVM源码分析之Attach机制实现完全解读

JVM源码分析之自定义类加载器如何拉长YGC

JVM源码分析之FinalReference完全解读

JVM源码分析之javaagent原理完全解读

JVM源码分析之Object.wait/notify(All)完全解读

JVM源码分析之堆外内存完全解读

JVM源码分析之SystemGC完全解读

JDK8在泛型类型推导上的变化

YGC前后新生代变大?

消失的死锁

进程物理内存远大于Xmx的问题分析

不可逆的类初始化过程

JDK的sql设计不合理导致的驱动类初始化死锁问题

如何定位消耗CPU多的线程

Java的时间为何从1970年1月1日开始

欢迎各位关注个人微信公众号,主要围绕JVM写一系列的原理性,性能调优的文章

假笨说-查JVM参数找JVMPocket(JVM口袋)小程序吧插图5

作者 nasiapp

在线客服
官方客服
我们将24小时内回复。
12:01
您好,有任何疑问请与我们联系!

选择聊天工具: