
Setelah mulai mengembangkan sistem aplikasi, sejak 2013, sejarahnya dijelaskan dalam publikasi sebelumnya:
kami menghentikan rilis versi baru pada tahun 2017. Ini tidak berarti bahwa kami telah berhenti menemani produk dan mengembangkannya. Faktanya adalah bahwa dalam waktu singkat, kami memiliki perusahaan klien besar yang secara teratur memesan kustomisasi produk utama, itulah sebabnya mengapa hampir semua sumber daya proyek digunakan untuk mendukung pelanggan besar.
Sebagai kompensasi,
kami merilis ZENLIX 2.95 (
tautan ) yang
tersedia untuk umum . Perlu dicatat bahwa versi pada GitHub adalah produk yang tidak ada hubungannya dengan versi ZENLIX 3.x.
Pada titik tertentu, kami mulai menyadari bahwa kami kehilangan sisa pelanggan kami. Itu perlu untuk membuat perubahan radikal dalam kebijakan dukungan perusahaan. Di satu sisi, kami dibatasi oleh perjanjian pendamping dengan kemungkinan meningkatkan anggaran, di sisi lain, kami tidak mampu meningkatkan staf pengembang. Akibatnya, takdir memberi kami kesempatan seperti itu.
Pada Januari 2019, satu perjanjian dukungan pelanggan berakhir dan kami memformat ulang staf untuk memulai napas baru produk.
Pengembangan dimulai
Selama 2 tahun, sebagian besar modul frontend (js) yang digunakan, serta backend (php), sudah usang. Oleh karena itu, untuk pengenalan fitur dan pengembangan baru, perlu menyiapkan platform sehingga di masa depan dimungkinkan untuk menggunakan peluang dan sumber daya terbaru, menerapkan UI modern yang memenuhi kebutuhan konsumen.
Kami mulai dengan backend, yaitu peningkatan kerangka kerja dari Laravel 5.1 ke Laravel 5.5 (LTS). Ada beberapa pilihan untuk memperbarui proyek saat ini, tetapi seperti yang ditunjukkan oleh praktik rekan kami, ini adalah proses yang kompleks dan tidak dapat dibenarkan, sebagai akibatnya ada risiko terjebak dalam refactoring kode, yang pada gilirannya akan menunda peningkatan selama beberapa bulan.
Kami telah memilih opsi kedua. Untuk melakukan ini, kami menginisialisasi proyek bersih pada Laravel 5.5 (LTS), kemudian memasang semua komposer-modul (versi stabil terbaru), termasuk mereka dalam file layanan Laravel, menghasilkan sumber daya dan mengkonfigurasinya, berdasarkan pada versi ZENLIX sebelumnya. Setelah itu, kami melakukan transfer Pengontrol, Model, Migrasi, Templat, bagian lain, dan objek bisnis. Sebagian besar metode fundamental harus ditulis ulang. Misalnya, modul otorisasi / registrasi (dengan kemungkinan otorisasi melalui layanan pihak ketiga), sistem notifikasi lengkap (antrian yang tersedia) dan lainnya. Itu juga memberikan keuntungannya - kami menemukan beberapa masalah pemberitahuan di versi lama dan mengecualikannya di yang baru. Sebagai hasil dari porting kode, serta penggunaan Laravel 5.5, persyaratan perangkat lunak minimum untuk PHP meningkat: PHP> = 7.0.0. Karena itu, kami juga menulis ulang beberapa fungsi dan implementasi yang sudah usang.
Kita dapat mengatakan secara resmi bahwa sekarang ZENLIX 3.5
mendukung PHP 7.3 . Transisi ke versi baru Laravel 5.5 + PHP 7.3 memberikan peningkatan signifikan dalam kecepatan aplikasi sebesar 64% dibandingkan dengan versi 3.x.
Kami juga menulis ulang dan mengoptimalkan kode microservice nodejs. Sekarang ia menggunakan modul yang lebih sedikit - express tidak termasuk.
Kami memperbarui tampilan depan: Jquery 3.4, FontAwesome 5, Trumbowyg 2.15 dan modul lainnya.
Hal paling keren tentang ini adalah bahwa kita sekarang menggunakan webpack.mix.js, dan setelah rilis kita menghasilkan file js diminimalkan dari 20 -> 1 dan file css dari 13 -> 1. Itu juga memberikan peningkatan yang signifikan dalam kecepatan rendering bagian klien dari tampilan konten.
Kami belum mengubah kebijakan kontrol keterbukaan produk kami. Tidak ada ioncube, dll. Semua kode masih terbuka untuk pelanggan kami. Tidak ada kontrol selain dari perjanjian lisensi, yang secara ketat mengatur penggunaan produk dalam kerangka satu subjek aktivitas organisasi.

