首先我为什么要这样做:
我有一个 WCF 服务部署为使用 HTTPS 作为端点的 Azure Webrole。我需要为此服务设置一个自定义的“负载平衡器探测”。Azure 负载均衡器不支持 HTTPS,因此我部署了第二个带有 http 端点的网站,将其用作我的“负载均衡器问题”
所以我的问题是什么?!
我有两个网站,例如:
<WebRole name="WebRole1" vmsize="Medium">
<Sites>
<Site name="Web" physicalDirectory="roles\WebRole1">
<Bindings>
<Binding name="Web" endpointName="WebRoleEndpoint" />
</Bindings>
</Site>
<Site name="Web2" physicalDirectory="roles\HealthProb">
<Bindings>
<Binding name="Web" endpointName="HealthProbEndpoint" />
</Bindings>
</Site>
</Sites>
...
建议处理 RoleEntryPoint.OnStop() 以确保将正确的健康状态代码返回到负载均衡器(http://blog.mdavies.net/2013/04/27/custom-load-balancing-endpoints-azure -web-worker-vm-role/)
我的问题是如何在我的第二个网站中处理 RoleEntryPoint.OnStop() 。虽然在 webrole 中我可以通过扩展和覆盖 RoleEntryPoint.OnStop() 轻松做到这一点,但在第二个网站中我无法处理该事件。
有什么方法可以处理第二个网站中的 OnStop 或类似事件?!