我有一个作为云服务托管在Azure上的WEB服务。
该服务有自己的内存缓存存储库。
该服务有一个方法,让我们看看缓存中条目的数量。即:GET http://xxxx.cloudapp.net/CacheEntries返回“1000个缓存项”
现在需要扩展和扩展服务,因此我们将实例计数从1增加到4,这就创建了4个VM。
如何检索特定VM的缓存条目数?或者更好的是:我如何获得所有VM的缓存入口计数?
我想做这样的事情:
GET http://xxxx.cloudapp.net/VM1/CacheEntries
GET http://xxxx.cloudapp.net/VM2/CacheEntries
GET http://xxxx.cloudapp.net/VM3/CacheEntries
GET http://xxxx.cloudapp.net/VM4/CacheEntries
输出应该是这样的:
Instance#1: 1000个缓存条目
Instance#2: 1200个缓存项
Instance#3: 1200个缓存项
Instance#4: 600个缓存条目
更新:解决方案是Azure公共IP地址--但它仍然处于预览模式:https://azure.microsoft.com/documentation/articles/virtual-networks-instance-level-public-ip/
http://clemmblog.azurewebsites.net/assign-public-ip-addresses-azure-vms/
发布于 2014-10-02 19:01:01
你的问题有点棘手。您可以创建(非负载平衡的)不同端口(81 => vm1端口80),以便检索特定的vm信息。但是当您添加另一个实例时,这会导致维护问题。或者缩小到三个实例。
但是,既然您正在缩放;难道不应该使用共享缓存(例如Redis)吗?这样您就不必关心每个实例的特定实例和缓存条目了吗?
今天,这个特性变得可用了;实例级别的公共ip:实例级公共IP概述,这样您就可以为实例分配一个公共ip,并轮询一个特定的单例http调用来检索这些细节。
https://stackoverflow.com/questions/26167461
复制相似问题