这篇博文将解释什么是 UNIX 域套接字,以及如何将发送到 UNIX 域套接字的索引编入 Elastic Stack - 以及为此存在哪些不同的用例。

UNIX 域套接字 - 简短的历史

如果你想让进程相互通信,你有几种可能

  • 通过文件,一个组件写入,完成后另一个读取。需要同步(即文件锁定)
  • 信号(kill -HUP),不提供有效载荷,只是一个触发器
  • 共享内存、内存映射文件
  • 网络套接字,需要联网
  • Unix 域套接字,类似于套接字,但无法从外部访问

从实现的角度来看,UNIX 域套接字是一个套接字(socket),可以将其视为文件。这使得消费者和生产者很容易实现,因为你只需要 open() 它并向其写入数据。写入数据的有趣部分是,你可以像使用 recvmsg() 和 sendmsg() 系统调用写入网络套接字一样。

由于没有像 mkfifo 这样的工具来创建 UNIX 域套接字,你可以使用类似 socat 的东西来创建它,我们将在稍后完成。

在文件系统中创建 UNIX 域套接字的一个有趣方面是权限。为了让其他进程将数据发送到其接收器,你需要确保可以写入文件 - 这很容易检查和满足。这可以很容易地使用组权限建模。

数据的顺序是有保证的,你可以在沙盒进程中访问 UNIX 域套接字,这使它成为病毒扫描程序等工具的一个很好的用例 - 因为你还可以将文件描述符传递到套接字。

我不使用域套接字 - 怎么了?

让我向你保证,绝对没有

Beats:将 Unix 域套接字中的数据索引到 Elastic Stack相关推荐

  1. 域服务器广播消息,广播,组播和UNIX域套接字

    1.广播 1.特点 一对多 仅能使用UDP 2.概念 发送方只有一个接收方则称单播 如果同时发给局域网中的所有主机,成为广播 只有用户数据包(使用UDP协议)套接字才能广播 广播地址 1.以192.1 ...

  2. linux 套接字 文件 路径,linux – 识别unix域套接字连接的另一端

    我正在试图找出一个持有unix域套接字另一端的进程.在某些strace输出中,我已经确定了一个给定的文件描述符,这个文件描述符涉及到我目前正在调试的问题,我想知道哪一个进程在另一端.由于存在与该套接字 ...

  3. UNIX域套接字编程和socketpair 函数

    一.UNIX Domain Socket IPC socket API原本是为网络通讯设计的,但后来在socket的框架上发展出一种IPC机制,就是UNIX Domain Socket.虽然网络soc ...

  4. 【技术应用】java基于UNIX域套接字(unix domain socket)连接mysql数据库

    前言 Unix domain socket 又叫 IPC(inter-process communication 进程间通信)socket,用于实现同一主机上的进程间通信. socket 原本是为网络 ...

  5. 【socket】 unix域套接字(socketpair )通信|socketpair和pipe的区别|进程间通信-Unix domain socket

    目录 unix域套接字(socketpair )通信|socketpair和pipe的区别 socketpair机制 描述 原理 socketpair和pipe的区别 进程间通信-Unix domai ...

  6. 学习Unix域套接字总结

    开门见山,哲学三问!Unix域套接字是什么?为什么会存在Unix域套接字?如何用Unix域套接字? Unix域套接字是什么,为什么会有Unix用于套接字? Linux系统中不同进程进行通信的手段很多, ...

  7. unix 域套接字实现进程间通信

             目录 1.认识域套接字 2.unix域套接字相关API及地址结构介绍 (1) 创建unix域套接字 (2) 填充地址结构 sockaddr_un 3.unix域套接字实现进程间通信( ...

  8. 网络编程_5(超时检测+UNIX域套接字+抓包工具+包头分析)

    一二章请点击:网络编程_1(网络基础+跨主机传输) 三四章请点击:网络编程_2(网络属性+UDP(UDP模型+广播组播)) 第五章请点击:网络编程_3(TCP) 第六章请点击:网络编程_4(IO模型) ...

  9. 经由unix域套接字传送文件描述符

    sendmsg 和recvmsg 该两个函数都指向msghdr指针:该结构包含了所有有关收发内容的信息 两个元素处理控制信息的传送与接收

最新文章

  1. 汇编中的BP与SS组合时,BP里面放的到底是SS中的一个基地址的指针还是基地址本身?
  2. 理解Windows中的路由表和默认网关
  3. [转]Oracle 服务器名配置
  4. 博士申请 | 阿联酋阿布扎比人工智能大学许志强老师招收全奖博士/硕士
  5. 猫眼java开发工资_Java硕士京东工作1年,跳槽后他期望薪资26K,大家感觉他可以吗...
  6. 图像特效之浮雕与雕刻
  7. 前端Js框架汇总【转】
  8. GhostCat - AS3工具类库(AS3 library of generic tools)
  9. Codeforces Round #723 (Div. 2)B. I Hate 1111(完全背包)
  10. docker mysql 备份_docker mysql数据备份xtrabackup
  11. python爬虫电影资源_python爬虫批量获取最新电影资源
  12. 一个免费功能强大的谷歌翻译api
  13. 聚类和分类算法的区别
  14. em算法 c语言,EM算法原理与应用(附代码)
  15. DELL服务器 ubuntu系统 全新硬盘识别不到问题解决及对硬盘做GPT分区
  16. Pr 复古胶片老电影回忆效果
  17. 微信分享的各种大小限制
  18. R Shiny App文件默认加载顺序
  19. Joshua Porter谈优秀的UI设计原则
  20. 怎样使用markdown做笔记、python入门小白

热门文章

  1. (转)C++进程间和线程间通信
  2. 关于 MySQLTransactionRollbackException 异常的排查经历
  3. 猪八戒CEO朱明跃:平台是最难做的生意
  4. 欧盟委员会获得首个网络安全认证计划
  5. 聊聊小程序的登录逻辑
  6. 2022年驾驶员考试推土机司机考试模拟试题卷及答案
  7. 仿逛丢Laucher
  8. vue-baidu-map插件中bm-marker组件嵌套bm-info-window组件使用,在地图上生成多个点
  9. 三天刷完《剑指OFFER编程题》--Java版本实现(第三天)
  10. “泥腿子”办银行 浙江省首家农村资金互助社成立