併發控制
限制com.foo.BarService的每個方法,服務器端併發執行(或佔用線程池線程數)不能超過10個:
<dubbo:service interface="com.foo.BarService" executes="10" />
限制com.foo.BarService的sayHello方法,服務器端併發執行(或佔用線程池線程數)不能超過10個:
<dubbo:service interface="com.foo.BarService">
<dubbo:method name="sayHello" executes="10" />
</dubbo:service>
限制com.foo.BarService的每個方法,每客戶端併發執行(或佔用連接的請求數)不能超過10個:
<dubbo:service interface="com.foo.BarService" actives="10" />
Or:
<dubbo:reference interface="com.foo.BarService" actives="10" />
限制com.foo.BarService的sayHello方法,每客戶端併發執行(或佔用連接的請求數)不能超過10個:
<dubbo:service interface="com.foo.BarService">
<dubbo:method name="sayHello" actives="10" />
</dubbo:service>
Or:
<dubbo:reference interface="com.foo.BarService">
<dubbo:method name="sayHello" actives="10" />
</dubbo:service>
如果<dubbo:service>和<dubbo:reference>都配了actives,<dubbo:reference>優先,參見:配置的覆蓋策略。
Load Balance均衡:
配置服務的客戶端的loadbalance屬性爲leastactive,此Loadbalance會調用併發數最小的Provider(Consumer端併發數)。
<dubbo:reference interface="com.foo.BarService" loadbalance="leastactive" />
Or:
<dubbo:service interface="com.foo.BarService" loadbalance="leastactive" />
連接控制
限制服務器端接受的連接不能超過10個:(以連接在Server上,所以配置在Provider上)
<dubbo:provider protocol="dubbo" accepts="10" />
<dubbo:protocol name="dubbo" accepts="10" />
限制客戶端服務使用連接連接數:(如果是長連接,比如Dubbo協議,connections表示該服務對每個提供者建立的長連接數)
<dubbo:reference interface="com.foo.BarService" connections="10" />
Or:
<dubbo:service interface="com.foo.BarService" connections="10" />
如果<dubbo:service>和<dubbo:reference>都配了connections,<dubbo:reference>優先
https://weavi.com/10845159
https://weavi.com/10862512
https://weavi.com/10862510
https://weavi.com/10862509
本文來自 varyall 的CSDN 博客 ,全文地址請點擊:https://blog.csdn.net/varyall/article/details/82801704?utm_source=copy