Terima kasih kerana sentiasa menggunakan Nuita.

Kali ini, Nuita telah melaksanakan penambahbaikan besar-besaran pada sistem dalamannya. Oleh sebab perubahan kali ini kebanyakannya merupakan penambahbaikan “di sebalik tabir”, perubahan yang kelihatan pada rupa memang sedikit, namun ini merupakan penyusunan asas yang penting untuk operasi yang lebih stabil dan penambahan ciri pada masa hadapan.

Pengemaskinian Framework dan Library

Kami telah mengemas kini “Ruby on Rails”, framework web yang menggerakkan Nuita, kepada versi terkini 8.0.4. Dengan ini, penerapan tampalan keselamatan serta operasi yang lebih stabil dapat dijangkakan.

Selain itu, kami turut memigrasikan sistem binaan frontend daripada Webpacker kepada mekanisme baharu, menjadikan pemprosesan JavaScript dan CSS lebih pantas. Pakej npm seperti Bootstrap juga telah dikemas kini kepada versi terkini.

Beralih Daripada Perkhidmatan AWS dan Memudahkan Sistem

Sebelum ini, Nuita beroperasi dengan menggabungkan pelbagai perkhidmatan terurus daripada Amazon Web Services (AWS). Walau bagaimanapun, bagi mengurangkan kos operasi dan meningkatkan kebolehselenggaraan, kami telah berpindah kepada konfigurasi yang lebih ringkas.

  • Penamatan Elasticsearch: Kami menamatkan penggunaan Elasticsearch yang sebelum ini digunakan sebagai enjin carian teks penuh, dan beralih kepada fungsi carian teks penuh MariaDB. Tiada perubahan besar pada pengalaman carian, namun kerumitan infrastruktur berkurangan dengan ketara.

  • Perubahan Job Queue: Kami memigrasikan infrastruktur pemprosesan tugasan latar belakang daripada AWS SQS + Shoryuken kepada delayed_job. Pemprosesan tak segerak seperti penghantaran notifikasi kini berfungsi dengan mekanisme yang lebih ringkas.

  • Penamatan DynamoDB: Kami menamatkan penggunaan pangkalan data NoSQL (DynamoDB) yang sebelum ini digunakan untuk sebahagian penyimpanan data, dan menyatukannya ke dalam RDBMS. Konsistensi data bertambah baik dan pertanyaan (query) lebih mudah dioptimumkan.

  • Penamatan Docker/Capistrano/Selenium: Persekitaran pembangunan, penggunaan (deployment) dan ujian turut dipermudahkan, mengurangkan beban penyelenggaraan.

Penyusunan Semula Routing dan Controller

Kami telah memisahkan dengan jelas ruang nama (namespace) URL antara keadaan belum log masuk (awam) dan keadaan selepas log masuk (di bawah member/). Reka bentuk sumber telah diseragamkan mengikut prinsip RESTful, menjadikan penambahan ciri dan pembangunan API lebih mudah pada masa hadapan.

Penambahan Ciri Pengumuman

Kami telah menambah model Announce untuk memaparkan pengumuman daripada pihak pengurusan. Selepas ini, sekiranya terdapat pengumuman penting, kami dapat menyampaikannya terus di dalam laman.

Tarikh yang dipaparkan pada Rancapan (siaran) kini menjadi pautan, dan apabila diklik, anda akan dibawa ke halaman individu Rancapan tersebut (permalink). Ini amat berguna apabila anda ingin berkongsi siaran tertentu.

Penutup

Perubahan kali ini memang kurang ketara pada permukaan, namun ia merupakan refactoring penting untuk menjelaskan hutang teknikal dan menjalankan Nuita dengan lebih stabil pada masa hadapan.

Sekiranya anda mendapati sebarang masalah, sila hubungi kami melalui borang pertanyaan. Terima kasih atas sokongan berterusan anda terhadap Nuita.