


Bagaimana untuk menjalankan PHP pada seni bina AWS ServerLess? Bahagian Apa yang tanpa pelayan?
Lambda, perkhidmatan tanpa pelayan utama AWS, membenarkan untuk menjalankan kod pada pelbagai masa jalan. Walau bagaimanapun PHP tidak secara eksplisit dalam penerangan produk rasmi. Adakah ini bermakna anda tidak boleh menjalankan kod PHP pada Lambdas? Tidak, tidak!
Dalam siri ini (dihasilkan daripada ceramah yang saya berikan kepada AWS User Group Poitiers), kita akan membincangkan apa itu tanpa pelayan dan cara untuk mendapatkan PHP (jika itu bahasa kegemaran anda) untuk dijalankan pada Lambda.
Apa itu tanpa pelayan?
Serverless ialah paradigma pengehosan di mana penyedia awan secara dinamik menskalakan sumber yang diperuntukkan kepada beban kerja pelanggan, sambil menguruskan bukan sahaja infrastruktur fizikal (pelayan, penyejukan kuasa) tetapi juga sehingga masa jalan pelaksanaan (menampal, ..).
Dalam erti kata yang ketat, pengiraan diperuntukkan untuk setiap permintaan, yang membawa kepada model harga "skala-ke-sifar" (tiada sumber dibayar mengikut jam, tetapi hanya berkadar dengan permintaan sebenar), sambil menyediakan terbina dalam tinggi -ketersediaan.
Itu menambah manfaat Cloud yang lain, terutamanya fakta bahawa segala-galanya disertakan dengan API, menjadikan automasi mungkin.
Jumlah manfaat ini memungkinkan untuk memiliki persekitaran fana cawangan ciri yang hampir percuma, meningkatkan produktiviti pembangun dan masa pendahuluan.
Tanpa pelayan bukan sahaja tentang pengiraan!
Terdapat banyak penyelesaian dalam ekosistem tanpa pelayan. Apabila pengiraan Tanpa Pelayan (Lambda) muncul, pada tahun 2014, baris gilir terurus (SQS) telah wujud selama sedekad dan S3 selama 8 tahun.
Perhatikan bahawa dalam slaid di atas, Aurora tidak sepadan dengan definisi ketat Tanpa Pelayan kami kerana ia tidak berskala kepada sifar (v1 berskala kepada sifar tetapi kemudian boleh mengambil masa beberapa minit untuk bermula, dengan v2 yang anda perlukan pada sekurang-kurangnya 0.5 ACU pada kedua-dua contoh penulis dan pembaca anda untuk pangkalan data bersedia untuk menyampaikan pertanyaan.
Anda akan dapati di bawah seni bina biasa untuk mengehos aplikasi web yang melibatkan perkhidmatan tanpa pelayan sahaja. Mengehos aplikasi sedemikian mungkin berharga kurang daripada $1/tahun untuk bilangan pengguna yang terhad.
Adakah Tanpa Pelayan hanya untuk perkhidmatan mikro?
Ya.. dan tidak. Ia direka bentuk dengan mengambil kira perkhidmatan mikro tetapi anda masih boleh menggunakan seni bina monolitik (selagi anda tidak mempunyai urutan permulaan yang berpanjangan setiap kali persekitaran baharu dilancarkan).
Pilihan tanpa pelayan untuk menyelesaikan cabaran biasa dengan perkhidmatan mikro: Orkestrasi dan Koreografi
Seni bina perkhidmatan mikro memungkinkan untuk mengurangkan gandingan antara komponen aplikasi (menggunakan bahasa berbeza, melalui corak tak segerak, meningkatkan kebolehskalaan dengan mengalih keluar gandingan peringkat infrastruktur).
Walau bagaimanapun, apabila kita mempunyai berbilang fungsi satu guna, melaksanakan logik perniagaan mungkin memerlukan penyelarasan antara fungsi. Penyelarasan ini boleh dilaksanakan menggunakan dua corak asas.
- Orkestrasi: dalam corak ini, kami mengawal seruan fungsi dengan cara yang penting. Ini sering digunakan dalam domain perniagaan, apabila fungsi disampaikan oleh satu pasukan perkhidmatan. Pendekatan tanpa pelayan untuk ini ialah AWS StepFunction, aliran kerja / mesin keadaan. Terdapat tutorial yang bagus tentang cara menyelaraskan fungsi Lambda menggunakan StepFunction di sini.
- Koreografi: corak ini lebih relevan dalam senario merentas perniagaan domain, dengan pasukan perkhidmatan yang berasingan, untuk mengekalkan gandingan yang sangat terhad. Bas acara membolehkan aplikasi untuk menolak acara dan melanggan acara. Berbilang pengguna boleh melanggan acara yang sama dan setiap pengguna boleh menapis apa sahaja acara yang mereka perlukan. Perkhidmatan AWS teras untuk ini ialah EventBridge. Anda akan menghantar catatan blog yang saya tulis mengenainya di sini.
Mengenali Lambda
Lambda ialah penyelesaian Fungsi-sebagai-Perkhidmatan AWS. Dengan Lambda, anda boleh menggunakan kod anda dan mendapatkan ketersediaan tinggi serta kebolehskalaan serta-merta, tanpa perlu risau tentang penggunaan instance dan tampalan OS atau masa jalan.
Lambda boleh digunakan dengan invokasi segerak (melalui Gerbang API, Pengimbang Beban Aplikasi atau url fungsi Lambda) atau invokaton tak segerak (bertindak balas kepada peristiwa yang dijana AWS atau dijana pengguna).
Apabila anda menggunakan Lambda, anda memilih jumlah memori yang diperlukan untuk dijalankan. CPU yang diperuntukkan adalah berkadar. Anda kemudian membayar berdasarkan bilangan milisaat yang digunakan. Sebagai contoh, Lambda 128Mb berharga 1.7*10^-9$/ms. Itulah 164 jam pengiraan sebelum anda membelanjakan dolar pertama anda.
Dan penimbang Lambda. Cepat. Jauh lebih pantas daripada yang lain. Tiada lagi ralat 429s (atau 500 jika beban kerja anda tidak dilindungi dengan baik) disebabkan oleh variasi trafik yang tinggi.
Menyelesaikan cabaran utama dengan LambdaLiths: sejuk bermula
Persekitaran pelaksanaan Lambda hanya memproses satu permintaan pada masa tertentu dan digunakan semula untuk permintaan seterusnya. Ini bermakna, untuk menskalakan fungsi Lambda atau apabila fungsi Lambda tidak digunakan untuk seketika, Lambda perlu memulakan persekitaran pelaksanaan baharu : itu permulaan yang sejuk.
Jika permulaan sejuk memudaratkan permohonan anda (sekali lagi, itu mungkin lebih baik daripada semua trafik menjadi perlahan atau mencecah 429s), maka terdapat beberapa pilihan. AWS mempunyai artikel bagus tentang menggunakan pemanas Lambda atau menetapkan konkurensi yang diperuntukkan untuk menanganinya. Selain itu, untuk pengguna Java, ciri Lambda SnapStart memungkinkan untuk menyampaikan prestasi permulaan sejuk yang baik, dengan merakam gambar mikroVM selepas JVM bermula.
Bagaimana pula dengan sokongan PHP?
Soalan Lazim produk rasmi menyatakan ia "menyokong Java, Go, PowerShell, Node.js, C#, Python dan kod Ruby secara asli, serta menyediakan API Runtime yang membolehkan anda menggunakan sebarang bahasa pengaturcaraan tambahan untuk mengarang fungsi anda."
Dalam catatan blog seterusnya dalam siri ini, kami akan menerangkan cara anda boleh menjalankan PHP pada Lambda dengan memanfaatkan dua rangka kerja yang berbeza, Bref dan Penyesuai Web Lambda, serta membandingkan kemungkinan yang ditawarkan oleh setiap satu daripadanya.
Atas ialah kandungan terperinci Bagaimana untuk menjalankan PHP pada seni bina AWS ServerLess? Bahagian Apa yang tanpa pelayan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas











Dalam php, kata laluan_hash dan kata laluan 1) password_hash menjana hash yang mengandungi nilai garam untuk meningkatkan keselamatan. 2) Kata Laluan_verify Sahkan kata laluan dan pastikan keselamatan dengan membandingkan nilai hash. 3) MD5 dan SHA1 terdedah dan kekurangan nilai garam, dan tidak sesuai untuk keselamatan kata laluan moden.

