Rumah >hujung hadapan web >tutorial js >Fungsi tanpa pelayan: Panduan Penggunaan dan Penggunaan

Fungsi tanpa pelayan: Panduan Penggunaan dan Penggunaan

Lisa Kudrow
Lisa Kudrowasal
2025-02-10 09:30:11369semak imbas

Serverless Functions: A Guide to Usage and Deployment

Pada tahun -tahun kebelakangan ini, fungsi tanpa pelayan (kadang -kadang disebut sebagai "tanpa pelayan" atau "pengkomputeran tanpa pelayan") telah menjadi teknologi popular. Walau bagaimanapun, masih terdapat banyak kekeliruan mengenai istilah ini. Bagaimana cara menjalankan kod tanpa pelayan? Apakah kelebihan dan kekurangan teknologi ini? Dalam keadaan apa yang boleh digunakan? Dalam artikel ini, saya berharap dapat menjawab soalan -soalan ini dan memberi anda gambaran yang baik tentang teknologi.

mata utama

    Fungsi tanpa pelayan membolehkan pemaju menjalankan kod tanpa menguruskan pelayan.
  • Oleh kerana corak pengebilannya (dikenakan berdasarkan masa pengiraan sebenar, biasanya dikira dalam milisaat), fungsi-fungsi ini adalah kos efektif untuk beban kerja sporadis atau ringan.
  • Walaupun fungsi tanpa pelayan secara automatik untuk mengendalikan peningkatan lalu lintas, mereka paling sesuai untuk proses kitaran hayat pendek kerana had masa pelaksanaan maksimum yang dikenakan oleh penyedia awan.
  • Kes penggunaan biasa untuk fungsi tanpa pelayan termasuk tugas backend mudah seperti pengirim bentuk, pekerjaan cron yang dijadualkan, dan tugas pemprosesan imej, yang membuktikan kepelbagaian mereka dalam mengendalikan pelbagai operasi backend kecil.
  • Menggunakan fungsi tanpa pelayan melibatkan membuat kod fungsi, membungkusnya dengan kebergantungan yang diperlukan dan memuat naiknya ke pembekal awan, dengan butiran khusus yang berbeza -beza oleh pembekal dan teknologi khusus yang digunakan.

Apakah fungsi tanpa pelayan?

Kali pertama saya mendengar istilah "tanpa pelayan" pasti akan membangkitkan rasa ingin tahu. "Bagaimana untuk menjalankan kod di web tanpa pelayan?" Apa yang sebenarnya bermakna ialah sebagai pemaju, anda tidak perlu bimbang tentang pelayan di mana kod berjalan. Konfigurasi perkakasan, konfigurasi rangkaian, pemasangan dan pelanjutan perisian semuanya disokong oleh penyedia tanpa pelayan.

Dari sudut pandangan pembangunan, fungsi tanpa pelayan adalah pakej kod yang anda muat naik ke pembekal tanpa pelayan seperti AWS atau Google. Kod ini boleh dikonfigurasikan untuk bertindak balas terhadap permintaan melalui URL, dijalankan seperti yang dijadualkan (iaitu melalui pekerjaan Cron), atau hubungi dari perkhidmatan lain atau fungsi tanpa pelayan.

Fungsi tanpa pelayan adalah sesuai untuk menambah fungsi backend ke aplikasi front-end tanpa kerumitan dan kos menjalankan pelayan penuh.

Pada yang lain melampau, anda juga boleh membina keseluruhan aplikasi menggunakan fungsi tanpa pelayan. Digabungkan dengan perkhidmatan awan lain yang menyediakan penyimpanan fail, sistem pangkalan data, dan pengesahan, aplikasi besar, mantap dan berskala boleh dibina tanpa mengkonfigurasi pelayan tunggal.

Kelebihan fungsi tanpa pelayan

