hcache

Linux用户可能经常遇到的一个问题是内存大部分都被Buff和Cache占用了,但是有时候我们想知道到底Cache了些什么内容却没有一个直观好用的工具。今天给你介绍一个可以查看Linux当前缓存了哪些文件的小工具hcache。

hcache是基于pcstat的,pcstat可以查看某个文件是否被缓存和根据进程pid来查看都缓存了哪些文件。hcache在其基础上增加了查看整个操作系统Cache和根据使用Cache大小排序的特性。

官网:https://github.com/silenceshell/hcache

安装

hcache是使用GO开发的,安装非常简单,开箱即用。

$ wget http://7xir15.com1.z0.glb.clouddn.com/hcache
$ chmod +x hcache
$ mv hcache /usr/local/bin/

使用

查看使用Cache最多的3个进程。

$ hcache --top 3
+----------------------+----------------+------------+-----------+---------+
| Name                 | Size (bytes)   | Pages      | Cached    | Percent |
|----------------------+----------------+------------+-----------+---------|
| /usr/bin/kubelet     | 138647424      | 33850      | 11751     | 034.715 |
| /usr/bin/dockerd     | 39473368       | 9638       | 6574      | 068.209 |
| /usr/lib/snapd/snapd | 18977392       | 4634       | 4505      | 097.216 |
+----------------------+----------------+------------+-----------+---------+

默认情况下会显示cache文件的全路径,会比较长。可以使用--bname选项来仅显示文件名。

$ hcache --top 3 --bname+---------+----------------+------------+-----------+---------+
| Name    | Size (bytes)   | Pages      | Cached    | Percent |
|---------+----------------+------------+-----------+---------|
| kubelet | 138647424      | 33850      | 11751     | 034.715 |
| dockerd | 39473368       | 9638       | 6574      | 068.209 |
| snapd   | 18977392       | 4634       | 4505      | 097.216 |
+---------+----------------+------------+-----------+---------+

查看指定进程的Cache使用情况。

$ hcache -pid 1397 -bname
+-----------------------+----------------+------------+-----------+---------+
| Name                  | Size (bytes)   | Pages      | Cached    | Percent |
|-----------------------+----------------+------------+-----------+---------|
| libm-2.23.so          | 1088952        | 266        | 185       | 069.549 |
| libstdc++.so.6.0.21   | 1566440        | 383        | 346       | 090.339 |
| libz.so.1.2.8         | 104824         | 26         | 26        | 100.000 |
| libdl-2.23.so         | 14608          | 4          | 4         | 100.000 |
| libwrap.so.0.7.6      | 36632          | 9          | 9         | 100.000 |
| libaio.so.1.0.1       | 5512           | 2          | 2         | 100.000 |
| libnss_compat-2.23.so | 35688          | 9          | 9         | 100.000 |
| libnsl-2.23.so        | 93128          | 23         | 23        | 100.000 |
| libc-2.23.so          | 1864888        | 456        | 456       | 100.000 |
| libcrypt-2.23.so      | 39224          | 10         | 10        | 100.000 |
| librt-2.23.so         | 31712          | 8          | 8         | 100.000 |
| liblz4.so.1.7.1       | 96360          | 24         | 24        | 100.000 |
| libgcc_s.so.1         | 89696          | 22         | 22        | 100.000 |
| libpthread-2.23.so    | 138696         | 34         | 34        | 100.000 |
| libnss_nis-2.23.so    | 47648          | 12         | 12        | 100.000 |
| libnuma.so.1.0.0      | 43936          | 11         | 11        | 100.000 |
| ld-2.23.so            | 162632         | 40         | 40        | 100.000 |
| mysqld                | 24754056       | 6044       | 4051      | 067.025 |
| libnss_files-2.23.so  | 47600          | 12         | 12        | 100.000 |
+-----------------------+----------------+------------+-----------+---------+

另外还可使用指定格式输出,比如:JSON、纯文本。更多使用方法可参考hcache -h

SQLPad

SQLPad是一个基于Nodejs开发的直接在浏览器运行SQL查询并对结果进行可视化展示工具。SQLPad支持的数据库非常多,比如:MySQL, Postgres, SQL Server, Vertica, Crate, Presto等。

官网:http://rickbergfalk.github.io/sqlpad/

安装

  • 安装Nodejs

默认软件源里nodejs版本比较老,是4.x的。SQLPad最低需要6.x的,使用官方源安装6.x的nodejs。

Debian/Ubuntu

$ curl -sL https://deb.nodesource.com/setup_6.x | bash -
$ apt-get -y install nodejs

RHEL/CentOS

$ curl --silent --location https://rpm.nodesource.com/setup_6.x | bash -
$ yum install nodejs
  • 安装SQLPad

$ npm install sqlpad -g
  • 启动SQLPad

$ sqlpadLaunching server WITHOUT SSL
Welcome to SqlPad!. Visit http://localhost:80 to get started

启动后会显示出访问地址,SQLPad默认绑定在0.0.0.0:80。如果想更改可以指定--ip--port参数。

使用

用浏览器访问http://ip:80页面,注册账号后便可使用。

建立一个数据库连接

SQLPad支持对表名和字段名的自动提示

直接根据查询结果生成各种图表

SQLPad功能还是很强大的,还可以将查询结查导出CVS和Excel格式等,快和你的小伙伴用起来吧!

参考文档