PHP dan Python masing -masing mempunyai kelebihan mereka sendiri, dan memilih mengikut keperluan projek. 1.PHP sesuai untuk pembangunan web, terutamanya untuk pembangunan pesat dan penyelenggaraan laman web. 2. Python sesuai untuk sains data, pembelajaran mesin dan kecerdasan buatan, dengan sintaks ringkas dan sesuai untuk pemula.

PHP digunakan secara meluas dalam e-dagang, sistem pengurusan kandungan dan pembangunan API. 1) e-dagang: Digunakan untuk fungsi keranjang belanja dan pemprosesan pembayaran. 2) Sistem Pengurusan Kandungan: Digunakan untuk penjanaan kandungan dinamik dan pengurusan pengguna. 3) Pembangunan API: Digunakan untuk Pembangunan API RESTful dan Keselamatan API. Melalui pengoptimuman prestasi dan amalan terbaik, kecekapan dan pemeliharaan aplikasi PHP bertambah baik.

Jenis PHP meminta untuk meningkatkan kualiti kod dan kebolehbacaan. 1) Petua Jenis Skalar: Oleh kerana Php7.0, jenis data asas dibenarkan untuk ditentukan dalam parameter fungsi, seperti INT, Float, dan lain -lain. 2) Return Type Prompt: Pastikan konsistensi jenis nilai pulangan fungsi. 3) Jenis Kesatuan Prompt: Oleh kerana Php8.0, pelbagai jenis dibenarkan untuk ditentukan dalam parameter fungsi atau nilai pulangan. 4) Prompt jenis yang boleh dibatalkan: membolehkan untuk memasukkan nilai null dan mengendalikan fungsi yang boleh mengembalikan nilai null.