Fungsi tanpa pelayan berjalan dalam bekas mini yang dimulakan atas permintaan. Mereka direka untuk berjalan yang agak singkat, jadi pengebilan adalah tertakluk kepada ini. Tidak seperti contoh pelayan penuh yang biasanya dibilkan mengikut jam, fungsi tanpa pelayan biasanya dibilkan dalam detik GB. Oleh kerana masa pengebilan terpendek adalah kira-kira milisaat, frekuensi rendah atau beban kerja sporadis dijalankan sebagai fungsi tanpa pelayan jauh lebih murah daripada contoh pelayan tradisional. Beban kerja ringan dan prototaip mungkin jatuh di bawah tahap percuma beberapa pembekal.

panggilan atas permintaan fungsi tanpa pelayan bermakna mereka boleh diperkuat dengan cepat dan mudah tanpa memerlukan pemaju untuk melakukan kerja tambahan. Ini menjadikan mereka ideal untuk situasi di mana lalu lintas boleh berkembang dengan tidak dapat diramalkan, kerana lebih banyak fungsi fungsi akan disediakan secara automatik untuk mengendalikan beban. Selepas itu, fungsi itu akan diturunkan, bermakna anda tidak perlu membayar kapasiti yang tidak digunakan.

Kelebihan utama model tanpa pelayan ialah ia tidak memerlukan pemprosesan pelayan. Menjalankan aplikasi web memerlukan banyak masa dan kepakaran pengurusan pelayan untuk memastikan perisian terkini dengan patch keselamatan dan memastikan bahawa pelayan dikonfigurasi dengan betul untuk keselamatan dan prestasi tinggi. Untuk permulaan dan perniagaan kecil, menyewa orang untuk mengendalikan pengurusan pelayan adalah overhead tambahan yang besar. Dengan tanpa pelayan, pemaju boleh memberi tumpuan kepada penciptaan penyelesaian.

Kekurangan fungsi tanpa pelayan

Sudah tentu, tiada teknologi yang sempurna, dan fungsi tanpa pelayan mempunyai kekurangan mereka. Seperti yang saya nyatakan sebelum ini, reka bentuk model tanpa pelayan adalah jangka pendek. Kerana masa pelaksanaan maksimum adalah dalam beberapa minit (contohnya, 15 minit pada AWS dan 9 minit di Google), ia tidak sesuai untuk pekerjaan jangka panjang, seperti memproses sejumlah besar data.

Satu lagi isu yang dibincangkan secara meluas adalah masa permulaan yang sejuk. Ini adalah masa yang diperlukan untuk pembekal untuk mengkonfigurasi dan memulakan bekasnya sebelum fungsi tanpa pelayan siap untuk mula berjalan. Selepas fungsi dijalankan, bekas akan disimpan untuk seketika untuk digunakan semula apabila kod itu dilaksanakan semula. Kelewatan "permulaan sejuk" ini boleh menambah kelewatan setengah saat hingga satu saat untuk masa tindak balas fungsi. Terdapat beberapa penyelesaian, termasuk plugin pemanasan untuk rangka kerja tanpa pelayan, yang mengemukakan fungsi anda seperti yang dirancang untuk memastikan bekas aktif.

Walaupun fungsi tanpa pelayan membolehkan anda mengelakkan bimbang tentang konfigurasi dan penyelenggaraan pelayan, ini tidak bermakna tiada lengkung pembelajaran. Aplikasi bangunan yang menggunakan pelayan tidak memerlukan minda yang berbeza daripada menggunakan pangkalan kod monolitik tradisional. Anda perlu membina kod anda dengan cara yang berbeza, memecahkan fungsi ke dalam perkhidmatan yang lebih kecil dan lebih bebas untuk menampung batasan fungsi tanpa pelayan. Penyebaran juga lebih kompleks, kerana setiap fungsi adalah versi dan dikemas kini secara bebas.

Kadang-kadang terdapat juga rujukan kepada isu penguncian vendor, yang merupakan kelemahan teknologi tanpa pelayan. Setakat ini, penyedia utama dalam bidang ini (AWS, Google, Azure) mempunyai alat pelaksanaan dan pengurusan yang berbeza. Ini boleh menjadikannya sukar untuk memindahkan aplikasi tanpa pelayan dari satu pembekal awan ke yang lain. Projek -projek seperti rangka kerja tanpa pelayan cuba untuk abstrak perkhidmatan asas supaya aplikasi boleh dipindahkan antara penyedia.

