Akka IO TCP接收数据
我正在阅读有关的文档,并试图了解简单TCP是如何从服务器接收数据的。让我们来看一下,服务器向每个连接的客户端发送数据流Akka IO TCP接收数据,tcp,io,akka,Tcp,Io,Akka,我正在阅读有关的文档,并试图了解简单TCP是如何从服务器接收数据的。让我们来看一下,服务器向每个连接的客户端发送数据流 case Received(data) => // do some with data, where data: ByteString 那么什么是数据。数据的大小(以字节为单位)是多少?我的意思是客户不断地收到一些数据。每个这样的数据包含多少字节?它在哪里配置?它是任意的,没有在任何地方配置。您可以得到实现在决定向您提供一些数据时碰巧提供给您的尚未得到的东西 处
case Received(data) => // do some with data, where data: ByteString
那么什么是
数据
。数据的大小(以字节为单位)是多少?我的意思是客户不断地收到一些数据。每个这样的数据包含多少字节?它在哪里配置?它是任意的,没有在任何地方配置。您可以得到实现在决定向您提供一些数据时碰巧提供给您的尚未得到的东西
处理此类通知的典型方式如下:
如果上次通知中有任何保存的数据,请将新数据附加到保存的数据的末尾
如果根据我们正在实施的协议,我们没有完整的消息,请保存所有剩余数据,以备下次通知、重新配置通知和停止
处理消息
如果我们没有剩余数据(也就是说,我们只有一条应用程序消息,没有多出一个字节),请注意缓冲区是空的,重新配置通知,然后停止
使用剩余数据转到步骤2