BerandaComputers and TechnologyMemperbaiki surat kabar online dengan solusi teknologi modern dan layanan otomatis

Memperbaiki surat kabar online dengan solusi teknologi modern dan layanan otomatis

The Village adalah surat kabar kota online yang dimiliki oleh merek Redefine. Ini melaporkan peristiwa penting hari itu, budaya, dan hiburan di Moskow dan St. Petersburg. Di bawah waralaba, kantor editorial juga beroperasi di kota-kota Rusia lainnya, serta di Belarus, Kazakhstan, dan Ukraina.

Para editor berusaha keras untuk membuat The Village menarik dan berguna untuk audiens seluas mungkin. Jadi, wawancara dengan seorang pejabat mungkin akan diposting bersamaan dengan gambaran umum restoran baru dan laporan foto dari peragaan busana. Oleh karena itu, departemen komersial berpotensi menarik berbagai klien periklanan.

Pada 2019, The Village sudah memiliki permintaan yang tinggi dalam hal peluang periklanan, tetapi secara teknis menjadi lebih sulit dan lebih mahal untuk mengimplementasikannya.

Tugas: memperbarui situs web sepenuhnya, dengan mempertimbangkan teknologi dan persyaratan baru

Berbagai faktor menunjukkan bahwa sudah waktunya untuk mendesain ulang situs web. Orang yang berbeda mengerjakannya pada waktu yang berbeda. Karena itu, hutang teknis terakumulasi dan bagian-bagiannya muncul dalam kode yang dibuat sejak lama. Terlebih lagi, versi seluler dari situs ini diadaptasi untuk layar kecil – situs terlihat buruk pada layar besar. Departemen penjualan menginginkan peluang periklanan baru dan manajemen yang lebih baik.

Village sedang mencari tim pengembangan yang gesit untuk mengembangkan backend Ruby baru dan menggunakan pendekatan teknologi untuk mengurangi utang teknis. Ada banyak pekerjaan yang harus dilakukan, dan tidak ada waktu untuk mempelajari spesifikasi teknis secara mendetail. Beberapa persyaratan juga dapat berubah selama proses tersebut, yang sering terjadi dalam proyek media. Oleh karena itu, mereka mencari perusahaan yang siap untuk manajemen yang fleksibel.

Tim Evrone sangat cocok. Kami sudah memiliki pengalaman yang tepat dalam menyediakan layanan pengurangan utang teknis, dan kami telah mengerjakan proyek media lainnya. Desa tahu tentang keahlian kami, dan beberapa teknisi Redefine bahkan telah membuat presentasi di acara kami. Jadi kami ambil alih back-end, sedangkan front-end ditangani tim sendiri.

Platform baru yang diperlukan untuk memanfaatkan teknologi saat ini, dengan mempertimbangkan solusi yang berhasil dari versi sebelumnya, dan juga harus memenuhi tugas bisnis internal. Kami perlu merancangnya sedemikian rupa sehingga dapat diperbarui dengan cepat, tanpa masalah, dan memberinya kemampuan untuk menghubungkan berbagai fungsi di beberapa waralaba.

Porting aplikasi monolitik ke layanan mikro

Situs web ini dulunya adalah aplikasi monolitik klasik. Semua kode dijalankan di server, dan pengguna hanya melihat hasil pekerjaannya. Untuk membuat perubahan kecil sekalipun, pengembang harus menyentuh kode. Jadi, kami memisahkan layanan, menghasilkan backend, admin, API, dan frontend yang terpisah.

Backend mengembalikan data melalui API, dan rendering halaman diimplementasikan sebagai SPA di React. Browser virtual sisi server membuat halaman dan mengirimkannya ke pengguna. Karena itu, situs web itu sendiri memuat lebih cepat, dan transisi antara materi dan bagian lebih mudah. Alih-alih memperbarui seluruh halaman, hanya data yang telah berubah yang ditransfer.

Ini juga memberikan lebih banyak peluang untuk interaksi dengan situs. Seluruh situs menjadi satu halaman, sehingga Anda dapat, misalnya, membuat animasi transisi antar halaman atau menggunakan spanduk iklan interaktif.

Mengonfigurasi cache bertingkat untuk meningkatkan kinerja situs web