Fungsi Serverless Gunakan kes

Walaupun fungsi tanpa pelayan boleh digunakan untuk membina keseluruhan aplikasi, mari kita lihat beberapa kes penggunaan yang kurang bercita -cita tinggi di mana pelayan tidak dapat memberi manfaat kepada pemaju purata.

Bentuk Program Mel

Laman web biasanya benar -benar statik, kecuali untuk borang hubungan yang pelanggan ingin menghantar e -mel kepada pengguna apabila mereka mengklik untuk menghantar. Penyedia hosting laman web mungkin atau mungkin tidak menyokong skrip sisi pelayan, dan walaupun ia disokong, ia mungkin bukan bahasa yang anda kenal. Menetapkan fungsi tanpa pelayan sebagai pengirim bentuk membolehkan anda menambah ciri ini ke laman web yang dihoskan secara statik.

Tugasan Cron

Kadang -kadang anda mungkin perlu menjalankan tugas yang dijadualkan di latar belakang. Biasanya, anda perlu membayar untuk menubuhkan pelayan untuk pekerjaan Cron, dan pelayan ini terbiar antara pekerjaan. Dengan fungsi tanpa pelayan, anda hanya membayar untuk masa yang diperlukan untuk kerja untuk dijalankan (jika berada di dalam peringkat percuma, anda tidak boleh membayar sama sekali).

Generator Thumbnail

Katakan aplikasi React anda membolehkan pengguna memuat naik foto untuk digunakan sebagai avatar sepanjang aplikasi. Anda ingin mengubah saiz imej yang dimuat naik supaya anda tidak membazirkan jalur lebar dengan memberikan imej yang lebih besar daripada yang anda perlukan. Fungsi tanpa pelayan boleh digunakan untuk memproses permintaan memuat naik, mengubah saiz imej ke saiz yang dikehendaki dan simpannya ke perkhidmatan seperti S3 atau Google Storage.

Contoh praktikal fungsi tanpa pelayan

Untuk mendapatkan pemahaman yang lebih mendalam tentang bagaimana fungsi tanpa pelayan berfungsi, mari kita lihat contoh sebenar. Kami akan membuat halaman statik dengan borang pendaftaran siaran akhbar yang menggunakan fungsi tanpa pelayan untuk menyimpan nama pengguna dan alamat e-mel ke Google Spreadsheets.

Bergantung pada pembekal, fungsi tanpa pelayan boleh ditulis dalam pelbagai bahasa, tetapi kami akan menggunakan JavaScript kerana Netlify menyokong fungsi Node.js. Untuk terus belajar, saya menganggap anda mempunyai versi terkini Node/NPM yang dipasang pada komputer tempatan anda.

(langkah -langkah berikut adalah sama dengan contoh asal. Untuk mengekalkan konsistensi, tiada terjemahan berulang akan dibuat di sini.)

Serverless: Hanya fesyen, atau masa depan untuk backend?

Serverless juga dikecam sebagai fesyen dan dipuji sebagai masa depan aplikasi backend. Fungsi Lambda Amazon telah wujud sejak tahun 2014 dan merupakan produk utama untuk AWS. Sudah tentu, dalam banyak kes, fleksibiliti dan fungsi pelayan sebenar yang berjalan 24/7 dengan akses shell penuh masih diperlukan.

Walau bagaimanapun, seperti yang telah kita lihat, kos rendah tanpa server, skalabilitas, dan kos penyelenggaraan yang rendah menjadikannya pilihan yang baik untuk beberapa jenis beban kerja. Dengan kemunculan lebih banyak buku, kursus, rangka kerja dan perkhidmatan dalam ekosistem tanpa pelayan, adalah selamat untuk mengatakan bahawa fungsi tanpa pelayan akan wujud untuk masa yang lama.

(bahagian FAQ berikut adalah sama dengan contoh asal. Untuk mengekalkan konsistensi, tiada terjemahan berulang akan dibuat di sini.)

Atas ialah kandungan terperinci Fungsi tanpa pelayan: Panduan Penggunaan dan Penggunaan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn