00:00
好,那在咱们讲完这个解康测之后啊,接下来呢,咱们来讲解一个,呃,另一个就是更强大的可视化的一个性能监控工具,叫做V10VM,那这个工具的话呢,咱们实际上在讲上上品,讲到这个内存结构,讲到这个JC的时候呢,实际上咱们带着大家呢,使用过这个VVM对吧?那这块呢,我们就正式的来对它呢进行一个介绍,好那我们来这块看一下,说这个微瘦VM呢,它是一个功能强大的多合一的,那故障诊断和性能监控的一个可视化工具啊,这里边有好几个这个重点的这个词是吧。呃,这里边儿提到这个多和一,那言外之呢,就是这个VVM呢,它有多种功能,那另外一个层面,这个多呀,大家可以理解成是对咱们前面一章讲解到了很多的是命令行的工具是吧,那么每一个命令行工具呢,都可以看成是一个单独的一,那这里的多合一呢,呃,就是把刚才提到的这些工具呢,我们都可以在咱们这个V收VM当中进行一个体现。
01:00
哎,这个呢,就是多合一的一个意思啊,可视化的就GY是吧,有图形化界面了啊,这个故障的一个诊断性能的一个监控,好那下边我们来看看具体的都有哪些功能呢?那这呢我们做了一个罗列,比如说呢,我们可以显示这个虚拟的进程,咱们在上一章中讲到是不是就GPS这个功能对吧,显示这个进程的,那以及呢,这个进程的一个配置和环境信息,比如说你的设置的相关的这个参数信息,那我们就可以通过这个几缝呢进行一个查看。包括呢,我们使用这个GPS-V是不是也可以查看相关的一些参数信息,对吧,那这呢,就是提到了这俩功能的一个这个替换啊,那另外呢,我们还可以去监视应用程序的,像这个CPU啊,GC啊,堆空间方法区是吧,这一块这个这个占用的空间大小,使用的多少等等,这呢,我们就讲到了前一章中提到一个非常强大的工具,叫做j state,这个呢,也是咱咱们大家呢需要重点掌握的这样的一个工具啊,那以及呢,这个线程的一些信息,那线程这块呢,我们就使用的叫j stack了。
02:03
那现场比如说死索的这个问题,我们使用j sta呢可以监控到,那我们这呢,这个VVM呢,它也可以去监控这个死索问题,那这就相当于是一个故障的诊断是吧?哎,故障的一个诊断啊,那甚至呢,它可以去取代叫解康索,这个别说叫甚至了啊,它其实就是可以去取代这个解康索的啊解康素呢,算是一个比较简单的一个工具是吧?啊我们在这个上上一个这个内容当中也说到了,它是从这个GK5开始集成进来的,而我们这个呃微VM的话呢,它是从这个J6啊,就后来又来的。那大家呢,从这个角度上来看,你后来的这个总布置于功能比前一个还差吧。就最起码你是对前一个的补充对吧,那再或者的话呢,就是功能上完全这个也覆盖到前一个这个这个工具,那我们这个V10VM呢,就属于刚才说的第二种情况啊,这个相当于是能够替代我们这个解。呃,那再回过来说一句哈,就是咱们讲这个工具啊,那这一章说的挺多的是吧,那如果说大家呢,你嗯,你说我我最起码我得学一个工具是吧,那这时候大家学谁呢?那就应该学习这个叫V收VM啊,就是所有学习这个接触这个GM的应该都知道这个微收VM啊,你不可能不知道它首先呢,它是这个JDK自带的对吧?啊自带的这么几个里边呢,你得有一个最熟悉的康素啊,微VM呢,包括这个GMC啊啊,这都是自带的啊,那这里边我们说功能最强大的那就是这个哎未售VM,所以这个大家要会啊,那从JK6之后呢,它就作为一个独立的啊,咱们JDK的一部分啊,就是集中在JDK当中呢进行发布了,所以呢,大家就可以在我们这个JDK这个病目录下呢,就能够找到它啊这张。
03:42
找一下我这个位置啊。JDK。这呢,我是1.8的啊,B目录下找我们这个呃企微VM啊找到它了,那有同学会说怎么这前面有个勾,你这一会念一会不念的是什么情况呢?诶这里边我们要说一下这个微VM呢,它其实是一个独立的软件啊,大家也可以呢,是不是搜索我下边给的这样一个地址,是不是直接呢,通过这个相应的这个网站进行一个独立软件的一个下载,对吧?你看这呢,我们称为呢叫VVM呢,但是这个VCVM呢,它不是刚才提到了作为JDK一部分进行发布了,那这时候呢,我们就在这个B目录下呢去体现了,而B目录下体现的这些工具呢,通常大家会发现呢,它有一个勾开头的是吧,所以我们就在这个VVM前面呢,加了个勾啊,就称为呢叫解VVM了,所以呃,一说解VVM或者说VVM,哎,大家知道说的其实是一个意思就行。
04:36
啊,一个意思就行啊,那比如说你像我这块呢,诶我这儿呢,属于这个快捷键了啊,上边这个呢,就是属于我独立安装了一个叫V10VM是2.0.4这个版本,然后下边这个呢,就是我从这个JDK这个并目录下呢,这个诶复制过来的一个快捷方式啊,所以这呢就一个是客户端,一个呢是我们JDK的一部分啊这样来呈现的。那至于时候呢,这个启动呢,呃,用哪个都行啊,就是我们JDK的B目录下呢,有你也可以呢,独立安装好以后呢,直接去点击启动也行啊,你像这里边呢,我们就直接可以进行下载了,现在最新的呢是2.0.5,哎,这个稍微关注一下这个事就行好,那如果我们要是使用咱们这个JDK里边呢,你就可以这个WIN2哎CMD一下,接着呢把这个勾带上啊啊V受。
05:21
啊,VM。好,这样的话呢,你看我们就把它呢启动起来了,哎,就是这样的一个整体的一个界面啊好这呢就是说的这个,呃,软件自己的这个问题,然后的话呢,我们说一下它的这个插件的一个情况啊,那体现这个微数VM它强大的另外一个特点呢,就是它支持我们插件的一个扩展。啊,知识插件扩展,那注意这里边儿咱们提对的插件呢,有两层含义。啊有两层含义,第一层含义呢,指的就是我们在这个VVM,它自己这个软件的基础之上,可以去安装插件。啊,可以去安装插件啊,那这个安装插件呢,又分为了两种情况啊,这个别迷糊啊,又分成两种情况,第一种的话呢,就是大家呢,可以按照我这里边给的这个地址啊,你CTRLV粘过来。
06:12
这个地址呢,就罗列出来了,咱们这个visual vm在github上面的关于它的插件的一个中心啊,你是针对哪个版本的,比如说像我刚才这块装的是一个,呃,2.0.4这个版本是吧,你就可以在这里边儿去点击一下2.0.4这个版本,然后这儿呢,就罗列出来了,我们这个微10VM呢,可以去安装的一些插件。啊,安装的一些插件,那大家会发现呢,是不是也比较多是吧?啊像这个微数GC啊,这个呢,是非常建议大家呢去安装的,咱们在讲这个上片的时候呢,也重点使用了这个微受JC啊,是一个可视度化的,哎,这个内存空间的一个,呃,这个柱状图是吧?哎,非常的清晰啊。好,这呢是我们一种这个下载插件的方式,还有一种方式呢,就是直接呢,大家打开这个客户端之后呢,这是不是有个工具啊哎,在工具插件这个位置呢,我们就可以呢去选择比如说可用的插件,那这呢,大家根据自己的需要呢,可以做个勾选,勾选完以后呢,去选择安装就可以了。
07:13
那如果说有的时候大家你安装可能自己网的问题哈,这个安装半天呢,就是下载不下来失败了,那你就可以考虑,建议大家你就直接在这勾就行哈,那你要是这个安装不成的话呢,呃,你再去刚才提到这个网站上,你去下载好以后呢,再把它那个诶加载进去就可以了。好,那这里边呢,需要重点说明一下,就大家呢,一定要把这个叫微JC这个插件呢,给它装上啊,把这个微JC你在这个位置呢,你要没装过,但是能看到这个微JC装上以后的话呢,我们在实际开发当中啊,监控方面呢,诶就非常常用的是VI jc也非常直观,OK,这儿呢,诶注意是咱们说的这个插件的第一种啊,第一层面的这个含义啊,是在我们这个VJC的基础上的装插件,然后另外一个插件的意思是什么呢?就是在咱们这个idea当中哈。
08:02
啊,这idea啊,这个有时候发音idea idea啊按键习惯idea了啊在这个idea当中呢,大家可以呢,去安装一下咱们这个呃,VI jc的这个插件啊,你看这里边呢,相当于我是不是已经安装好了,对吧?啊这个安装呢,怎么装呢?哎,这个就跟我们这个在idea中装其他这个插件呢,是一样的啊在这个plugins这里边呢,大家你在这块呢,去搜索一下这个visual vm。啊,搜索完以后呢,你直接进行安装就行。啊,直接进行一个安装就行,这个呢,应该不用给大家详细的去说了啊,这个在idea当中,大家插件应该多少都装过,呃,那装完以后呢,有一个小细节呢,就是需要大家来这配置一下哈,你要不配置的话呢,我们去点击这个小图标的时候呢,它没法去调用。我们这个B目录下的这个结尾,SOVM是吧。好,然后大家呢,你安装完以后的话呢,它就会在我们这个呃设置。哎,在设置的这个下拉框里边呢,就会有一个叫visual vm的一个launcher。
09:00
然后呢,大家这块需要配置两个位置,第一个呢,就是我们这个解VVM去调用这个命令,启动起来这个VVM的时候呢,在B录下B目录下的一个路径啊,再一个呢,就是我们这个JDK的一个home啊,这个就非常简单啊,然后你再呃确认一下就行。啊,确认一下就行,哎确认好以后的话呢,比如说我们哎打开相关的这个程序啊,这个我随便打开一个啊。好,这个程序的话呢,大家一方面呢,你可以直接点击它呢,就是要叫一个run啊,这个呢,相当于是一个debug一个功能,就是通过这样的两个工具呢,你做点击就能够把咱们这个诶微收VM呢就调用起来了,就不用大家像我一样,诶像刚才那从命令行里边去调用了啊,当然呢,这只是一个比较小的一个功能啊,就是你要说我我我就这个不装ID中这个插件了,我就直接呢从命令行去调可不可以,当然可以啊,这都是小事啊。好,这儿呢,是咱们说的一下这个关于这个插件的这个意思,然后的话呢,我们来看一下这个叫连接的一个方式啊,这个连接方式呢,跟咱们这个解康网是一样的啊,这个它支持呢两种方式,一个呢叫本地连接,一个呢叫做远程连接啊,那我们在这呢也能看到啊,左边呢呈现出来的啊,一个呢是叫本地的当前我们Java的这个进程。
10:15
啊,障碍这个进程,所以说呢,这里边儿这些显示是不是就类似于我们说的这个GPS啊。对吧,哎,GPS你看这块显示的是我们这个完整路径的啊嗯,行。那像我们刚才这块呢,比如说把这个程序呢,给它跑起来,我点一下这个run啊。好,启动完以后呢,大家再过来,这个时候呢,你会发现在我们这里就会多一个这个进程。轻松起来了是吧?诶这块啊在这儿呢是吧,哎在这儿呢,啊这个OM那就出来了,就相当于它是一个实时更新的啊,只要你有这个Java进程,GPS的这个操作呢,它就都能够呃调用,然后呢,显示我们这样的,呃,现有的这些活跃的进程。
11:00
好,这呢就有了,然后呢,它这里边还支持一个叫远程的一个监控啊,就是我们可以调用远程服务器上的相关的这个Java进程,我们去监控它的一个呃,这个性能的一个情况啊这儿呢,我们就诶不过多的去说这个远程的这个问题了,我这儿呢,把这个远程的这个操作这个步骤呢,给大家罗列出来了,这个在后续呢,我们实际生产案例当中给大家呢,再去讲解这个远程监控的时候呢,我们在做这样的一些操作啊,这儿呢,我只是把这个步骤呢给大家做这啊在这呢做了一个罗列啊,在这做了一个罗列,就按照这样的一个过程啊去操作就行,那如果说面试你,呃面试里边呢,问到大家说诶使用这个微VM呢,如何进行远程的连接,大家呢,就可以按照这样一个步骤呢,进行一个说明啊,比较重要的就是一个呢,连接这个远程的时候呢,我们需要去修改这个B目录,下载凯琳A这样的一个ISH这个文件。啊,然后呢,去设置一下我们这个登录的这个用户名啊密码呀,来这样的信息,呃,然后呢,这个去呃监听我们这个端口啊,启动日志文件进行一个查看呀等等啊就可以了,最后呢,是一个信息的输入就可以进行监控。
12:05
好,这个呢,我们这个实际呃,生产生产环境,我们举案例的时候呢,再给大家去做举例子啊,现在的话呢,我们重点呢,是说一下这个VVM呢主要的一些功能。行,那接下来的话呢,我们就以这个本地啊,咱们这里边儿写的这样几个程序呢,给大家呢,去稍微的讲解一下咱们这个微收VM的一些主要功能啊,这呢是我们先简单的一个介绍。
我来说两句