Vor einigen Monaten meldeten einige unserer Kunden Probleme beim Herstellen einer Verbindung zur Verge3D Network WebGL-Anwendung. Wie sich herausstellte, wurde der Grund dafür durch die IP-Adressen von Roskomnadzor bei Amazon Web Services blockiert.
Natürlich unangenehm, aber erträglich. Verge3D ist ein Desktop-Toolkit, und das Veröffentlichen auf Amazon-Hosting ist nett, aber nicht kritisch, damit die Funktion funktioniert. Trotzdem lassen uns solche Ereignisse über die Aussichten nachdenken. Tatsächlich enthält dieser Artikel einige Überlegungen zu Cloud-Diensten im Allgemeinen und zu WebGL-Diensten im Besonderen.

WebGL ist heute die einzige „richtige“ 3D-Technologie für das Web. Und tatsächlich ist es ganz natürlich, dass sich die Tools zum Erstellen und Veröffentlichen von 3D-Inhalten manchmal in der Cloud selbst befinden. Websites wie Sketchfab, Clara.io und Playcanvas bieten einen Cloud-Editor, der 3D-Szenen sammelt. Ich habe auf eine Schaltfläche geklickt und Ihr Inhalt ist jetzt online verfügbar - praktisch!
In Wirklichkeit ist nicht alles so rosig und in diesem Artikel werde ich versuchen zu erklären, warum.

Lieferantenbindung
Das Hauptproblem von Cloud-Diensten ist die Auferlegung einer harten Sucht. Daher werden angepasste 3D-Szenen und andere Elemente in der Cloud gespeichert und können nur in einem bestimmten Webdienst-Editor bearbeitet und konfiguriert werden. Mit der Zeit sammeln sich Best Practices in der Cloud an, und es wird immer schwieriger, sie zu verlassen.
Dank der ständig wachsenden Zahl von Nutzern, die von Werbegeschenken angezogen werden, erhöhen solche Webdienste ständig den Datenverkehr und die Wartungskosten. Diese wiederum werden an die Nutzer weitergegeben, was zu höheren Preisen für bezahlte Kunden führt oder einfach mehr Werbung zeigt.
Das Desktop-Programm und alle von ihm erstellten Dateien bleiben immer in Ihren Händen (es ist klar, dass Sie ein Backup benötigen). Auch wenn die Software nicht mehr unterstützt wird, können Sie sie ohne zeitliche Begrenzung verwenden (hmm, wenn Sie sicherlich kein Abonnement haben - verdammte Wolken sind auch hier).
Die Bremsen
Wenn Sie ein 3D-Künstler sind, wissen Sie sehr gut, wie sich eine Szene mit Hunderten und Tausenden von Objekten, Materialien und Texturen verlangsamen kann, selbst wenn Sie an einer Grafikstation arbeiten.

Fügen Sie nun eine Netzwerkverbindung (die von unterschiedlicher Qualität sein kann) von oben hinzu, und es wird deutlich, dass Sie im Online-Editor bequem nur einfache Szenen erstellen können.
Integration
Cloud-Inhalte werden von einem zentralen Server über einen universellen Viewer wie einen YouTube-Videoplayer an Benutzer verteilt. Oft fehlen ihm die Funktionen, die Sie wirklich brauchen, und umgekehrt gibt es völlig nutzlose Knöpfe, Logos und andere Lametta, die nicht entfernt werden können.
Ein gutes Desktop-Programm ermöglicht es Ihnen, alles für sich selbst zu konfigurieren und wird häufig durch Plugins erweitert. Die von ihr generierte benutzerdefinierte Anwendung wird wiederum individuell an einen bestimmten Client angepasst. Falls gewünscht, kann es in die vorhandene Serverinfrastruktur oder -software integriert werden und ist nicht von einer externen Verbindung abhängig.
Server und Domains
Dreidimensionale Online-Inhalte werden normalerweise nicht einzeln angezeigt, sondern funktionieren im Kontext der Umgebung (z. B. ein Online-Shop mit 3D-Anzeige oder ein Konfigurator). Wenn 3D auf Ihrer Site aus der Cloud geladen wird, kann dies zu verschiedenen Problemen führen. Eine davon ist eine Browsersicherheitsrichtlinie, die die Interaktion von Webinhalten einschränkt, die von verschiedenen Domänen heruntergeladen wurden.
Wenn WebGL-Inhalte in derselben Domain wie der Rest der Website gehostet werden, ist der vollständige Zugriff und die Kontrolle über das Frontend der Website möglich. Wenn es sich beispielsweise um einen Konfigurator handelt, kann der Benutzer das Produkt über die Benutzeroberfläche der Site auswählen und konfigurieren und eine Bestellung aufgeben, ohne umzuleiten und neu zu starten.
Datenschutz und Sicherheit
Alles, was in der Cloud veröffentlicht wird, wird der Öffentlichkeit zugänglich gemacht. Selbst wenn es einen "privaten" Modus gibt, sind Ihre Inhalte und andere Informationen für Servicemitarbeiter sichtbar oder können von Hackern gestohlen werden. Man kann nur auf die Professionalität der Entwickler und die Zuverlässigkeit der Cloud-Infrastruktur hoffen.
Und umgekehrt, wenn Sie nichts in der Cloud veröffentlichen, bedeutet dies, dass Informationen nur bei Ihnen gespeichert werden. Was bringt es auch, den Quellcode Ihrer Modelle und Szenen auf einen öffentlichen Server hochzuladen?
Politik
Es ist schwierig, einen Cloud-Server zu finden, dessen Entwickler Ihnen keinen reibungslosen weltweiten Betrieb im 24/7-Modus garantieren. Tatsächlich wissen wir es jetzt genau. Nicht nur in Russland, sondern auch in vielen anderen Ländern, einschließlich China und den Vereinigten Staaten, werden Internet-Zensurprogramme durchgeführt.
Wenn sich Ihr Projekt an ein internationales Publikum richtet, wirken sich Probleme mit der Barrierefreiheit sofort auf Ihr Einkommen aus. Insbesondere läuft auf Amazon
Der Model-Hosting-Service von Sketchfab war nicht verfügbar, während das Epos mit der Telegrammsperre andauerte. Es ist klar, dass alle russischen Unternehmen, die an diesen Service gebunden sind, insbesondere Online-Shops, nicht die besten Zeiten erleben mussten.
Schlussfolgerungen
Es stellt sich heraus, dass Sie zur Gewährleistung von Sicherheit und garantierter Arbeit auf globaler Ebene die Verantwortung für einen Teil der Infrastruktur übernehmen und Entwicklungstools bereitstellen müssen, anstatt diese an Cloud-Services zu delegieren.