J'ai une application client/serveur et je cherche des conseils sur la façon de gérer l'interface entre les deux. Le serveur/les clients seront déployés sur un réseau local (potentiellement WAN, mais définitivement géré par le client et non centralisé). Je considère ces deux options:Application client-serveur: mise à jour automatique à partir du serveur local ou de l'interface versionnée?
- Le client et le serveur peuvent être des versions différentes. De cette façon, l'interface WCF entre eux doit prendre en charge le versionnement - si l'un a été mis à jour et pas l'autre, l'application doit encore fonctionner.
- Le serveur envoie les mises à jour au client, le client installe automatiquement la mise à jour avant de communiquer. Aucun versionnement requis, car le serveur ne communiquera pas avec un client obsolète.
Le client est un service Windows qui s'exécute en tant que LocalSystem, donc il n'y a pas de problème de permissions avec une mise à jour automatique. # 2 semble plus propre, car il n'y a pas de versioning de l'interface à suivre, mais je crains de manquer une raison évidente de ne pas le faire en faveur de # 1. L'application client est petite - moins de 500K - donc la bande passante des mises à jour (que je ne m'attends pas à fréquenter) n'est pas vraiment un problème non plus.