我有一个独特的web服务配置问题。
我有几个相同Web服务的实例(通过Service托管)
我需要将web服务的每个唯一实例连接到客户端id。
例如,如果我有5个服务实例,以及以下5个客户端ids:
A、B、C、D、E
我希望将每个服务配置为使用它的唯一客户端id,如下所示:
1个-> A
2 -> B
3 -> C
4 -> D
5 -> E
客户端的顺序或将其配置为哪些服务并不重要。重要的是,每个服务只有一个唯一的客户端id可供使用。
我想到的一个可能的解决方案是使用一个存储客户端ids的SQL,以及一个带有"IsTaken“的列。每个服务从访问表中锁定其他服务,然后获取一个未被接受的客户端id,并将IsTaken值更改为true。
还有别的办法可以解决吗?也许是一个特定的工具,用来同步多个web服务之间的配置?提前谢谢。
发布于 2017-03-23 14:39:19
您还可以为每个客户端创建一个应用程序实例。与将客户机id注册为其URL的一部分的Service实例组合在一起。
所以你会得到这样的东西:
您可以将其配置为根据需要创建任意数量的实例。使用内置的反向代理从外部世界访问它们。
发布于 2017-03-23 14:45:39
如果我正确理解您的需求,您可以使用参与者模型实现服务,并使用clientId作为实例id。在参与者模型中,只为集群中的每个instanceId创建/运行一个实例。在单线程执行模型中,参与者是独立的逻辑和状态单元.
https://stackoverflow.com/questions/42977611
复制相似问题