ホームページ >ウェブフロントエンド >jsチュートリアル >Tursloaditの開始 - 重要な概念
画像処理は自分自身を実装するのがそれほど難しいわけではありません。また、まさにそのためにあらゆる種類のライブラリがあります。では、なぜサードパーティのサービスを使用してそれを処理したいのですか?
一つには、アプリケーションが実際に何であるかに集中することができます。ミッションクリティカルな機能に開発努力を集中できるのに、ユーザープロファイルの写真機能性に追加の時間と労力を費やすのはなぜですか?
ファイルの処理には、通常、サーバーに追加のライブラリまたはプログラムをインストールする必要があります。たとえば、GDまたはImageMagick for Imagesまたはffmpeg for vidos and audio。サードパーティのサービスを使用することで、それらのインストール、構成、または保守を心配する必要はありません。
トランスロードサーバーは、ファイルのアップロードを処理するために高度に最適化されているため、自分で実装する場合よりもパフォーマンスがはるかに優れている可能性があります。
分散型です。アップロードされたファイルがサービスを介して、Webサーバーに保存する必要なく、S3などの外部ストレージソリューションに直接移動するように設定できます。これは小規模なアプリケーションでは大きな利点ではないように思えるかもしれませんが、たとえばクラスターなど、複数のサービスがあるところまで成長するとすぐに利益を享受できます。
追加の発売ポイントを導入します。
容量の実際の定義は、サービスを使用しているものによって異なります。画像処理のコンテキストでそれが何を意味するかを説明するために、元のファイルのファイルサイズを追加した処理された画像の合計サイズに追加することにより、1つの特定の画像アップロードの処理に伴う使用法を決定できます。 したがって、800kbの画像をアップロードします。これは、400kbの大規模バージョン、200kbの中版、30kbのサムネイルを生成するために使用されます。次のサイズの入力として可能な限り小さなバージョンを使用する場合、それは(800kb 400kb)(400kb 200kb)(200kb 30kb)= 2,030kbを制限に向けて使用します。これらの計算は、ビデオやオーディオの操作を開始するとより複雑になるため、おそらく彼らのウェブサイトに相談したいと思うでしょう。
プロセスをよりよく理解するために、サービスを構成する概念とコンポーネントのいくつかを見てみましょう。
概念アセンブリ
アセンブリは、基本的に、特定のファイル(またはファイルのグループ)で実行したいアクションをtrusloaditサービスに伝える一連の命令です。
実際には、おそらくさまざまな種類のファイルに対して異なるアセンブリ命令を作成するでしょう。その後、サブタイプの微妙に異なるアセンブリ命令を作成するでしょう。たとえば、ユーザープロファイルの写真 /アバターには、特定のサイズのセットが必要になる場合があり、プロファイルはまったく異なるセットをバナーします。したがって、このシナリオでは、それぞれのアセンブリ命令のセットを作成します。
アセンブリの指示には、実行する処理と順序で正確に定義されている手順のリストが含まれています。各ステップはロボットによって実行されますロボット
インポートロボットは、フォームベースのファイルアップロードだけでなく、さまざまなソースからファイルを取得できます。たとえば、HTTPを介してファイルをインポートしたり、FTPを使用したり、Amazon S3 Bucketからダウンロードしたりするロボットを作成できます。
アセンブリフローロジックロボットを使用して着信ファイルをフィルタリングできます。たとえば、画像ではないファイルを拒否するためにロボットをセットアップできます。画像ロボットは、画像ファイルでさまざまなタスクを実行します。画像ファイルを最適化したり、スクリーンショットを撮影したりするためのロボットもあります。
ビデオおよびオーディオロボットは、これらの特定のファイルタイプでアクションを実行します。このチュートリアルは画像に焦点を当てているため、これらを詳細に見ることはありませんが、後でフォローアップ記事のために調整されたままです。ファイルエクスポートロボットは、アセンブリの結果を何らかの形の永久ストレージに転送するために使用されます。 TransLoaditはファイルをホストしないことに注意することが重要です。処理後にS3バケットを介してダウンロードできるようにしますが、24時間を超えて保管されません。あなたのファイルがあなたが制御するどこかに保存されるようにするのはあなたの責任です。ロボットをセットアップしてファイルをAmazon S3バケットに転送したり、Rackspaceクラウドファイルに転送したり、FTPを使用してサーバーに転送できます。
建物のアセンブリの指示アセンブリ命令は、JSON形式で定義されているか、さまざまな利用可能なライブラリのいずれかで使用できるハッシュとして定義されています。ほとんどの場合、公式のjQueryプラグインを使用してクライアントアプリケーションからサービスと対話するでしょうが、他にも利用できるオプションがあります。クライアント側のアプリケーションから必ずしも使用する必要はありません。サーバー側のライブラリもあります。
パート2では、アセンブリの指示を詳細に作成する方法を調べます。
アセンブリの手順では、ロボットにファイルをどうするかを伝えますが、実行するために必要な追加情報も含めます。これは、特にファイルのエクスポート手順に関しては、S3バケットまたはFTPサービスにアクセスできる資格情報が必要になるため、実際の問題です。クライアント側のコードでこれらを明確に定義することは悲惨なものであるため、そのため、テンプレートを使用します。
アセンブリの手順を定義するのではなく、たとえばjQueryプラグインを使用する場合、TrussLoadit APIを呼び出すときに、代わりにTransLoaditのサーバーに関連するアセンブリ命令を含むJSONドキュメントを作成し、そのテンプレートを一意のIDで参照できます。 。テンプレートは、追加のセキュリティのために暗号化されたサーバー側です。また、追加のパラメーターをマージしたり、既存のパラメーターを実行時にテンプレートにオーバーライドしたりすることもできます。
署名署名は、テンプレートがストレージ関連の資格情報を保護するのとほぼ同じ方法で、クライアント側のコードでTransloadit認証資格情報を公開する問題を回避します。
アセンブリの指示で変数を使用できます。これらは、処理されたファイルのファイル名を決定するときに特に役立ちます。たとえば、アップロードされたユーザーAvatarを変更している場合は、ユーザーIDまたはユーザー名を提供して、結果のファイル名の一部を形成できます。後で、あなたが定義できるさまざまな手順の名前が変数としてどのように使用できるかを確認します。 フォームフィールドを使用して
この最初の部分では、TransLoaditサービスを高レベルで検討しました。私たちはそれが何ができるか、そしてそのようなサービスを使用して、そうでなければ自分自身を実装するかもしれない種類のタスクを実行することの長所と短所のいくつかを見ました。
TransLoaditは大量のデータを処理できますか?これはクラウドベースのサービスです。つまり、アプリケーションの需要を満たすために拡大することができます。いくつかのファイルまたは数百万を処理するかどうかにかかわらず、TransLoaditはそれを処理できます。 Java、およびPhp。つまり、使用している言語に関係なく、TrussLoaditをアプリケーションに統合できます。コストは、処理する必要があるデータの量と必要な機能に依存します。詳細については、TransLoadit Webサイトをご覧ください
はい、TrussLoaditは幅広いビデオ処理操作をサポートしています。ビデオをエンコードしたり、カットしたり、透かしを追加したりすることもできます。 TransLoaditは、MP4、AVI、MOVなどのさまざまな形式でビデオを処理できます。メールまたはウェブサイトから連絡できます。また、広範なドキュメントとコミュニティフォーラムを提供し、質問をして他のユーザーからヘルプを得ることができます。モバイルデバイスでTransLoaditを使用できますか? 。 Trussloadit APIをモバイルアプリケーションに統合して、デバイスからファイルを直接アップロードおよび処理できるようにします。 TransLoaditはiOSとAndroidの両方をサポートしています
以上がTursloaditの開始 - 重要な概念の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。