可选项
优质
小牛编辑
126浏览
2023-12-01
Uragano还提供了一些可选项配置,用于服务调优
service.AddUragano(context.Configuration, builder =>
{
builder.AddClient<LoadBalancingPolling>();
builder.AddConsul();
builder.AddOptions();
});
选项 | 说明 |
---|---|
ThreadPool_MinThreads | 线程池的最小线程数(具体应用请查看线程池相关文档) |
ThreadPool_CompletionPortThreads | I/O线程的数量(具体应用请查看线程池相关文档) |
Consul_Node_Status_Refresh_Interval | 使用Consul时,客户端更新节点状态的频率,单位毫秒 |
Server_DotNetty_Channel_SoBacklog | DotNetty的SoBacklog值 |
DotNetty_Connect_Timeout | DoNetty连接超时时间,单位毫秒 |
DotNetty_Enable_Libuv | 是否启用Libuv |
DotNetty_Event_Loop_Count | DotNetty的工作线程数 |
Remoting_Invoke_CancellationTokenSource_Timeout | 客户端等待服务器端返回消息的等待时间,单位毫秒,默认值是60秒。你可能会对这个配置有疑问,熔断里不是已经有一个超时机制了吗?为什么还需要这个配置!其实这两个是完全不一样的,这里就需要提到DotNetty的通信机制了,DotNetty采用的异步非阻塞模式,但是我们往往需要等待返回结果,这里就需要用到TaskCompletionSource,如果服务器端出现异常,无法响应消息,那么TaskCompletionSource就会一直等待,所以必须有一个超时机制。 |