http://www.google.com
https://nodejs.org/en/download/package-manager/
http://www.datastart.cn/tech/2017/05/20/hcache.html

转自:http://mp.weixin.qq.com/s?__biz=MzI3MTI2NzkxMA==&mid=2247485268&idx=1&sn=cdc948082289a4c0c8eb354071689cc9&chksm=eac5267dddb2af6be116f9302ac400a848acda13680a47a59d3aecc6057d2782659d3b79500d&mpshare=1&scene=23&srcid=05262NtnrWCYMxa68eBRFy7A#rd

转载于:https://blog.51cto.com/holy2010/1929629

推荐两款实用工具——hcache和SQLPad相关推荐

  1. 推荐两款 GTD 工具

    这几周事情真的有点多.事情一多就容易乱,一乱处理事情的效率就会变低.为了梳理这些「碎片化」的事情,有两款 GTD 工具自己用着挺不错的,推荐给大家. Google Calendar(谷歌日历) 作为一 ...

  2. 实用必备xp框架模块_两款实用工具类软件,是你的日常必备!

    其实后来的我们,都没有再联系 我不知道你过得怎样 就算偶尔想起也只是用以前的记忆填补 我能做的是再怎么想念都不去打扰 (via:网易云热评@风云梦远) 毕竟你只是过去的一粒 不是唯一 等一切结束的时候 ...

  3. 识别图片转文字怎么弄?推荐两种实用工具

    在日常的学习和工作中,经常会接收到大量的图片,当我们需要获取这些图片里面的文字内容时,光靠手动打字输入,不仅加大工作量,还很耗时.其实我们可以使用一些软件来识别图片的文字内容.那么问题来了,图片识别文 ...

  4. 推荐两个实用的PCIe工具软件

    转:http://blog.chinaaet.com/justlxy/p/5100065652 本文向大家推荐两个实用的PCIe相关的工具软件,Mindshare的Arbor和Teledyne LeC ...

  5. 两款实用的DDos攻击工具

    两款实用的DDos攻击工具 2018-02-22Network • Security865 之前为了重现某个bug,需要对网络设备进行ddos攻击测试,同时也是对设备的网络攻击防护功能进行抗压测试.临 ...

  6. 【转】IAR与Keil两款开发工具区别

    http://www.smzy.com/smzy/tech39675.html IAR及IAR Embedded Workbench,KEIL及Keil MDK-ARM,这两款都是ARM开发工具.那么 ...

  7. 电脑软件:推荐5款实用的效率软件,每一款都爱不释手!

    今天小编大家推荐5款实用的效率神器,希望对大家能有所帮助! 1.图片管理神器-Image Tuner 1000张图片怎么更改尺寸,添加水印等等一系列很多操作?用图片处理软件会累死. Image Tun ...

  8. 今日推荐一款实用的搜题小程序,题多多搜题

    为什么要用小程序 1.不用安装,即开即用,节省流量,节约安装时间,而且不占用桌面: 2.功能上更为集中.单一,降低用户的使用难度,减少手机的过度使用. 小程序怎么找 现在大厂都已经推出了各自的小程序, ...

  9. mac写作软件哪个好?推荐几款实用的mac写作软件

    好的写作软件能够有效帮助用户更加便捷.更加高效的进行写作,那么写作软件哪个好?今天小编主要为使用Mac电脑的用户推荐几款使用的mac写作软件,这些mac写作软件的各方面都比较出色,有兴趣的朋友可以来这 ...

最新文章

  1. SoapUI实践:自动化测试、压力测试、持续集成
  2. python变量区分大小写吗_Python变量名是不是区分大小写的
  3. 一个教务系统多少钱_销售管理系统报价多少钱
  4. Chapter 3 Phenomenon——24
  5. linux smtp 发送邮件乱码,使用gomail发送邮件之解决附件名乱码的问题
  6. tf.nn.in_top_k的用法
  7. 第一个冲刺期的第九天
  8. 9年前的大一,我们这样为女生过37女生节【祝节日快乐】
  9. adb server is out of date. linux,adb server is out of date. killing完美解决
  10. 安卓10可用的性能监视器_iPad 秒变监视器,无线图传设备真的有用吗?
  11. 8-字符串的压缩存储
  12. 电脑不能正常启动windows怎么办,电脑系统无法正常启动
  13. 循环系统疾病病人的护理题库【2】
  14. ZZ:别说你会阅读电子书——从编辑、美化PDF电子书的实用技巧说起
  15. Foundation框架 之 常见结构体、包装数据、日期
  16. 2022年荧光染料市场前景分析及研究报告
  17. matlab中寻找矩阵元素并替换
  18. 【MySQL】索引常见面试题
  19. 逻辑回归中常用的概念: WOE、IV详解
  20. Axure导入元件库的两种方式-附完整元件库

热门文章

  1. 使用ffmpeg的filter处理yuv数据包括split filter(分流)、crop filter(裁剪)、vflip filter(垂直向上的翻转)、overlay filter(合成)
  2. java server模式 设置_JVM client模式和Server模式的区别
  3. uva 12627——Erratic Expansion
  4. 45. 跳跃游戏 II golang 动态规划
  5. redis源码剖析(六)—— Redis 数据库、键过期的实现
  6. Qt中的QByteArray和自定义结构体之间的相互转换
  7. POJ1236Network of Schools——强连通分量缩点建图
  8. C++中的inline用法
  9. Wait waitpid
  10. [UE4]删除UI:Remove from Parent