
Duktig PHP Framework ramah Docker, cepat dan ringan, ditulis khusus untuk pengembangan layanan mikro
Menyebarkan proyek ini di lingkungan lokal Anda dengan komposisi Docker , mengembangkan beberapa fitur dan membangun gambar Docker.
Semua persiapan gambar Docker untuk penyebaran lingkungan setempat sudah termasuk dalam direktori docker-deployment .
git clone https://github.com/duktig-solutions/Duktig-microservice-php.git
cd Duktig-microservice-php/docker-deployment
docker-compose up -dSetelah penempatan yang berhasil, mari kita periksa aksesibilitasnya:
curl --request GET --url http://localhost:8088/system/ping Anda harus melihat: respons pong ;)
Itu saja! Sekarang Anda dapat membaca contoh dan tutorial untuk langkah -langkah mendatang.
Menyebarkan proyek di lingkungan lokal Anda hanya dengan satu perintah. Semua persiapan gambar Docker pihak ketiga yang diperlukan sudah disertakan dan dikonfigurasi, seperti database, server web, dll ...
Termasuk contoh kode yang bagus dan sangat baik untuk diikuti.
Contoh -contoh ini termasuk pengembangan API RESTful, CRUD, validasi data, akses basis data, alat baris perintah, pesan/antrian, publikasi/berlangganan dan banyak lagi ...
Langkah -langkah yang sangat mudah untuk mengembangkan layanan API yang tenang, termasuk - rute, middleware, controller, model dan respons JSON akhir.
Mekanisme caching data Redis juga disertakan. Dimungkinkan untuk mengonfigurasi rute dengan caching otomatis untuk respons.
Buat alat baris perintah hanya dalam hitungan menit, menggunakan routing dan pengembangan pengontrol.
Langganan acara, pekerja antrian pesan, dan alat lainnya bekerja di lingkungan baris perintah.
Gambar Cron Docker dengan contoh juga termasuk dalam proyek ini.
Proyek Duktig termasuk menerbitkan dan berlangganan fungsionalitas yang dimungkinkan untuk digunakan dalam skenario yang berbeda.
Tujuan umum dari fungsi ini adalah komunikasi antar-layanan, di mana setiap layanan baris perintah dapat berlangganan pesan dari layanan lain.
Fungsi MQ memungkinkan untuk mengembangkan pekerja dan membuat tugas untuk mereka. Konsumen dapat menerima tugas dan dibagi menjadi pekerja untuk diproses.
Setelah tugas selesai dengan gagal, itu dapat mengulangi sampai jumlah ubin yang dikonfigurasi.
Perbedaan utama antara Publish/Subscribe dan Message/Queue adalah bahwa banyak pelanggan dapat menerima pesan yang diterbitkan oleh layanan, ketika tugas Message/Queue unik untuk setiap layanan. Pesan/tugas dapat diterima dan diproses hanya oleh satu pekerja sekaligus.
Setelah kita berbicara tentang pengembangan layanan mikro, masuk akal untuk memiliki arsitektur yang didorong oleh acara yang bagus dan mudah. Seperti yang disebutkan sebelumnya, kami sudah memiliki sistem mekanisme Publish/Subscribe BO Build Event.
Dengan Duktig Framework, dimungkinkan untuk menerbitkan acara dan berlangganan mereka menggunakan Redis. Yang harus Anda lakukan adalah menggunakan pubs pub/sub yang sudah dikembangkan.
Kerangka kerja Duktig termasuk pustaka basis data untuk MySQL dan PostgreSQL. Untuk mengembangkan model basis data, Anda harus mengikuti beberapa langkah sederhana dan mewarisi model dasar untuk digunakan.
Ada kemungkinan untuk menjalankan Asynchronous queries dalam model database.
Alih -alih menyiapkan wadah Cron Docker dari awal, kami menyajikan solusi siap untuk menjalankan dengan sistem cadangan database otomatis. Ini akan memungkinkan Anda untuk mencadangkan database MySQL dengan waktu dan salinan yang dikonfigurasi.
Proyek Duktig mencakup mekanisme caching data sederhana menggunakan server Redis. Untuk pengembangan API yang tenang, dimungkinkan untuk mengatur caching konten otomatis dalam konfigurasi perutean, tanpa menulis baris kode apa pun.
Fungsi validasi reguler memungkinkan Anda untuk memvalidasi banyak jenis data. Namun, juga dimungkinkan untuk membuat array aturan validasi untuk antarmuka API yang tenang dan memvalidasi data/array JSON multidimensi dari permintaan yang masuk. Ini akan memungkinkan Anda untuk membangun antarmuka API dengan cepat dan aman.
Tidak seperti beberapa orang, yang kesulitan menggunakan variabel lingkungan dalam wadah Docker PHP-FPM, Anda dapat menentukan variabel lingkungan Anda dalam file .env dan menggunakannya langsung dalam kode Anda. Yang pasti, semua variabel lingkungan yang ditentukan dalam file YAML Compose Docker atau didefinisikan dalam docker run .. Perintah akan menimpa nilai yang sebelumnya didefinisikan dalam file.
Ini akan memungkinkan Anda untuk mendefinisikan secara dinamis variabel lingkungan dalam waktu penyebaran Docker tanpa mengalami masalah dengan data konfigurasi kode yang keras.
Ada cara untuk mengonfigurasi dan menggunakan tombol akses aman berbasis header untuk permintaan HTTP. Ini adalah kasus sederhana, ketika kita harus melindungi antarmuka API kita yang tenang.
Namun, proyek Duktig termasuk perpustakaan JWT (JSON Web Token) yang dapat Anda gunakan untuk mengembangkan antarmuka yang diamankan untuk API RESTful Anda.
Duktig berarti terampil, mampu, atau pekerja keras - dalam bahasa Swedia.
Dalam frasa seperti OJ, Vad Duktig du är! (Wow, betapa terampilnya Anda!) Ini pujian.
Versi di Duktig ditentukan dengan tiga angka yang terlihat seperti: xxx yaitu 1.3.8
| Nomor pertama | Nomor kedua | Angka ketiga |
|---|---|---|
| Revolusi | Evolusi | Perbaikan bug |
Penulis: Duktig Solutions [email protected]
Ide Pengembangan Proyek mulai 04 April 2019