java分布式部署方案_java分布式架构有哪些技术

本文探讨了Java分布式系统中的关键技术和挑战,包括网络通信协议、非阻塞IO、连接管理和负载均衡。强调了无状态服务设计以提高伸缩性和高可用性,并讨论了无状态和有状态场景下的伸缩策略,如规则分片、一致性哈希和自动分片。此外,还提到了系统的稳定性和故障处理,以及维护的重要性。
摘要由CSDN通过智能技术生成

展开全部

既然是分布式系统,系统间通信的技术就不可避免的要掌握。62616964757a686964616fe58685e5aeb931333433646365

首先,我们必须掌握一些基本知识,例如网络通信协议(例如TCP / UDP等),网络IO(Blocking-IO,NonBlocking-IO,Asyn-IO),网卡(多队列等)。   了解有关连接重用,序列化/反序列化,RPC,负载平衡等的信息。

25038dcc6064e928e90aa8571c03b80e.png

在学习了这些基本知识之后,您基本上可以在分布式系统中编写一个简单的通信模块,但这实际上还远远不够。 现在,您已经进入了分布式字段,您已经对规模有很多要求。 这意味着需要一种通信程序,该程序可以支持大量连接,高并发性和低资源消耗。

大量的连接通常会有两种方式:

大量client连一个server

当前在NonBlocking-IO非常成熟的情况下,支持大量客户端的服务器并不难编写,但是在大规模且通常是长连接的情况下,有一点需要特别注意 ,即服务器挂起时不可能所有客户端都在某个时间点启动重新连接。 那基本上是一场灾难。 我见过一些没有经验的类似案例。 客户端规模扩大后,服务器基本上会在重新启动后立即刷新。 大量传入连接中断(当然,服务器的积压队列首先应设置为稍大一些)。 可以使用的通常方法是在客户端重新连接之前睡眠一段随机的时间。 另外,重连间隔采用避让

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值