PHP Developer's Center
PHP dianggap sebagai salah satu bahasa pemrograman server-side yang paling mudah digunakan. Penggunaannya untuk situs web (10 juta teratas menurut peringkat Alexa) terus bertumbuh dan saat ini mencapai 78.9%. Popularitas mesin PHP juga dibuktikan oleh pelanggan platform karena hampir setiap server kedua dijalankan di atas PHP menurut statistik internal kami.
Mari kita ambil perjalanan ke cloud hosting PHP dalam platform, keistimewaan, poin kemenangan, dan kemungkinan kaya yang disediakan untuk menjalankan aplikasi secara efisien.
Gunakan tabel konten di bawah ini untuk menemukan informasi yang dibutuhkan dalam panduan lebih cepat:
- PHP Versions
- PHP Application Servers
- PHP Application Deployment
- Domains Management
- Automatic Vertical Scaling
- Manual Horizontal Scaling
- Automatic Horizontal Scaling
- PHP Clustering
- Database Connection to PHP Application
- Modules and Accelerators
- PHP Security
PHP Versions
Seiring berkembangnya teknologi, platform mendukung versi mesin PHP terbaru (pada saat penulisan ini):
- 8.0.30
- 8.1.29
- 8.2.23
- 8.3.11
Daftar terbaru rilis yang tersedia pada platform disediakan melalui dokumen Software Stack Versions yang diperbarui secara teratur (mingguan).
Anda dapat memilih versi mesin yang Anda butuhkan saat pembuatan environment dan dengan mudah beralih di antaranya setelahnya melalui platform UI yang intuitif.
PHP Application Servers
Dua server aplikasi PHP disediakan secara default dan didukung oleh platform (mis. pembaruan versi atau patch keamanan ditambahkan oleh tim PaaS ke template):
Untuk melihat secara rinci bagaimana server ini dapat dikonfigurasi dan menemukan daftar file konfigurasi yang dapat diedit untuk masing-masing, lihat dokumen PHP App Server Configuration.
PHP Application Deployment
Zero downtime deployment menyediakan kemampuan untuk menjalankan aplikasi asli cloud atau lama. Untuk menyampaikan proyek PHP Anda ke environment yang dibuat dalam platform, Anda dapat memilih salah satu opsi deployment yang tersedia: melalui Archive/URL, GIT/SVN, proyek Bitbucket, dll.
Selain itu, Anda dapat mengkonfigurasi automatic periodic re-deployment dari repository (ini dilakukan hanya jika terdapat perubahan kode baru).
Semua node PHP yang bersertifikat platform disediakan dengan pengelola dependensi Composer yang sudah diinstal sebelumnya untuk dengan cepat menginstal semua paket yang dibutuhkan untuk proyek yang dideploy dan menjaganya tetap up-to-date.
Domains Management
Untuk keperluan produksi, Anda dapat mengikat nama domain eksternal ke aplikasi Anda sebagai pengganti domain environment default. Ikuti instruksi custom domains yang sesuai untuk mempelajari bagaimana ini dapat dilakukan.
Dengan bantuan fitur swapping domains, pengguna akhir aplikasi Anda tidak akan mengalami downtime apa pun ketika Anda, misalnya, mendeply versi aplikasi baru. Anda dapat menempatkan versi aplikasi baru Anda dalam environment uji dan kemudian menukar URL dengan environment produksi hanya dalam beberapa klik.
Menggunakan multiple domains pada server PHP tunggal meningkatkan kegunaan, efisiensi, dan skalabilitas aplikasi, secara bersamaan menghemat biaya untuk kebutuhan mendirikan instance terpisah.
Automatic Vertical Scaling
Automatic vertical scaling dimungkinkan oleh kemampuan platform untuk secara dinamis mengubah jumlah sumber daya yang dialokasikan (RAM dan CPU) untuk server sesuai dengan permintaan saat ini, tanpa intervensi manual yang diperlukan. Fitur ini menjamin Anda tidak pernah membayar lebih untuk sumber daya yang tidak digunakan dan menghemat waktu Anda karena menghilangkan kebutuhan untuk menangani penyesuaian terkait beban atau perubahan arsitektur.
Untuk mengatur konsumsi sumber daya otomatis oleh server PHP Anda, buka wizard topologi environment dan tentukan batas atas scaling dari cloudlets (setiap cloudlet setara dengan 128 MiB dan 400 MHz) dengan slider yang terletak di atas:
Aplikasi Anda akan bekerja dalam batas-batas ini mengurangi konsumsi sumber daya ketika beban turun atau meningkatkannya ketika beban naik. Dengan demikian, Anda hanya membayar untuk sumber daya yang benar-benar dikonsumsi. Untuk informasi lebih lanjut, silakan merujuk ke dokumentasi tentang automatic vertical scaling.
Manual Horizontal Scaling
Untuk menambahkan server PHP tambahan secara manual, cukup klik Change Environment Topology. Kemudian tekan tombol “+” dalam wizard dan tambahkan jumlah instance yang diperlukan.
Jumlah maksimum server tipe yang sama dalam satu lapisan environment bergantung pada pengaturan penyedia hosting tertentu (biasanya, batas ini adalah 16 node dan dapat disesuaikan dengan mengirimkan permintaan ke dukungan).
Juga, seperti yang Anda lihat, ketika Anda menambahkan server tambahan, load balancing diaktifkan secara otomatis.
Silakan, temukan lebih banyak detail tentang manual horizontal scaling dalam dokumentasi.
Automatic Horizontal Scaling
Automatic horizontal scaling dapat diimplementasikan melalui pemicu yang dapat disesuaikan, yang memantau perubahan beban aplikasi dan meningkatkan atau mengurangi jumlah node karena mereka.
Untuk mengkonfigurasi pemicu untuk automatic horizontal scaling, buka bagian Settings > Monitoring > Auto Horizontal Scaling dan tekan tombol Add.
Dengan cara ini, Anda dapat mengkonfigurasi pemicu untuk stack dan sumber daya (CPU, RAM, Network, Disk) tertentu dalam environment Anda secara terpisah. Cukup tentukan kondisi scaling dan terapkan perubahan.
Silakan, temukan lebih banyak detail tentang automatic horizontal scaling dalam dokumen yang sesuai.
PHP Clustering
Mengimplementasikan PHP sessions clustering untuk aplikasi Anda dapat sangat meningkatkan ketersediaan dan kemampuan failover menggunakan sticky sessions, dijalankan di beberapa node server aplikasi. Mekanisme ini dijamin oleh node Memcached yang harus ditambahkan ke environment Anda dan digunakan sebagai penyimpanan untuk cadangan sesi yang diproses.
Sementara melakukan scaling server PHP dengan aplikasi yang dideploy, Anda mendapatkan salinan persis dengan semua konfigurasi dan file yang sama di dalamnya berkat data synchronization built-in.
Selain itu, platform ini memiliki WordPress Cluster dan Magento Cluster yang tersedia untuk instalasi satu klik untuk memastikan operabilitas layanan Anda. Selain itu, Anda dapat mengemas aplikasi PHP apa pun dengan cara ini untuk mengotomatisasi instalasi yang dikelompokkan.
Database Connection to PHP Application
Platform ini menyediakan satu set server database yang dapat diskalakan dan sepenuhnya dapat dikelola yang dapat Anda instal dan operasikan dengan mudah dalam PHP environment. Untuk melakukan koneksi, sesuaikan aplikasi Anda mengikuti instruksi berdasarkan database yang Anda perlukan:
Modules and Accelerators
Saat bekerja dengan platform, Anda dapat memperluas fungsionalitas environment melalui penetapan berbagai ekstensi PHP pada server aplikasi yang sesuai. Anda dapat memilih salah satu ekstensi default dan mengaktifkannya, atau mengunggah ekstensi khusus Anda sendiri - kedua operasi ini dijelaskan dalam instruksi PHP Modules.
Sebagai jenis ekstensi PHP yang terpisah, PHP accelerators dapat ditentukan. Mereka digunakan untuk memperbesar efisiensi aplikasi Anda melalui caching bagian PHP code yang sudah dikompilasi, yang dapat dieksekusi dengan cepat atas permintaan pengguna.
Server Apache PHP dan NGINX mencakup set inbuilt modules tertentu. Selain itu, ada beberapa tutorial terpisah tentang mengkonfigurasi berbagai modul:
- Adding Custom Apache Modules
- Apache WebDav Module
- Apache Statistics Module
- NGINX WebDav Module
- New Relic Monitoring
PHP Security
SSL / TLS (Secure Sockets Layer / Transport Layer Security) adalah teknologi keamanan standar industri untuk membangun koneksi terenkripsi antara server web dan browser. Teknologi ini didukung oleh platform dan memastikan bahwa semua data yang melewati tetap bersifat pribadi dan rahasia, yaitu, tidak dapat disadap oleh pihak ketiga.
Selain metode perlindungan umum, keamanan aplikasi Anda dapat ditingkatkan melalui customizing the main PHP configuration file, yang dinamai php.ini. Anda dapat mengedit sejumlah pengaturan default yang dikandungnya atau menambahkan yang baru sesuai dengan kebutuhan aplikasi Anda.
Panduan konfigurasi tambahan tersedia untuk server aplikasi tertentu:
Cara lain untuk memastikan perlindungan aplikasi adalah dengan menggunakan container firewall feature. Ini memungkinkan Anda mengontrol ketersediaan nodes baik dari dalam maupun luar platform.
Jelajahi kemungkinan tanpa batas dari PHP dengan platform ini.