Skip to content

Articles

Dans une application monopage, dois-je traiter les données côté client ou côté serveur ?

27 décembre 2015 • 2 min de lecture

Dans une application monopage, dois-je traiter les données côté client ou côté serveur ?

L’un des arguments de vente de l’application monopage (SPA) était de délester le serveur du travail traditionnellement effectué sur celui-ci en le transférant au client. Je pense que la SPA a tenu cette promesse.

Cependant, ce n’est pas tout rose. Il est facile de devenir trop enthousiaste et de confier trop de travail au client. Nous oublions souvent que nous ne pouvons pas contrôler l’environnement du client — le client peut être n’importe quoi, d’une machine vieille de dix ans au dernier smartphone dernier cri avec accès à des vitesses Internet variables. La seule chose sur laquelle nous pouvons compter, c’est que l’utilisateur consulte notre site dans un navigateur.

Traitement

D’après mon expérience, le traitement intensif et les données nécessitant une cohérence entre le serveur et le client, comme les conversions de dates ou les données nécessitant des calculs précis, comme l’argent, sont d’excellents candidats pour le rendu côté serveur.

Pagination

Une tâche courante effectuée côté client est la pagination. Avec de petits ensembles de données, cela fonctionne très bien ; cependant, les petits ensembles de données ne restent jamais petits. À mesure que les données augmentent, l’application ralentit et finit par devenir non réactive. Malheureusement, vous ne savez pas que cela se produit parce que c’est côté client et, pire encore, cela ne se produit pas sur tous les clients, ce qui rend le dépannage difficile.

Le déplacement de la pagination du client vers le serveur atténuera les problèmes de performance liés à la pagination côté client. Vous vous demandez peut-être : « mais maintenant je fais une tonne d’appels API. Faire autant d’appels API ne semble pas optimal. » C’est vrai, cela semble être le cas, mais vous serez surpris de la rapidité avec laquelle vos données reviennent du serveur. Et la meilleure partie ? Vous contrôlez le serveur et pouvez augmenter la capacité selon les besoins.

En fin de compte, vous voulez offrir à l’utilisateur une expérience riche et réactive, et parfois cela signifie laisser le serveur faire le gros du travail.

Résumé

En résumé, quand c’est possible, nous voulons délester le client du travail, mais ce faisant, nous pouvons rapidement surcharger le client. Garder les tâches ardues comme la pagination et le traitement intensif sur le serveur peut nous protéger de surcharger le client.

Auteur : Chuck Conway est un ingénieur IA avec près de 30 ans d’expérience en génie logiciel. Il construit des systèmes IA pratiques — pipelines de contenu, agents d’infrastructure et outils qui résolvent des problèmes réels — et partage ce qu’il apprend en chemin. Connectez-vous avec lui sur les réseaux sociaux : X (@chuckconway) ou visitez-le sur YouTube et sur SubStack.

↑ Retour en haut

Vous aimerez peut-être aussi