PHP masih dinamik dan masih menduduki kedudukan penting dalam bidang pengaturcaraan moden. 1) kesederhanaan PHP dan sokongan komuniti yang kuat menjadikannya digunakan secara meluas dalam pembangunan web; 2) fleksibiliti dan kestabilannya menjadikannya cemerlang dalam mengendalikan borang web, operasi pangkalan data dan pemprosesan fail; 3) PHP sentiasa berkembang dan mengoptimumkan, sesuai untuk pemula dan pemaju yang berpengalaman.

PHP terutamanya pengaturcaraan prosedur, tetapi juga menyokong pengaturcaraan berorientasikan objek (OOP); Python menyokong pelbagai paradigma, termasuk pengaturcaraan OOP, fungsional dan prosedur. PHP sesuai untuk pembangunan web, dan Python sesuai untuk pelbagai aplikasi seperti analisis data dan pembelajaran mesin.

Menggunakan penyataan preprocessing dan PDO dalam PHP secara berkesan dapat mencegah serangan suntikan SQL. 1) Gunakan PDO untuk menyambung ke pangkalan data dan tetapkan mod ralat. 2) Buat kenyataan pra -proses melalui kaedah menyediakan dan lulus data menggunakan ruang letak dan laksanakan kaedah. 3) Hasil pertanyaan proses dan pastikan keselamatan dan prestasi kod.

PHP dan Python mempunyai kelebihan dan kekurangan mereka sendiri, dan pilihannya bergantung kepada keperluan projek dan keutamaan peribadi. 1.PHP sesuai untuk pembangunan pesat dan penyelenggaraan aplikasi web berskala besar. 2. Python menguasai bidang sains data dan pembelajaran mesin.
