Application client serveur vs application Web
Une application qui s'exécute côté client et accède au serveur distant à titre informatif est appelée application client / serveur, tandis qu'une application qui s'exécute entièrement sur un navigateur Web est appelée application Web. Le serveur client demande toujours au serveur distant d'obtenir des informations. L'interaction de l'utilisateur avec le serveur s'effectue toujours via une interface utilisateur ou une application côté client. L'interaction de l'utilisateur dans une application Web s'effectue via un navigateur Web. Une application client-serveur peut être spécifique à une plateforme ou multiplate-forme en fonction du langage de programmation utilisé. Une application Web est indépendante de la plate-forme car elle nécessite uniquement un navigateur Web. Le langage multiplate-forme donne à une application une apparence native à la plate-forme ou au système d'exploitation du client.
L'application client / serveur est toujours installée sur l'ordinateur du client, contrairement à une application Web. Les applications Web peuvent s'exécuter directement sur les navigateurs et ne nécessitent donc aucune installation. Une application client-serveur utilise une architecture à deux niveaux, tandis qu'une application Web utilise une architecture à plusieurs niveaux composée des éléments suivants: utilisateur client, niveau intermédiaire et serveur d'applications. Une application Web utilise un système mono-utilisateur, contrairement à une application client-serveur qui utilise deux utilisateurs: client et serveur..
Une application Web est hébergée dans un environnement contrôlé par le navigateur ou est souvent programmée dans une langue compatible avec le navigateur. JavaScript est la langue prise en charge par le navigateur la plus utilisée. Dans les applications client / serveur, la machine serveur est un hôte qui exécute des programmes avec un ou plusieurs serveurs partageant leurs ressources avec des clients. Un client demande toujours à un serveur des informations ou du contenu sans partager aucune de ses ressources.
Dans une application client / serveur, il est difficile de tester les erreurs de script, tandis que dans les applications Web, il est facile de tester les erreurs de script. Les types spécifiques de clients utilisés dans un modèle client / serveur sont les navigateurs Web, les clients de messagerie et les clients de discussion en ligne. Les types de serveurs utilisés sont les suivants: serveurs Web, serveurs FTP, serveurs d'applications, serveurs de bases de données, serveurs de noms, serveurs de fichiers, serveurs de messagerie, serveurs de terminaux et serveurs d'impression..
Dans un modèle client / serveur, le serveur est souvent surchargé lorsque le nombre de requêtes client simultanées augmente. Dans une application Web, ce problème est exclu car un navigateur Web compatible suffit pour que l'application Web fonctionne. Parmi les exemples d’applications Web, citons: la messagerie Yahoo, Gmail, WebOffice, Google Apps, Microsoft Office Live, WebEx, etc..
Résumé:
1. Une application client / serveur utilise une architecture à deux niveaux, tandis qu'une application Web utilise une architecture à plusieurs niveaux..
2. Dans une application client / serveur, l'interaction de l'utilisateur avec le serveur s'effectue principalement via une interface utilisateur, tandis que dans une application Web, l'interaction de l'utilisateur se fait via un navigateur Web compatible..
3. Une application client / serveur manque de robustesse, car si un serveur tombe en panne, les demandes ne peuvent pas être complétées, alors qu'une application Web présente une robustesse..
4. Une application client / serveur nécessite une installation sur la machine du client, tandis qu'une application Web peut s'exécuter directement à partir d'un navigateur Web compatible..
5. Dans un modèle client / serveur, le serveur peut être surchargé par les demandes croissantes du client, ce qui entraîne une baisse des performances, alors que plusieurs utilisateurs peuvent utiliser une application Web en même temps tout en offrant des performances supérieures..