Il y a quelques mois, certains de nos clients ont commencé à signaler des problèmes de connexion à l'application Verge3D Network WebGL. Il s'est avéré que la raison en était bloquée par les adresses IP de Roskomnadzor Amazon Web Services.
Désagréable, bien sûr, mais supportable. Verge3D est une boîte à outils de bureau, et la publication sur l'hébergement Amazon est agréable, mais pas critique pour que la fonctionnalité fonctionne. Néanmoins, de tels événements nous font penser aux perspectives. En fait, cet article contient quelques considérations sur les services cloud en général et les services WebGL en particulier.

WebGL est la seule technologie 3D «correcte» pour le Web aujourd'hui. Et en fait, il est tout à fait naturel que les outils de création et de publication de contenu 3D soient parfois eux-mêmes dans le cloud. Des sites Web tels que Sketchfab, Clara.io, Playcanvas proposent un éditeur de cloud qui collecte des scènes 3D. J'ai cliqué sur un bouton et votre contenu est maintenant disponible en ligne - c'est pratique!
En réalité, tout n'est pas si rose et dans cet article, je vais essayer d'expliquer pourquoi.

Verrouillage fournisseur
Le principal problème des services cloud est l'imposition d'une forte dépendance. Ainsi, les scènes 3D personnalisées et autres ressources sont stockées dans le cloud et ne peuvent être modifiées et configurées que dans un éditeur de service Web spécifique. Au fil du temps, les meilleures pratiques s'accumulent dans le cloud, et en descendre devient de plus en plus difficile.
Grâce à la base toujours croissante d'utilisateurs attirés par un billet de faveur, ces services Web augmentent constamment le trafic et les coûts de maintenance. Qui, à leur tour, sont répercutées sur les utilisateurs, ce qui entraîne des prix plus élevés pour les clients payés, ou tout simplement plus de publicité.
Le programme de bureau et tous les fichiers qu'il a produits resteront toujours entre vos mains (il est clair que vous avez besoin d'une sauvegarde). Même si le logiciel n'est plus pris en charge, vous pouvez toujours l'utiliser sans limite de temps (hmm, si vous n'avez certainement pas d'abonnement - les foutus nuages sont arrivés ici aussi).
Les freins
Si vous êtes un artiste 3D, vous savez très bien comment une scène avec des centaines et des milliers d'objets, de matériaux et de textures peut ralentir, même si vous travaillez dans une station graphique.

Ajoutez maintenant une connexion réseau (qui peut être de qualité différente) par le haut, et il deviendra clair que dans l'éditeur en ligne, vous ne pouvez créer confortablement que des scènes simples.
Intégration
Le contenu cloud est distribué aux utilisateurs à partir d'un serveur central à l'aide d'une visionneuse universelle comme un lecteur vidéo YouTube. Souvent, il n'a pas les fonctions dont vous avez vraiment besoin, et vice versa, il y a des boutons, logos et autres guirlandes complètement inutiles qui ne peuvent pas être supprimés.
Un bon programme de bureau vous permet de tout configurer par vous-même et est souvent étendu par des plugins. À son tour, l'application personnalisée générée par elle est adaptée individuellement à un client spécifique. Si vous le souhaitez, il peut être intégré à l'infrastructure de serveur ou au logiciel existant et ne pas dépendre d'une connexion externe.
Serveurs et domaines
Le contenu en ligne en trois dimensions n'est généralement pas affiché seul, mais fonctionne dans le contexte de l'environnement (par exemple, une boutique en ligne avec visualisation 3D ou un configurateur). Si la 3D sur votre site est chargée à partir du cloud, cela peut entraîner divers problèmes. L'un d'eux est une politique de sécurité du navigateur qui limite l'interaction du contenu Web téléchargé à partir de différents domaines.
Si le contenu WebGL est hébergé dans le même domaine que le reste du site Web, un accès complet et un contrôle complet depuis le frontend du site deviennent possibles. Par exemple, s'il s'agit d'un configurateur, l'utilisateur peut sélectionner et configurer le produit à l'aide de l'interface du site et passer une commande pour celui-ci, sans redirection ni redémarrage.
Confidentialité et sécurité
Tout ce qui est publié dans le cloud est mis à la disposition du grand public. Même s'il existe un mode «privé», tout de même, votre contenu et autres informations seront visibles par les employés du service ou pourront être volés par des pirates. On ne peut qu'espérer le professionnalisme des développeurs et la fiabilité de l'infrastructure cloud.
Et vice versa, si vous ne publiez rien dans le cloud, cela signifie que les informations ne sont stockées qu'avec vous. Aussi, quel est l'intérêt de télécharger le code source de vos modèles et scènes sur un serveur public?
La politique
Il est difficile de trouver un serveur cloud, dont les développeurs ne vous garantiront pas un fonctionnement sans problème dans le monde entier en mode 24 heures sur 24, 7 jours sur 7. Et en fait, nous le savons maintenant parfaitement. Non seulement en Russie, mais aussi dans de nombreux autres pays, dont la Chine et les États-Unis, des programmes de censure sur Internet sont mis en œuvre.
Si votre projet s'adresse à un public international, tout problème d'accessibilité affecte immédiatement vos revenus. En particulier, courir sur Amazon
Le service d'hébergement de modèles de Sketchfab n'était pas disponible tant que l'épopée avec le verrou Telegram a duré. Il est clair que toutes les entreprises russes qui se sont liées à ce service, en particulier les magasins en ligne, n'ont pas connu le meilleur des temps.
Conclusions
Il s'avère que pour assurer la sécurité et un travail garanti à l'échelle mondiale, vous devez prendre la responsabilité d'une partie de l'infrastructure et fournir des outils de développement, au lieu de la déléguer à des services cloud.