Artikel yang sama dapat muncul di halaman berbeda: di bagian umum, di bagian “tersimpan” pengguna, dan di halaman utama. Dengan menggunakan pendekatan klasik, setiap perubahan pada artikel ini akan menyetel ulang cache beberapa halaman sekaligus. Hal ini menyebabkan peningkatan beban, dan Anda juga harus memverifikasi bahwa perubahan yang benar diterapkan pada setiap halaman.

Bersama dengan spesialis Redefine, kami menyadari pendekatan caching agresif bertingkat, di mana hanya fragmen yang diubah yang diperbarui, secara otomatis dan di mana saja. Halaman di-cache secara terpisah di server dan API. Dalam hal ini, masa pakai cache adalah beberapa menit.

Misalnya, pratinjau artikel ditampilkan di halaman utama. Jika dewan editorial mengubah sesuatu pada judul atau mengunggah gambar lain, bagian yang diinginkan akan langsung digambar ulang.

Jika cache harus disetel ulang sepenuhnya, untuk seluruh situs, maka laman akan membutuhkan waktu lebih lama untuk dimuat, dan server akan membutuhkan perangkat keras yang lebih kuat. Pendekatan kami menghemat ruang memori dan mengurangi masalah dengan memperbarui konten, yang pada gilirannya, mengurangi beban keseluruhan di situs.

Otomatisasi migrasi konten

Saat pindah ke backend baru, kami perlu mentransfer semua materi dari situs lama. Untuk menghemat infrastruktur dan migrasi, dan tidak membuang energi untuk migrasi 10 terabyte gambar, kami telah mengotomatiskan pengubahan ukuran gambar di server. Dan, daripada memuat penyimpanan dengan gambar duplikat dengan ukuran berbeda, kami menggunakan pemrosesan gambar saat itu juga.

Begini cara kerjanya: jika permintaan gambar datang, layanan ImgProxy mengirim gambar asli ke server khusus, di mana gambar itu dipotong dan diubah ukurannya dengan benar. Untuk menghindari melakukan ini berkali-kali, gambar di-cache. Oleh karena itu, gambar yang sesuai untuk perangkat dan layar apa pun diperoleh hampir secara instan. Jika kami membutuhkan ukuran khusus, kami hanya menulis parameter yang diperlukan di server dan mereka ditambahkan ke materi itu sendiri.

Solusinya

Kami mengembangkan backend Ruby on Rails yang kuat dan kuat yang memperhitungkan beban publikasi saat ini dan di masa mendatang. Ini dapat bekerja dengan fronted apa pun, yang berarti bahwa mereka sekarang dapat mengubah tampilan tanpa mendesain ulang seluruh situs.

Tim Redefine mengembangkan antarmuka dan frontend di React + Node.js. Next.js bertanggung jawab atas rendering halaman sisi server. Untuk membuat dan mengedit artikel, WYSIWYG Setka Editor digunakan.

Hasil

The Village telah diluncurkan kembali, dan semua waralaba Rusia sudah bekerja dengan versi baru. Baris berikutnya adalah waralaba di negara lain. Mengotomatiskan migrasi konten telah menghemat waktu dan tenaga. Menyiapkan cache berjenjang membantu mencapai kecepatan unduh yang luar biasa. Hasilnya, kami mendapatkan inti universal.

Untuk melakukan ini, berdasarkan kapabilitas built-in dari versi Ruby terbaru, sistem fleksibel untuk memisahkan modul dan memperluas logika dibuat. Setiap fitur baru ditambahkan segera ke inti, dan jika diperlukan di proyek lain atau situs waralaba, maka fitur itu hanya disertakan di bagian belakang, dan tetap hanya menggambar bagian dari antarmuka. Misalnya, selama pengembangan, bookmark khusus dihubungkan dengan cara ini, dan setelah itu, RSS.

Pekerjaan kami akan membantu editor The Village fokus pada kualitas konten, yang diterjemahkan ke dalam retensi pengguna. Pengguliran tanpa akhir dan sistem rekomendasi akan membantu menampilkan materi yang berharga di hadapan audiens yang tepat, meningkatkan kedalaman tampilan dan waktu di situs, serta membuat pengalaman pengguna bebas hambatan. Editor sekarang dapat memanfaatkan antarmuka yang lebih sederhana dan lebih ramah pengguna, tim penjualan dapat menghasilkan lebih banyak peluang iklan, dan pembaca dapat menikmati situs yang lebih cepat dan lebih menarik.

Read More

RELATED ARTICLES

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Most Popular

Recent Comments