繁体   English   中英

改进此模式以处理移动应用程序如何知道如何找到其服务器

[英]Improve on this pattern for handling how a mobile app knows how to find it's server

我正在考虑如何为使用wcf / web服务的移动设备上的应用程序识别服务器。

(1)我希望一切顺利,我将不时需要在主机之间迁移服务器以处理负载。 我希望能够做到这一点而不会中断服务。

(2)我也希望一切顺利,我希望通过分离需要在客户端上进行地址更改的网站托管和wcf / web服务托管来提高可伸缩性。 直到该应用程序受到青睐为止,服务器部署将在同一域上共享。

一目了然地为此目的重新分配客户端似乎很复杂,因为您不能在使用者上强行进行更新,并且区分没有数据连接/服务器关闭和服务器已移动也很容易。

我当时以为这将是一个已解决的问题,所以想将其从社区中删除以寻求更好的想法。

到目前为止,我要提出的内容如下。

  1. 客户端需要主要和辅助URL来引用wcf / web服务。 这迎合了主机提供商的更改。 旧主机可以在切换期间继续运行服务。 成功部署到新主机后,可以禁用辅助/旧主机。 wcf / web服务本质上是无状态的,因此在某种程度上简化了事情。

  2. 客户端会定期启动服务以请求提供主要和辅助URL,然后将其缓存。 此将来证明,辅助URL后面的服务可以在一段时间内指示客户端能够接受新URL供将来使用,而主要URL服务则请求新URL。 一旦辅助服务指向新的主要URL,则从主要服务器请求的以下定期更新将更新缓存的辅助URL。

我错过了什么? 也许会更简单?

DNS可能是隐藏服务器移动到新地址的方法。 更改服务器时,将更新DNS记录。 将新服务器放置到位,一旦启动并运行,请更新DNS记录。 这就是所有要做的,除非我缺少任何东西。

编辑以反映评论:

为确保更改没有变化,可以将DNS条目的TTL减小到一个非常低的值,以确保传播速度快。 例如,如果在切换服务器之前将TTL更改为5分钟,请确保在更新DNS条目5分钟后可以关闭第一台服务器。

因此,您只需要一个URL,并且此URL无需更改。 它同时满足您的第一个和第二个要求。 无需重新发明轮子。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM