Socket 网络编程(三)

最佳实践

使用场景一:数据通信

两台(多台)机器使用 Netty 怎样进行通信,大体可分为三种:

1)使用长连接通道不断开的形式进行通信,也就是服务器和客户端的通道一直处于开启状态。如果服务器的性能足够好,并且客户端的数量也比较少的情况下,推荐使用这种方式。

2)采用短连接的方式,一次性批量提交数据。把数据保存在本地临时缓冲区或者临时表里,当达到临界值时进行一次性批量提交,又或者根据定时任务轮询提交。弊端是,不能实时传输,在对实时性要求不高的场景下推荐这种方式。

3)使用一种特殊的长连接,在指定某一时间之内,如果服务器和某台客户端没有任何通信,则断开连接,当下次客户端向服务器发送请求的时候,再次建立连接。这种模式需要考虑两个因素:

  • 如何在超时(即服务器和客户端没有任何通信)后关闭通道?关闭通道后又如何再次建立连接?
  • 客户端宕机时,无需考虑,下次客户端重启之后就可以与服务器建立连接。但是当服务器宕机时,客户端如何与服务器进行连接呢?

使用场景二:心跳监控

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 还只剩下十分钟了 她看着打开手机看了眼时间 再过十分钟,她这一年的记忆就要彻底清零了。 她很想记住曾经在这一年出现...
    三分热血少女阿怪阅读 2,425评论 1 3
  • 中年多病,人生余庆,正有闲处听涛静。昼弹铮,夜歌笙,繁花似锦青春盛。 日影西斜霜色冷。昨,醉不醒。今,且自省。
    沙子666阅读 1,423评论 0 2

友情链接更多精彩内容