transloadit ist ein Dateiverarbeitungsdienst, der hauptsächlich für die Verarbeitung von Bildern, Videos und Audio entwickelt wurde.
Ermöglicht Ihnen, verschiedene Vorgänge - durchgeführt von dem, was es als „Roboter“ nennt - auf diesen Dateien auszuführen. Zum Beispiel die Größe und Optimierung von Bildern, Extrahieren von Miniaturansichten aus Videos oder Konvertieren von Dateien von einem Format in ein anderes.
MitTransloadit können Sie auch über Ihre Anwendung Dateien direkt auf ihre Server hochladen, um sie zu verarbeiten, und nicht über Ihre Anwendung. In der Tat können Sie Ihren Server insgesamt umgehen und die verarbeiteten Dateien direkt auf einen Amazon S3 -Bucket, ein Rackspace -Cloud -Dateien -Konto oder Ihren eigenen Server über (en) FTP übertragen. Mit anderen Worten, Ihre Bewerbung muss sich nur darum kümmern, wo die resultierenden Dateien gefunden werden können, ohne sie direkt zu verarbeiten oder zu speichern - ideal für die Ausführung verteilter Anwendungen oder für diejenigen auf Clustern.
In diesem Tutorial werden wir einen detaillierten Blick auf TransLoadit und insbesondere verwenden, um Bilder zu verarbeiten. Wir werden uns einige der Schlüsselkonzepte ansehen, z. B. das Erstellen von „Montageanweisungen“, um zu sagen, was wir mit unseren hochgeladenen Bilddateien passieren möchten. Wir werden ein Datei-Upload-Formular "entführen", um eine Datei direkt an Transloadit zu senden, eine Reihe von Anweisungen auszuführen, um eine Reihe von "Derivaten"-unterschiedliche Bilder in unterschiedlicher Größe-zu generieren, und sie dann in einem Amazon S3-Bucket speichern. Schließlich werden wir uns untersuchen, wie wir die Ergebnisse dieser Vorgänge verwenden können, um unsere Anwendung über die neu generierten Dateien zu informieren, damit wir unsere Datenbank entsprechend aktualisieren können.
Bevor wir bei Transloadit im Detail schauen, lohnt es sich, einen Schritt zurück zu machen und zu diskutieren, warum Sie einen Drittanbieter-Service für so etwas in erster Linie verwenden möchten, anstatt alles selbst zu implementieren.
Bildhandling ist nicht so schwierig, sich selbst zu implementieren, und genau das gibt es alle möglichen Bibliotheken. Warum sollten Sie einen Drittanbieter-Service verwenden, um ihn überhaupt zu behandeln?
Zum einen ermöglicht es Ihnen, sich auf das zu konzentrieren, worum es in Ihrer Anwendung wirklich geht. Warum zusätzliche Zeit und Mühe für die Fotototo-Funktionalität des Benutzerprofils verbringen, wenn Sie Ihre Entwicklungsbemühungen auf missionskritische Funktionalität konzentrieren könnten?
Die Bildverarbeitung kann ziemlich ressourcenintensiv sein. Insbesondere kann die Größe der Größe großer Bilder viel Gedächtnis auffressen. Die Verwendung eines Dienstes wie Transloadit erleichtert die Last auf Ihren Servern.
Verarbeitungsdateien müssen normalerweise zusätzliche Bibliotheken oder Programme auf Ihrem Server installieren. Zum Beispiel GD oder Imagemagick für Bilder oder FFMPEG für Videos und Audio. Durch die Verwendung eines Dienstes von Drittanbietern müssen Sie sich keine Sorgen machen, um sie zu installieren, zu konfigurieren oder zu warten.
transloadit "Jobs" kann im Hintergrund ausgeführt werden, anstatt die Ausführung Ihrer Anwendung zu halten. Während es Lösungen gibt, um dies in Ihrer eigenen Anwendung zu umgehen - beispielsweise Warteschlangen wie Rabbitmq oder BeaneStalkd oder Jobserver wie Gearman, die Sie mit Transloadit verwenden, sind Sie von den zusätzlichen Entwicklungsaufwand und Installationsschritten befreit, die zur Implementierung erforderlich sind.
Die Transloadit -Server sind hoch optimiert, um Datei -Uploads zu verarbeiten. Die Leistung kann daher viel besser sein, als wenn Sie sie selbst implementieren.
Ermöglicht, Dateien auf Ihren Webserver hochzuladen, hat auch alle möglichen Sicherheitsauswirkungen, die Sie berücksichtigen müssen. Durch die Verwendung eines Drittanbieters sind diese Risiken etwas gemindert.
Es ist dezentralisiert. Sie können es so einrichten, dass hochgeladene Dateien über den Dienst und direkt in eine externe Speicherlösung wie S3 gehen, ohne jemals auf Ihrem Webserver gespeichert werden zu müssen. Dies scheint zwar in einer kleinen Anwendung kein großer Vorteil zu sein, aber Sie werden die Vorteile nutzen, sobald sie wächst, dass Sie mehrere Dienste haben, beispielsweise einen Cluster.
Abhängig von Ihrer Bewerbung, Ihrer bevorzugten Hosting -Lösung, Ihrem Know -how oder der Zeit, die Sie zufällig in den Händen haben, gilt die Chancen, dass nicht alle nicht zutreffen. Vielleicht keine; Es ist nicht die optimale Lösung für alle Fälle.
Natürlich gibt es Nachteile. Hier sind einige:
Wenn wir all diese Vor- und Nachteile berücksichtigen, werfen wir einen detaillierten Blick auf den Service. Dann werden wir in Teil zwei ein praktisches Beispiel dafür durchlaufen, wie man es verwendet.
transloadit bietet ein kostenloses Sandbox -Konto, mit dem Sie insgesamt 1 GB Kapazität haben können - was mehr als ausreicht, um diesem Tutorial zu folgen, und noch einige andere. Es stehen eine Reihe von bezahlten Plänen zur Verfügung, wodurch Sie unterschiedliche Kapazitäten pro Monat erhalten. Bezahlte Pläne beginnen zum Zeitpunkt des Schreibens bei 19 USD pro Monat.
Die tatsächliche Definition der Kapazität variiert je nach dem Dienst, für den Sie den Dienst verwenden. Um zu veranschaulichen, was dies im Kontext der Bildverarbeitung bedeutet, können Sie die Verwendung bei der Verarbeitung eines bestimmten Bild -Hochladens durch Hinzufügen der Dateigröße der Originaldatei zur Gesamtgröße der resultierenden Bilder bestimmen. Angenommen, Sie laden ein 800 -KB -Bild hoch, mit dem wiederum eine große Version von 400 KB, eine mittlere Version von 200 KB und eine Miniaturansicht von 30 KB generiert wird. Wenn Sie die kleinstmögliche Version als Eingabe für die nächste Größe verwenden, würde dies (800 KB 400 KB) (400 KB 200 KB) (200 KB 30 KB) = 2.030 KB in Richtung Ihrer Grenze verwendet. Diese Berechnungen werden komplexer, wenn Sie mit Videos oder Audio arbeiten. Daher möchten Sie wahrscheinlich ihre Website konsultieren.
Wenn Sie vorhaben, in Teil zwei das praktische Beispiel zu verfolgen und zu durchgehen, ist möglicherweise ein guter Zeitpunkt, um sich anzumelden. Gehen Sie zur Seite und drücken Sie "Get Start".
Schauen wir uns nun einige der Konzepte und Komponenten an, aus denen sich der Service ausbahnt, um den Prozess besser zu verstehen.
Eine Baugruppe ist im Wesentlichen eine Reihe von Anweisungen, die dem Transload -Dienst mitgeteilt werden, welche Aktionen Sie in einer bestimmten Datei (oder einer Gruppe von Dateien) ausführen sollen.
In der Praxis erstellen Sie wahrscheinlich verschiedene Sätze von Montageanweisungen für verschiedene Arten von Dateien. Danach erstellen Sie wahrscheinlich subtil unterschiedliche Montageanweisungen für Untertypen. Beispielsweise benötigen Benutzerprofilbilder / Avatare möglicherweise einen bestimmten Satz von Größen, und Profilbanner einen ganz anderen Satz. In diesem Szenario erstellen Sie für jeden eine Reihe von Montageanweisungen.
Montage -Anweisungen enthalten eine Liste von Schritten, die genau definieren, welche Verarbeitung und in welcher Reihenfolge ausgeführt werden soll. Jeder Schritt wird von einem Roboter durchgeführt.
Ein „Roboter“ ist wie ein Arbeiter, der eine Art Verarbeitung durchführt. Es gibt eine Reihe verschiedener Roboterarten:
Roboter importieren können Dateien aus einer Vielzahl von Quellen und nicht nur über formbasierte Datei-Uploads aufnehmen. Sie können beispielsweise einen Roboter erstellen, der Dateien über HTTP importiert, indem Sie (s) FTP oder durch das Herunterladen von einem Amazon S3 -Bucket herunterladen.
Assembly Flow Logic Roboter können zum Filtern eingehender Dateien verwendet werden. Sie können beispielsweise einen Roboter einrichten, um Dateien abzulehnen, die keine Bilder sind.
Image -Roboter führen eine Reihe verschiedener Aufgaben für Bilddateien aus, vor allem die Größe. Es gibt auch Roboter zum Optimieren von Bilddateien oder zum Aufnehmen von Screenshots.
Video- und Audio -Roboter führen Aktionen auf diesen bestimmten Dateitypen aus. Da sich dieses Tutorial auf Bilder konzentriert, werden wir diese nicht detailliert betrachten-aber später für einen Follow-up-Artikel abgestimmt.
Dateiexportroboter werden verwendet, um das Ergebnis Ihrer Baugruppen auf eine dauerhafte Speicherung zu übertragen. Es ist wichtig zu beachten, dass Transloadit Ihre Dateien nicht hosten. Obwohl sie nach der Verarbeitung über S3 -Eimer zum Download zum Download zur Verfügung stehen, werden sie nicht mehr über 24 Stunden gespeichert. Es liegt in Ihrer Verantwortung, sicherzustellen, dass Ihre Dateien an einem Ort gespeichert sind, den Sie steuern. Sie können einen Roboter so einrichten
Anweisungen zur BaugruppeIn Teil zwei werden wir uns im Detail ansehen, wie Sie Montageanweisungen konstruieren.
Anweisungen der Montage geben den Robotern mit, was mit Ihren Dateien zu tun ist, enthalten jedoch auch zusätzliche Informationen, die sie für die Ausführung benötigen. Dies ist ein echtes Problem, wenn es um die Datei -Exportschritte geht, da sie Anmeldeinformationen erfordern, mit denen sie auf Ihren S3 -Bucket oder (s) FTP -Dienst zugreifen können. Es wäre klar, diese im clientseitigen Code zu definieren, katastrophal. Aus diesem Grund verwenden Sie Vorlagen.
Anstatt Ihre Montageanweisungen zu definieren, wenn Sie die Transloadit -API aufrufen - beispielsweise bei Verwendung des Jquery -Plugins - können Sie stattdessen ein JSON -Dokument erstellen, das die entsprechenden Montageanweisungen auf dem Server von Transloadit enthält, und verweisen Sie dann auf diese Vorlage mit seiner eindeutigen ID . Vorlagen werden für zusätzliche Sicherheit verschlüsselt.
Sie können auch zusätzliche Parameter zusammenführen oder vorhandene in eine Vorlage zur Laufzeit überschreiben - während Sie Ihre sensiblen Informationen wie S3 -Anmeldeinformationen vor neugierigen Augen schützen.
Signaturen gehen das Problem um, Ihre Transload-Authentifizierungsanmeldeinformationen im clientseitigen Code aufzudecken.
Eine Signatur ist im Wesentlichen ein kurzlebiges Zugangs-Token, das Sie auf dem Server generieren, an Ihre Client-Anwendung übergeben und dann mit dem Dienst authentifiziert werden. Wenn jemand diesen Wert erhalten sollte, würde er sehr schnell nutzlos werden. Unterschriften sind auch an einen bestimmten Satz von Montageanweisungen oder eine bestimmte Vorlage „gebunden“, wodurch sie noch sicherer sind.Variablen
Verwenden von Formfeldern
Zusammenfassung
Wir haben uns einige der Konzepte angesehen, die Sie verstehen müssen, um das Beste aus Transloadit herauszuholen, und mit diesem Hintergrundwissen sind wir bereit, ein praktisches Beispiel aufzubauen. Bleiben Sie dran für Teil zwei.
Wie kann ich Transloadit in meine Anwendung integrieren? Durch die Integration von Transloadit in Ihre Anwendung wird die Transload -API verwendet. Diese API enthält eine Reihe von Endpunkten, mit denen Sie Dateien hochladen und verarbeiten können. Sie müssen HTTP -Anforderungen an diese Endpunkte von Ihrer Bewerbung senden. Transloadit bietet SDKs für verschiedene Programmiersprachen, einschließlich JavaScript, Python und Ruby, die den Integrationsprozess vereinfachen können. Dateioperationen. Bei Bildern kann es die Größe der Größe, Ernte und anwenden Filter anwenden. Für Videos kann es Wasserzeichen codieren, schneiden und hinzufügen. Es kann auch Metadaten aus Dateien extrahieren, Dokumente in verschiedene Formate umwandeln und vieles mehr. Die genauen Funktionen hängen vom spezifischen Vorgang und dem Dateityp ab. Alle Datenübertragungen werden mit SSL/TLS verschlüsselt und Dateien werden in der Cloud sicher gespeichert. Transloadit entspricht auch den GDPR- und anderen Datenschutzbestimmungen. Benutzer haben die Kontrolle über ihre Daten und können sie jederzeit löschen. Es handelt sich um einen Cloud-basierten Dienst, der bedeutet, dass er die Anforderungen Ihrer Anwendung erfüllen kann. Unabhängig davon, ob Sie ein paar Dateien oder Millionen verarbeiten, kann Transloadit es verarbeiten.
Wie viel kostet Transloadit? Die Kosten hängen von der Datenmenge ab, die Sie verarbeiten müssen, und von den Funktionen, die Sie benötigen. Weitere Informationen finden Sie auf der Transloadit -Website.
Kann ich Transloadit auf mobilen Geräten verwenden? . Sie können die Transloadit -API in Ihre mobile Anwendung integrieren, sodass Sie Dateien direkt vom Gerät hochladen und verarbeiten können. Transloadit unterstützt sowohl iOS als auch Android.
Das obige ist der detaillierte Inhalt vonErste Schritte mit Transloadit - Schlüsselkonzepte. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!