跳到正文

在CentOS上导出JVM内存信息

WeMedia

首先看下Tomcat的进程Id:

[root@iZ25Z ~]# ps aux | grep java
www       2111  4.0 23.5 1637648 452756 ?      Sl   10:12   4:35 /usr/java/jdk1.7.0_80/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties ...

可以看到Tomcat的进程Id是2111, 然后用JDK自带工具jmap来导出整个JVM 中内存信息:

# jmap -dump:format=b,file=文件名  [pid]

jmap -dump:format=b,file=mm.hprof 2111

然而我们却得到了这个提示:

jmap -dump:format=b,file=mm.hprof 2111
2111: Unable to open socket file: target process not responding or HotSpot VM not loaded
The -F option can be used when the target process is not responding

这是因为我是以root这个用户执行的这个语句,但我的tomcat进程是以www用户运行的(用 ps aux | grep java 便能看到)。我们可以在机器上找到 /tmp/hsperfdata_$USER/$PID一个这样的文件,当我们执行jmap出现上述信息时,先检查执行该命令的用户是否和hsperfdata_$USER这个文件所属的用户一致,如果不一致,切换成一致再执行即可,或者根据提示,直接加个 -F 参数即可:

jmap -F-dump:format=b,file=mm.hprof 2111

man page对这个选项的说明是:

-F Force. Use with jmap -dump or jmap -histo option if the pid does not respond. The live suboption is not supported in this mode.

关于Linux运行级别和独立服务的自启动

运行级别是基于Unix的操作系统运行的模式之一。每个运行级别都有一定数量的服务停止或启动,从而使用户能够控制机器的行为。 通常,存在七个运行级别,从零到六。 Linux内核启动后,init程序读取/etc/inittab 文件以确定每个运行级别的行为。 除非用户将另一个值指定为内核启动参数,否则系统将进入(启动)默认的…

WeMedia

如何在CentOS上安装ImageMagick + PHP Imagick

ImageMagick是一个图像开发套件,允许您创建,操作或转换位图图像。 它支持许多常见的图像格式,例如:GIF,JPEG,JPEG-2000,PDF,PNG,SVG,TIFF,DPX,EXR等等。 ImageMagick非常适用于旋转,镜像,调整大小,绘制,为您的图像应用更多的特殊效果。您可以从命令行使用Image…

Mac 如何把程序加到桌面?或是在桌面增加捷径

刚从 Windows 跳槽到 Mac 的用户,第一个要习惯的就是「程序的位置」;因为 Windows 的软件除了放在「开始」菜单中以外,通常也会在桌面上有一个个的程序捷径,但 Mac 的用户却习惯在桌面上放「文件」而非「程序捷径」,因此很多刚跳槽的新手总是会看着空荡荡的桌面无所适从。 其实,Mac 也是可以在桌面上放上…

newsman

如何指定 Mac 上文件偏好打开的程序?

相信大家在 Mac 上都有自己偏好打开的程序,比如说我习惯视频档都使用「IINA」打开,但是 macOS 总是用缺省「QuickTime」来打开,有没有什么方法让 macOS 都用我偏好的程序打开呢?现在就来看看要怎么设置。 如何设置 Mac 上文件偏好打开的程序? 我们先用 .mov 的视频文件来示范,当然不同类型的…

newsman