jeryzr 2019-08-01 10:39 采纳率: 50%
浏览 851
已采纳

集群如何控制并发数呢

问题描述:集群中有A、B两台机器,集群与另一系统C进行通信。
系统C作为服务端最大并发数为50。如何保证集群中两台机器并
发向C发起请求控制在50并发之内。
我的思考:解决方法1:A、B两台机器平分50个并发。2.建一张表,实时监控正在执行任务任务的线程数,让A、B并发总数不大于50.
这两个想法那个靠谱一点,大家可以给点意见建议嘛。

  • 写回答

2条回答 默认 最新

  • leonlau81 2019-08-01 11:04
    关注

    这不就是限流么。第一个方法肯定不好,以后集群扩容呢,C扩容呢,难道还去修改代码。第二个可行,但没必要那么麻烦,还要建表监控线程。搞个令牌桶就行,桶里50个令牌,访问C之前必须拿令牌,用完令牌放回桶里,集群扩容不用修改代码,C扩容就增加桶里令牌数。实现的话,最简单redis实现个阻塞队列就行。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 删除虚拟显示器驱动 删除所有 Xorg 配置文件 删除显示器缓存文件 重启系统 可是依旧无法退出虚拟显示器
  • ¥15 vscode程序一直报同样的错,如何解决?
  • ¥15 关于使用unity中遇到的问题
  • ¥15 开放世界如何写线性关卡的用例(类似原神)
  • ¥15 关于并联谐振电磁感应加热
  • ¥60 请查询全国几个煤炭大省近十年的煤炭铁路及公路的货物周转量
  • ¥15 请帮我看看我这道c语言题到底漏了哪种情况吧!
  • ¥66 如何制作支付宝扫码跳转到发红包界面
  • ¥15 pnpm 下载element-plus
  • ¥15 解决编写PyDracula时遇到的问题