前两天 Windows 10 的新预览版(Windows 10 Insider Preview Build 17063)发布了一项值得关注的更新,从 Insider Build 17063 开始将支持 AF_UNIX,这意味着用户可在 Windows 上使用 UNIX Domain Socket 在 Win32 进程之间进行通信。 UNIX Domain Socket(UDS) 是一种非常重要的进程间通信方式,MySQL、Redis、Nginx 和 Apache 等服务器或者多进程软件都支持。很多服务器在同一台机器中会支持 UNIX Domain Socket 而无需使用 TCP 127.0.0.1,从而优化网络传输,而 Chrome 之类的多进程程序也会使用 UDS ,但在 Windows 上之只能使用 Named Pipes。 但使用 Named Pipes,由于 Named Pipes 和 Socket 之间的调用约定是不同的,因此编写易维护的跨平台应用程序变得比较困难。
Build 17063 为 Windows 带来对 unix socket 的原生支持,使得将 unix socket 应用程序从 Linux 移植至 Windows 更加方便。 想知道如何编写一个 Windows AF_UNIX 应用程序?查看发布说明进行了解。 开发团队表示,目前 Windows 的 Linux 子系统(WSL) 已支持 unix socket,不过与 Windows unix socket 的实现未能很好地配合使用,未来将会改进。
相关主题 |