来自另一个论坛的人最近向我吹嘘,他设法使用java套接字连接(或者可能是websocket)创建服务器(聊天服务器),只需使用IOT设备即可处理1000多个同时连接(我认为它是覆盆子pi 3因为它是其系列中最强大的。)
从硬件规格来看,我发现很难相信,但是除了打开和关闭套接字连接之外,可能还有某些Java技巧,我认为它很昂贵且容易出现同步问题。也许有人可以通过使用像raspberry这样的微型计算机,分享一些关于如何使用java套接字同时托管具有1000多个连接的聊天服务器的技巧?也许我错过了什么。
答案 0 :(得分:0)
我在这里看不到任何具体的约束/限制。持有1000多个连接只意味着该进程拥有1000多个套接字文件描述符+几个映射到这些套接字+缓冲区的对象。 对套接字进行读/写不被认为是一项代价高昂的操作(它不像你在做繁重的计算)。
RPI3拥有1GB内存,我们假设使用合适的操作系统,大约768MB是免费的应用程序。除非您正在加载一堆第三方Jars,否则应该足以在套接字的读/写操作之间保持1000个连接活动+多路复用。