shako
shako
### Describe what this PR does / why we need it In `TokenClientPromiseHolder.completePromise(int xid, ClusterResponse response)`, we get the `promise` from `PROMISE_MAP`, and the `promise` may be null. There are...
``` // https://github.com/alibaba/Sentinel/blob/bef6574734bc75953202079dc0a44aa5dff78157/sentinel-cluster/sentinel-cluster-client-default/src/main/java/com/alibaba/csp/sentinel/cluster/client/NettyTransportClient.java#L222 channel.writeAndFlush(request); ChannelPromise promise = channel.newPromise(); TokenClientPromiseHolder.putPromise(xid, promise); // 1、should before writeAndFlush to avoid concurrency problem if (!promise.await(ClusterClientConfigManager.getRequestTimeout())) { throw new SentinelClusterException(ClusterErrorMessages.REQUEST_TIME_OUT); // 3、timeout exception } ``` ```...
**Is your feature request related to a problem? Please describe.** 在容器中存在cpu quota的限制,由于golang计算maxprocs的问题,导致被频繁cpu throttle。 **Describe the solution you'd like** 为什么不考虑直接引用 https://github.com/uber-go/automaxprocs 来计算,降低不同环境的配置麻烦?