Dan di versi baru, kami menerapkan
beberapa fitur yang mudah :
- Kemampuan untuk menonaktifkan item menu, serta fungsinya.
Sekarang administrator dapat menonaktifkan modul untuk semua orang: Pengguna, Grup, Pesan, Pusat Pengetahuan, Kalender, Laporan.
- Sistem pembaruan dan repositori instalasi tetap menjadi hambatan. Kami ingin administrator dapat memilih apa yang akan memperbaruinya, meskipun ada perubahan dalam kode lokal. Sebagai hasilnya, menggunakan pengalaman mendukung perusahaan besar kami, kami menerapkan ini pada server GitLab. Saat membeli suatu produk, klien diberikan akses read_only ke repositori git. Shell dari perintah konsol ZENLIX membuat proses lebih lembut dan lebih nyaman daripada menggunakan bare git pull. Tapi ini tidak melarang penggunaan yang terakhir untuk bergabung. Sistem pembaruan produk sekarang hanya berfungsi melalui konsol (php artisan zenlix: update). Melalui web, administrator masih dapat memeriksa versi baru, serta membaca informasi / instruksi pada rilis / pembaruan. Dengan meluncurkan perintah konsol, administrator menempatkan sistem dalam status layanan dan proses pembaruan dimulai.
- Sistem pemasangan konsol, sekarang sebagai jenis utama pemasangan produk. (php artisan zenlix: install) memungkinkan penggunaan nama pengguna / kata sandi untuk mendapatkan versi ZENLIX, serta untuk membuat konfigurasi dasar. Dalam kebanyakan kasus, tim ini diperlukan oleh spesialis teknis kami yang melakukan instalasi produk secara remote secara remote.
Sistem untuk menciptakan pengguna baru, serta membuat aplikasi (pilihan pengguna) dan banyak perubahan kecil lainnya, yang secara umum sangat mempengaruhi kegunaan produk jadi, telah diperbaiki.
Secara terpisah, perlu dicatat bahwa kami menyiapkan gambar VM siap pakai (vmdk, ovf) dengan perangkat lunak berikut, sudah dengan ZENLIX diinstal dan dikonfigurasi:
- Ubuntu 18.04.2 LTS
- Nginx v1.14.0
- PHP v7.2.17-0
- MySQL v5.7.26-0
- Node v8.10.0
- Supervisord v3.3.1
- Redis v5.0.4
- ZENLIX v3.5
Kesimpulan
Secara umum, kami ingin menyimpulkan bahwa setelah meningkatkan platform produk ke versi stabil terbaru (Laravel 5.5), dukungan penuh untuk PHP 7.3, memiliki sistem pembaruan produk stabil (git), kami berencana untuk merilis pembaruan stabil yang lebih sering. Kami memiliki banyak implementasi hal-hal yang menarik dan nyaman dari proyek khusus lainnya. Secara bertahap kami akan mentransfernya ke ZENLIX. Minimal, kami akan membuat aplikasi Android, API lengkap untuk membuat dan bekerja dengan permintaan, kait Web untuk acara dan hal-hal lainnya.
Kami akan dengan senang hati menjawab semua pertanyaan Anda melalui surat:
info@zenlix.com , serta
telegram .