3
Takeaways Key
Transloadit adalah perkhidmatan pemprosesan fail yang digunakan terutamanya untuk memproses imej, video, dan audio, yang membolehkan pelbagai operasi seperti mengubah saiz, mengoptimumkan, dan penukaran format. Ia membolehkan fail muat naik terus ke pelayan mereka, melangkaui pelayan anda, dan memindahkan fail yang diproses terus ke ember Amazon S3, akaun fail awan rackspace, atau pelayan anda sendiri melalui FTP.
Dalam tutorial ini kita akan melihat rupa terperinci di Transloadit, dan khususnya menggunakannya untuk mengendalikan imej. Kami akan melihat beberapa konsep utama, seperti membina "arahan pemasangan" untuk menceritakan apa yang kami mahu berlaku pada fail imej kami yang dimuat naik. Kami akan "merampas" borang muat naik fail untuk menghantar fail terus ke transloadit, menjalankan satu set arahan untuk menghasilkan beberapa "derivatif"-imej bersaiz berbeza-dan kemudian simpannya ke baldi Amazon S3. Akhirnya, kita akan melihat bagaimana kita boleh menggunakan hasil operasi ini untuk memaklumkan permohonan kami mengenai fail yang baru dijana, supaya kami dapat mengemas kini pangkalan data kami dengan sewajarnya.
Sebelum kita melihat secara terperinci di Transloadit, ia patut mengambil langkah mundur dan membincangkan mengapa anda ingin menggunakan perkhidmatan pihak ketiga untuk sesuatu seperti ini di tempat pertama, dan bukannya melaksanakannya sendiri.
Mengapa menggunakan perkhidmatan pihak ketiga?
Pelayan transloadit sangat dioptimumkan untuk mengendalikan muat naik fail, jadi prestasi mungkin jauh lebih baik daripada jika anda melaksanakannya sendiri.
Membenarkan fail yang dimuat naik ke pelayan web anda juga mempunyai pelbagai implikasi keselamatan yang harus anda pertimbangkan. Dengan menggunakan perkhidmatan pihak ketiga, risiko ini agak dikurangkan.
Ia terdesentralisasi. Anda boleh menetapkannya sehingga fail yang dimuat naik melalui perkhidmatan dan terus ke penyelesaian storan luaran seperti S3, tanpa perlu disimpan di pelayan web anda. Walaupun ini mungkin tidak kelihatan besar dalam aplikasi berskala kecil, anda akan meraih faedah sebaik sahaja ia tumbuh ke titik di mana anda mempunyai pelbagai perkhidmatan, contohnya kluster.
secara semulajadi, terdapat kelemahan. Berikut adalah beberapa:
Ia memperkenalkan titik-kegagalan tambahan.
Bermula dengan Transloadit
Definisi sebenar kapasiti berbeza mengikut apa yang anda gunakan untuk perkhidmatan. Untuk menggambarkan apa yang dimaksudkan dalam konteks pemprosesan imej, anda boleh menentukan penggunaan yang terlibat dalam memproses satu muat naik imej tertentu dengan menambahkan saiz fail fail asal, kepada jumlah saiz imej yang diproses yang dihasilkan. Oleh itu, katakan anda memuat naik imej 800kb, yang seterusnya digunakan untuk menghasilkan versi besar 400kb, versi sederhana 200kb dan lakaran kecil 30kb. Jika anda menggunakan versi terkecil mungkin sebagai input untuk saiz semula seterusnya, maka itu akan menggunakan (800kb 400kb) (400kb 200kb) (200kb 30kb) = 2,030kb ke arah had anda. Pengiraan ini menjadi lebih kompleks apabila anda mula bekerja dengan video atau audio, jadi anda mungkin ingin merujuk laman web mereka.
Jika anda bercadang untuk mengikuti dan melalui contoh praktikal dalam bahagian dua, kini mungkin masa yang baik untuk mendaftar. Pergi ke laman web dan tekan "Bermula".
Sekarang mari kita lihat beberapa konsep dan komponen yang membentuk perkhidmatan, untuk lebih memahami proses.
Konsep
Dalam amalan, anda mungkin akan membuat set arahan pemasangan yang berbeza untuk pelbagai jenis fail. Selepas itu, anda mungkin akan membuat arahan pemasangan yang berbeza untuk sub-jenis. Sebagai contoh, gambar profil pengguna / avatar mungkin memerlukan satu set saiz tertentu, dan spanduk profil set yang sama sekali berbeza; Jadi dalam senario ini, anda akan membuat satu set arahan pemasangan untuk setiap.
Arahan pemasangan mengandungi senarai langkah -langkah, menentukan dengan tepat apa pemprosesan untuk dilaksanakan dan dalam urutan apa. Setiap langkah dilakukan oleh robot.
"robot" adalah seperti pekerja, yang melakukan beberapa jenis pemprosesan. Terdapat beberapa jenis robot yang berbeza:
Robot import boleh mengambil fail dari pelbagai sumber, dan bukan hanya melalui muat naik fail berasaskan borang. Sebagai contoh, anda boleh membuat robot yang mengimport fail melalui HTTP, menggunakan FTP (s) atau dengan memuat turunnya dari baldi Amazon S3.
Robot logik aliran pemasangan boleh digunakan untuk menapis fail masuk - sebagai contoh, anda boleh menyediakan robot untuk menolak fail yang bukan imej.
Robot imej melakukan beberapa tugas yang berbeza pada fail imej, terutamanya mengubah saiz. Terdapat juga robot untuk mengoptimumkan fail imej atau mengambil tangkapan skrin.
Robot video dan audio melakukan tindakan pada jenis fail tertentu. Kerana tutorial ini memberi tumpuan kepada imej, kami tidak akan melihatnya dengan terperinci-tetapi tetap disesuaikan untuk artikel susulan kemudian.
Robot eksport fail digunakan untuk memindahkan hasil perhimpunan anda ke beberapa bentuk storan tetap. Adalah penting untuk diperhatikan bahawa transloadit tidak menjadi tuan rumah fail anda; Walaupun mereka membuatnya tersedia untuk dimuat turun melalui baldi S3 selepas diproses, mereka tidak akan disimpan melebihi 24 jam. Tanggungjawab anda untuk memastikan fail anda disimpan di tempat yang anda kendalikan. Anda boleh menyediakan robot untuk memindahkan fail anda ke baldi Amazon S3, ke fail awan Rackspace, atau memindahkannya ke pelayan anda menggunakan FTP.
Arahan pemasangan ditakrifkan dalam format JSON, atau sebagai hash yang boleh anda gunakan dengan salah satu daripada pelbagai perpustakaan yang ada. Kebanyakan masa anda mungkin akan menggunakan plugin jQuery rasmi untuk berinteraksi dengan perkhidmatan dari aplikasi klien anda, tetapi terdapat pilihan lain yang tersedia. Anda tidak semestinya menggunakannya dari aplikasi sisi klien-terdapat perpustakaan sisi pelayan yang tersedia juga.
Dalam bahagian kedua, kami akan melihat bagaimana anda membina arahan pemasangan secara terperinci.
Arahan Perhimpunan Beritahu robot apa yang perlu dilakukan dengan fail anda, tetapi juga termasuk maklumat tambahan yang mereka perlukan untuk menjalankannya. Ini adalah isu sebenar apabila ia datang kepada langkah -langkah eksport fail khususnya, kerana mereka akan memerlukan kelayakan yang mereka dapat mengakses baldi S3 anda atau (s) FTP. Jelas menentukan ini dalam kod klien akan menjadi bencana, jadi atas sebab itu anda akan menggunakan templat.
dan bukannya menentukan arahan pemasangan anda apabila anda memanggil API Transloadit - sebagai contoh, apabila menggunakan plugin jQuery - anda boleh membuat dokumen JSON yang mengandungi arahan pemasangan yang berkaitan pada pelayan transloadit, dan kemudian merujuk template dengan ID uniknya . Templat disulitkan pelayan untuk keselamatan tambahan.
Anda juga boleh menggabungkan parameter tambahan, atau mengatasi yang sedia ada, menjadi templat pada masa runtime - sepanjang masa, menyimpan maklumat sensitif anda seperti kelayakan S3 yang selamat dari mata prying.
TandatanganTandatangan pada dasarnya adalah token akses jangka pendek, yang akan anda hasilkan pada pelayan, lulus ke aplikasi klien anda dan kemudian gunakan untuk mengesahkan dengan perkhidmatan. Sekiranya seseorang mendapat nilai itu, maka ia akan menjadi tidak berguna. Tandatangan juga "terikat" kepada satu set arahan pemasangan tertentu, atau satu templat tertentu, menjadikannya lebih selamat.
pembolehubah
menggunakan medan borang
Di bahagian pertama ini, kami telah mengambil pandangan peringkat tinggi pada perkhidmatan transloadit. Kami telah melihat apa yang boleh dilakukannya, dan beberapa kebaikan dan keburukan menggunakan perkhidmatan sedemikian untuk melaksanakan jenis tugas yang mungkin anda lakukan sendiri.
Berapa banyak kos transloadit? Kos bergantung kepada jumlah data yang anda perlukan untuk memproses dan ciri -ciri yang anda perlukan. Anda boleh mendapatkan lebih banyak maklumat di laman web Transloadit.
Ya, Transloadit menyokong pelbagai operasi pemprosesan video. Anda boleh mengekodkan video, memotongnya, menambah tanda air, dan banyak lagi. Transloadit boleh mengendalikan video dalam pelbagai format, termasuk MP4, AVI, dan MOV. Anda boleh menghubungi mereka melalui e -mel atau melalui laman web mereka. Mereka juga menyediakan dokumentasi yang luas dan forum komuniti di mana anda boleh mengemukakan soalan dan mendapatkan bantuan daripada pengguna lain. . Anda boleh mengintegrasikan API Transloadit ke dalam aplikasi mudah alih anda, membolehkan anda memuat naik dan memproses fail terus dari peranti. Transloadit menyokong kedua -dua iOS dan Android.
Atas ialah kandungan terperinci Bermula dengan Transloadit - Konsep Utama. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!