This repository has been archived by the owner on Jul 16, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 167
Service Weight Rating
linux_china edited this page Apr 23, 2020
·
3 revisions
在分布式系统中,服务提供方的处理能力可能不太一样,这个也就是我们常说的应用权重,一些硬件配置比较好的应用实例要处理更多的业务请求。
Alibaba RSocket Broker可以根据应用的power-rating配置项来调整请求的权重,你只需要在application.properties中添加以下配置,就可以调整应用的权重。
rsocket.metadata.power-rating=2
如果你没有做任何设置,power-rating为1(不能为0和负数),表示所有的服务实例都是一样的处理能力。如同你调整为其他数字,表示该服务实例拥有比其他实例更多倍的处理能力。 power-rating的值如何计算出来? 你可以参考云厂商的规范,如CPU1核+内存512M为一个计算单位,应用在启动时可以计算出自己的处理能力,如4和2G内存 power rating为4,然后提交给Broker即可。
在实际的应用中,如果你想做A/B测试,可能希望某一些实例更处理更多的流量,你可以调整power-rating来达到分流的目的。 这个时候power-rating不再表示物理的处理能力权重,这个要注意一下。
- 硬件配置处理能力匹配
- A/B Testing
- 动态分流: power-rating更高的应用获得流量更多
- Binary: byte stream
- Async message
- Multi transports
- Reactive Semantics
- request/response
- request/stream
- fire-and-forget
- channel
- TCP+TLS
- WebSocket+TLS
- UDP(Aeron)
- RDMA