Supabase ergänzt fortsetzbare Uploads mit tus
Open Source ist das Herzstück von Transloadit, und zwei unserer Projekte, Uppy und tus, prägen ihre jeweiligen Bereiche. Passend dazu freuen wir uns, Supabase vorzustellen, ein Open-Source-Backend-as-a-Service, das vor Kurzem das tus-Protokoll eingeführt hat, um fortsetzbare Uploads zu ermöglichen.

Mit tus, unserem offenen Protokoll für fortsetzbare Uploads, verfolgen wir derzeit eine Mission: Es soll zum Standard für Datei-Uploads im Internet werden – bis hin zu unserem Einsatz dafür, fortsetzbare Datei-Uploads in HTTP aufzunehmen. Genau diese Mission hat Supabase ursprünglich zu tus geführt, wie ihr Storage Lead Fabrizio Fenoglio erklärt:
„Bei Supabase haben wir uns verpflichtet, vollständig Open Source zu sein. Dazu gehört auch, die Open-Source-Community zu stärken, indem wir offene Protokolle und Bibliotheken einsetzen. Wir haben uns für unsere fortsetzbaren Uploads für tus entschieden, nicht nur, weil es Open Source ist, sondern auch, weil sich das Team hinter dem Protokoll für die Standardisierung fortsetzbarer Uploads einsetzt.“
Fabrizio Fenoglio
Bevor wir genauer darauf eingehen, wie Supabase tus nutzt, haben wir Fabrizio gebeten, uns etwas mehr über Supabase zu erzählen und darüber, wie es eine flexiblere und entwicklerfreundlichere Alternative zu herkömmlichen Backend-Lösungen bietet.
„Supabase ist ein Open-Source-Backend-as-a-Service, mit dem Entwickler Web- und Mobile-Anwendungen einfach erstellen und skalieren können. Mit Supabase können sich Entwickler stärker darauf konzentrieren, großartige Anwendungen zu bauen, und müssen sich weniger um die Verwaltung der Infrastruktur kümmern.“
Mit Tools für eine Postgres-Datenbank, Authentifizierung, Edge Functions, Storage und mehr ist Supabase im Bereich cloudbasierter Backends ohne Zweifel eine feste Größe.
Die Vorteile fortsetzbarer Uploads
Vor der Einführung von tus setzte Supabase Storage auf veraltete Multipart-HTTP-Uploads. Für Nutzer mit schlechter Verbindung ist das natürlich keine gute Erfahrung, denn bei einem Signalverlust muss der Upload komplett von vorne beginnen. Fabrizio erläutert die Vorteile fortsetzbarer Uploads genauer:
„Durch den Wechsel zu einem fortsetzbaren Upload-Modell können wir große Dateien zuverlässig hochladen und sogar über instabile Verbindungen hochladen, wie man sie zum Beispiel in einer Mobile-App vorfindet. Generell nutzen unsere Kunden fortsetzbare Uploads lieber als herkömmliche Multipart-Uploads.“
Der Umstieg auf tus
Für den Umstieg von Multipart-Uploads entschied sich das Supabase-Team für tus-node-server, eine offizielle Implementierung des tus-Protokolls für den Einsatz auf einem Node-Server. Damit diese Implementierung zu ihren Anforderungen passte, musste das Supabase-Team allerdings einige Änderungen vornehmen.
„Die Integration war recht einfach. Die Node-Implementierung ist jedoch nicht so ausgereift wie die Go-Implementierung, deshalb mussten wir in unserem Fork einige Änderungen vornehmen. Wir stehen derzeit in Kontakt mit den Transloadit-Entwicklern und arbeiten mit ihnen daran, unsere Änderungen in die offizielle Implementierung zu übernehmen.“
Gemeinsam das Beste aus tus machen
Die Ergebnisse sprechen für sich: Das Feedback von Supabase war für unsere Mission, tus zu standardisieren, von unschätzbarem Wert, insbesondere durch die Beiträge zu tus-node-server. Nehmen Sie zum Beispiel PR #410 oder #446 oder einen der anderen PRs und Fixes, die Entwickler von Supabase und Transloadit diskutiert haben. Hier eine kurze Liste von Issues, an denen wir aktiv gemeinsam arbeiten:
- #408 - Unterstützung für Locker hinzufügen, einschließlich eines verteilten Locks
- #457 - Objekt-Präfixe hinzufügen
- #458 - Fehler wegen ungültiger Zeichen im Header
x-amz-meta-filebeheben - #459 -
isCompletedzur Info-KlasseUploadhinzufügen - #460 - Middleware für die Zugriffskontrolle einführen
- #461 - Server in Runtimes aufteilen, damit tus am Edge laufen kann
Der Weg zur Standardisierung
Dank der Kraft von Open Source ist tus seinem Ziel, fortsetzbare Datei-Uploads im gesamten Web zu standardisieren, einen Schritt nähergekommen, und mit der Hilfe von Teams wie Supabase rücken wir diesem Ziel jeden Tag ein Stück näher.
Bevor wir zum Schluss kommen: Schauen Sie sich unbedingt die Launch Week von Supabase vom 7. bis 11. August 2023 an, in der eine ganze Reihe neuer Features erscheint 🚀
