Swift51.com
Swift 头像
Swift  2018-03-21 11:08

非阻塞事件驱动网络应用程序框架SwiftNIO

回复:0  查看:4350  感兴趣:44  赞:0  

SwiftNIO 是苹果开源的一个跨平台异步事件驱动的网络应用程序框架,用于快速开发可维护的高性能协议服务器和客户端。它类似 Netty ,采用 Swift 编写。

SwfitNIO 实际上是一个底层工具,用于开发高性能的网络应用程序,作为“每连接一个线程”的替代方案。

为了提升性能,SwfitNIO 使用了非阻塞 IO,这从它的名字就可以看出来。非阻塞 IO 与阻塞式 IO 非常不一样,因为不管是往网络上发送数据还是从网络上接收数据,应用程序都无需等待,系统内核会在有可操作的 IO 时通知 SwfitNIO。

SwfitNIO 并不会提供类似 Web 框架那样的解决方案,而是致力于为上层框架提供底层的构建块。在开发 Web 应用程序时,大部分开发者不会直接使用 SwfitNIO,他们会从 Swift 生态系统众多的 Web 框架中选择一个。不过,这些框架中的大部分都使用了 SwfitNIO。

相关开源代码