我必须通过套接字通过 TCP 传输一些记录。我用过ObjectInputStream
并且ObjectOutputStream
效果很好。一个批判性的想法是套接字打开一次,并且必须在整个通信过程中保持打开状态,但每一方都多次读取和写入(所以它更像是一个持久连接)。
为了提高整体性能,我尝试在编写对象之前对其进行压缩,结果非常令人鼓舞,但是由于我使用了GZIPOutputStream
and ByteArrayOutputStream
,因此内存开销太大,在某些情况下会出现 OutOfMemory 错误。
我试过DeflaterOutputStream
了,但它似乎不适合写对象。有没有办法解决这个问题?