hystrixCommand注释 - commandKey的目的是什么

j2e*_*nue 9 java spring hystrix

使用这里描述的 spring的Hystrix注释

我想知道commandKey param是什么.在以下上下文中,我想知道此参数的含义:

   @HystrixCommand(groupKey="UserGroup", commandKey = "GetUserByIdCommand")
public User getUserById(String id) {
    return userResource.getUserById(id);
}
Run Code Online (Sandbox Code Playgroud)

注意这里的commandKey被定义为GetUserByIdCommand,这与线程池有什么关系吗?是否意味着具有该命令键的任何内容都使用相同的线程池,如果是这样的话,这意味着它对于每个具有故障恢复的方法都有其自己的commandKey的良好实践?

我有大约8个类,我想在其中注释方法.我会用这个注释一些类方法,但我想知道如何构造commandKeys?我应该使用所有相同的,或每个类相同或所有独特的等.

j2e*_*nue 5

终于找到了答案。CommandKey 用于。

默认情况下,命令键的名称是命令方法名称:例如,getUserById,但您可以将其重命名为 getUserByIdCommand

然后你可以使用hystrix命令中的commandKey来引用方法。如果您不使用commandKey(其可选)。那么方法名称将被用作默认值。所以只需重命名命令即可。

我在这里找到了所有这些信息