LFCA Learn Computing, Manfaat, dan Perangkap Tanpa Server - Bagian 15
- 2626
- 287
- Dr. Travis Bahringer
Serverless Teknologi telah menghasilkan banyak hype di komunitas teknologi yang membangkitkan banyak rasa ingin tahu dan menerima beberapa reaksi sedikit. Ini adalah teknologi yang dimulai dengan peluncuran AWS Lamba pada 2014, yang segera diikuti oleh Fungsi Azure nanti tahun 2016.
Google kemudian diikuti dengan rilis Google Cloud Fungsi pada Juli 2018. Jadi, apa itu teknologi tanpa server? Untuk menjawab pertanyaan ini dengan baik, mari kita bawa pikiran kita kembali ke komputasi berbasis server tradisional.
Dalam model TI tradisional, Anda bertanggung jawab atas segalanya. Sebagai pemilik bisnis, Anda harus menganggarkan untuk server dan peralatan jaringan lainnya seperti router dan sakelar, dan rak untuk berkabung.
Anda juga harus khawatir mendapatkan pusat data yang murni dan aman dan memastikannya dapat secara memadai memberikan daya pendinginan dan redundan dan layanan internet. Setelah diatur, Anda kemudian harus menginstal sistem operasi, dan kemudian menggunakan aplikasi Anda. Selain itu, Anda akan diminta untuk mengatur sistem pemantauan dan menerapkan fitur keamanan seperti firewall dan pencegahan intrusi, dan sistem deteksi.
Seperti yang mungkin Anda duga, ini adalah sumber daya yang intensif, mahal, dan menguras.
Kemudian komputasi awan masuk ke dunia teknologi, sepenuhnya merevolusi cara kita menggunakan dan mengelola server dan aplikasi. Itu menandai era baru di mana pengembang akan dengan mudah menyiapkan server cloud dan database dalam waktu singkat dan mulai mengerjakan aplikasi mereka. Jangan khawatir tentang masalah yang terkait dengan komputasi TI tradisional seperti downtime, peralatan mahal, dan menyewa pusat data.
Sementara komputasi awan membawa kemudahan dan skala ekonomi dalam menggunakan sumber daya TI, beberapa perusahaan akan membeli secara berlebihan unit ruang server dan sumber daya seperti RAM dan CPU untuk mengantisipasi lonjakan lalu lintas jaringan atau aktivitas yang mungkin membanjiri aplikasi.
Sementara itu adalah langkah yang bijaksana, hasil yang tidak diinginkan adalah kurang dimanfaatkan dari sumber daya server yang sering sia -sia. Bahkan dengan autoscaling, tetap saja, lonjakan yang tidak terduga dan tiba -tiba bisa terbukti mahal. Juga, Anda masih perlu melakukan tugas -tugas lain seperti menyiapkan penyeimbang beban yang juga cenderung meningkatkan biaya operasional.
Jelas bahwa meskipun melakukan pergeseran ke cloud, beberapa hambatan masih berlama -lama dan memiliki potensi meningkatkan biaya dan menyebabkan pemborosan sumber daya. Dan di sinilah Komputasi tanpa server datang.
Apa itu komputasi tanpa server
Komputasi tanpa server adalah model cloud yang menyediakan layanan backend kepada pengguna berdasarkan bayar-saat-Anda-pergi. Secara sederhana, penyedia cloud mengalokasikan sumber daya menghitung dan biaya hanya untuk waktu yang dijalankan aplikasi. Ini setara dengan beralih dari paket bulanan untuk pembayaran kabel untuk membayar hanya untuk saat Anda menonton acara TV Anda.
Syarat 'Serverless'Mungkin sedikit menyesatkan. Apakah ada server yang terlibat? Tentu, bagaimanapun, dalam hal ini, server dan infrastruktur yang mendasarinya murni ditangani dan dipelihara oleh penyedia cloud. Karena itu, Anda tidak perlu khawatir tentang mereka. Sebagai pengembang, fokus Anda murni untuk mengembangkan aplikasi Anda dan memastikan mereka bekerja untuk kepuasan Anda.
Dengan melakukan itu, komputasi tanpa server menghilangkan sakit kepala mengelola server dan menghemat waktu yang berharga untuk mengerjakan aplikasi Anda.
Layanan backend yang disediakan oleh komputasi tanpa server
Contoh sempurna dari layanan backend tanpa server Fungsi-sebagai-layanan (Faas) platform. Faas adalah model komputasi awan yang memungkinkan pengembang untuk mengembangkan, menjalankan, dan mengelola kode dalam menanggapi peristiwa tanpa kompleksitas membangun dan mengelola infrastruktur yang mendasarinya yang biasanya terkait dengan penyebaran layanan microser.
Faas adalah subkategori komputasi tanpa server dengan perbedaan halus. Komputasi tanpa server mencakup berbagai layanan termasuk komputasi, database, penyimpanan, dan API untuk menyebutkan beberapa. FAAS semata-mata fokus pada model komputasi yang digerakkan oleh peristiwa di mana aplikasi dieksekusi sesuai permintaan, yaitu, sebagai tanggapan atas permintaan.
Contoh dari Faas Model komputasi meliputi:
- AWS Lambda oleh AWS
- Fungsi Azure oleh Microsoft
- Fungsi Cloud oleh Google
- Pekerja Cloudflare oleh Cloudflare
Singkatnya, kami telah melihatnya dengan Faas, Anda hanya membayar untuk waktu yang dijalankan aplikasi Anda dan penyedia cloud cukup banyak melakukan segalanya untuk Anda termasuk menangani infrastruktur yang mendasarinya. Mengelola server adalah yang paling sedikit dari kekhawatiran Anda.
Manfaat Komputasi Tanpa Server
Sekarang, Anda memiliki ide bagus tentang beberapa manfaat yang dibawa oleh komputasi tanpa server ke meja. Mari kita sel lebih dalam keunggulan merangkul teknologi.
1. Tidak ada manajemen server
Ini mungkin salah satu keuntungan terbesar dari mengadopsi model komputasi tanpa server. Meskipun istilah 'serverless'Mungkin disalahartikan untuk menyiratkan bahwa tidak ada server yang terlibat, faktanya, aplikasi masih berjalan di server. Inti dari masalah ini adalah manajemen server sepenuhnya adalah bisnis vendor cloud, dan ini memberi Anda lebih banyak waktu untuk mengerjakan aplikasi Anda.
2. Penskalaan yang mudah dan efisien
Infrastruktur tanpa server menyediakan penskalaan aplikasi otomatis sebagai respons terhadap lonjakan penggunaan, permintaan, atau pertumbuhan basis pengguna. Jika aplikasi berjalan pada beberapa contoh, server akan mulai dan berhenti saat diperlukan. Dalam pengaturan komputasi awan tradisional, lonjakan lalu lintas atau aktivitas dapat dengan mudah membebani sumber daya server yang mengarah ke ketidakkonsistenan dengan aplikasi yang dijalankan.
3. Ketersediaan bawaan
Sebagai pengembang, Anda tidak perlu membangun infrastruktur khusus untuk membuat aplikasi Anda sangat tersedia. Komputasi tanpa server memberi Anda ketersediaan tinggi bawaan untuk memastikan bahwa aplikasi Anda sudah berjalan dan berjalan saat diminta untuk melakukannya.
4. Mengurangi biaya operasi
Komputasi tanpa server mengalokasikan sumber daya berdasarkan bayar-seperti-Anda. Aplikasi Anda hanya akan membutuhkan fungsi backend saat kode dieksekusi dan akan skala secara otomatis berdasarkan jumlah beban kerja.
Ini memberikan skala ekonomi karena Anda hanya ditagih untuk saat aplikasi berjalan. Dalam model server tradisional, Anda harus membayar ruang server, database di antara sumber daya lain terlepas dari apakah aplikasi sedang berjalan atau menganggur.
5. Penyebaran aplikasi yang lebih cepat
Arsitektur tanpa server menghilangkan kebutuhan untuk konfigurasi backend dan mengunggah kode secara manual ke server seperti dalam pengaturan tradisional. Mudah bagi pengembang untuk mengunggah tumpukan kecil kode dengan cara yang efisien dan meluncurkan produk yang hebat.
Kemudahan penyebaran juga memungkinkan pengembang untuk dengan mudah menambal dan memperbarui fitur kode tertentu tanpa mengubah seluruh aplikasi.
Perangkap komputasi tanpa server
Apakah ada kelemahan yang terkait dengan model tanpa server? Mari kita cari tahu.
1. Keamanan
Aplikasi yang tidak dikonfigurasi dengan buruk menimbulkan salah satu risiko terbesar yang terkait dengan komputasi tanpa server. Jika Anda memilih AWS, Misalnya, lebih bijaksana untuk mengonfigurasi izin yang berbeda untuk aplikasi Anda yang pada gilirannya, tentukan bagaimana mereka akan berinteraksi dengan layanan lain dalam AWS. Di mana izin tidak jelas, fungsi atau layanan dapat memiliki lebih banyak izin daripada yang diperlukan, meninggalkan ruang yang cukup untuk pelanggaran keamanan.
2. Vendor Lock-In
Memilih model tanpa server dapat menghadirkan tantangan saat bermigrasi ke vendor lain. Ini terutama karena masing -masing vendor memiliki fitur dan alur kerja sendiri yang sedikit bervariasi dari yang lain.
3. Kesulitan dalam pengujian dan debugging aplikasi
Tantangan lain yang diajukan oleh model tanpa server adalah kesulitan dalam mereproduksi lingkungan tanpa server untuk menguji dan memantau kinerja kode sebelum ditayangkan. Ini terutama karena pengembang tidak memiliki aksesibilitas ke layanan backend yang merupakan pelestarian penyedia cloud.
4. Kesulitan dalam memantau aplikasi tanpa server
Memantau aplikasi tanpa server adalah usaha yang rumit untuk alasan yang sama dengan debugging dan pengujian adalah tugas yang menanjak. Ini telah diperparah oleh tidak tersedianya alat -alat dengan integrasi untuk layanan backend seperti AWS Lamba.
Kesimpulan
Komputasi tanpa server terus mendapatkan daya tarik dan penyerapan di antara perusahaan dan pengembang karena 3 alasan utama. Salah satunya adalah keterjangkauan yang menyiratkan pengurangan biaya operasional. Kedua, komputasi tanpa server memfasilitasi penskalaan otomatis dan cepat, dan akhirnya, pengembang tidak perlu khawatir tentang infrastruktur yang mendasarinya yang ditangani oleh vendor.
Sementara itu, penyedia cloud bekerja sepanjang waktu untuk mengatasi beberapa jebakan yang terkait dengan komputasi tanpa server seperti kesulitan dalam men -debug dan pemantauan aplikasi.
Menjadi Linux Foundation Certified IT Associate (LFCA)