goss
goss copied to clipboard
查询单个进程的网络连接信息,是否有更好的方法?
从gopsutil那儿发现的这个项目 gopsutil 的做法是
- 从 /proc/{PID}/fd 提取inode
- 在 /proc/{PID}/net/(tcp| udp| unix)寻找inode
但是/proc/{PID}/net/tcp其实等同于/proc/net/tcp,也就是机器的所有tcp连接信息 如果在一些存在上万连接的机器上,每触发一个进程就需要遍历一次机器的全量连接信息,太消耗资源。
使用了你的项目确实快上不少,但是获取到的依旧是机器的全量连接