该应用程序是客户端服务器模型。
客户端应用程序具有本地数据库,客户将在日常事务中使用该数据库。
服务器拥有另一个数据库,该数据库包含来自客户端的信息以及其他一些关键信息。
客户端和服务器需要定期进行通信:数据迁移,从服务器访问数据(客户端不可用)等。
客户端或服务器都没有静态IP地址。
如何确保客户端可以无缝连接到服务器?
由于业务需求,将所有内容放在一个位置(例如在云端或数据中心)不是一种选择。
答案 0 :(得分:3)
如果有一台服务器,为什么它不能有静态IP?
它是否始终具有外部可见IP?然后动态DNS适合您 - 服务器通知DNS服务器IP地址更改。
如果它们都没有可公开访问的地址,则需要一个中介(代理),它具有。现在,这个中介将知道数据,或者数据将被加密到它。
这样的中介可以是任何东西,例如XMPP服务器,其中服务器将被分配特定的JID,如server @ mydomain,并且客户端将被分配给他们自己的ID(例如,customername @ mydomain),或者可能是某些PubSub解决方案,或者它甚至可能是基于电子邮件的解决方案(是的,那很脏),客户端和服务器都会定期读取他们的邮箱。
我想大多数ESB解决方案也会这样做。
最重要的是,为了在互联网上创建客户端 - 服务器架构,服务器(或帮助使用自己的应用程序特定协议访问服务器的中介)必须是可公开访问的。