我正在测试 ServiceStack Redis 客户端,但遇到了与 Windows Server 2003 R2 中的包大小相关的错误。
对于小于 30MB 的文件可以正常工作,但对于大于 32-33MB 的文件,它开始发送错误。而且它只发生在 Windows Server 2003 R2 中,我在 Windows 7 和 Windows 2008 R2 上测试成功。
编码:
String text = File.ReadAllText("file.xml");
String key = Guid.NewGuid().ToString();
if (redisClient.Add(key, text, DateTime.Now.AddSeconds(300)))
String Result = redisClient.Get<object>(key) as String;
错误:
System.Net.Sockets.SocketException (0x80004005): An operation on a socket could not be performed because the system lacked sufficient buffer space or because a queue was full at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size)
有谁知道这是因为操作系统限制还是 Redis 的 ServiceStack 客户端有问题。
提前致谢。