开发者社区> 问答> 正文

把 unix socket 建在 /dev/shm 会提高性能么?

我发现很多中文的教程都说这样可以提高性能,但找不到英文的资料支持这一观点。

例如:http://blog.chinaunix.net/uid-26156216-id-3502458.html

我们可以直接在/dev/shm下使用创建文件,而不用再mkfs格式化文件系统,因为都是在内存中操作。所以/dev/shm下的文件I/O速度相对很快利用这点。我们可以把php.socket放在/dev/shm下加速工作效率
以及:https://blog.linuxeye.com/364.html

Socket是使用unix domain socket连接套接字/dev/shm/php-cgi.sock(很多教程使用路径/tmp,而路径/dev/shm是个tmpfs,速度比磁盘快得多)

展开
收起
a123456678 2016-06-21 11:43:03 3418 0
1 条回答
写回答
取消 提交回答
  • 理论上来说创建、检索和删除会快一点,数据传输没有差别。实际上嘛,你把 socket 放 /dev/shm 下就是找抽,那么一点点差别别说人了,一般连程序都察觉不到。那个是放共享内存之类的东西用的。

    socket 建议存放地址:

    /run:这个是比较新的位置,专门用于存放运行时的东西,比如 socket、pidfile、
    lock file 等,是 tmpfs。FreeDesktop 还专门给每用户弄了目录(/run/user/$UID)。
    /tmp:这个一般也是 tmpfs,也可以是普通文件系统。不过长期不使用的文件可能被清
    除(systemd 会定期清理)。
    「抽象套接字」(abstract socket),即地址的第一个字符为 NUL 字符的套接字。不
    对应到文件系统的。目前只有 Linux 支持。

    2019-07-17 19:44:42
    赞同 展开评论 打赏
问答分类:
问答地址:
相关产品:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载