Apa artinya situs web “terjebak” di antara 2 server? Ada beberapa cara untuk melihat hal ini. Misalnya, jika sebuah situs web sedang melakukan migrasi domain, selama proses migrasi, beberapa pengunjung akan diarahkan ke domain baru, sementara yang lain mungkin masih melihat domain lama. Situs web juga akan berperilaku tidak menentu dan seringkali “tidak berfungsi”.
Perilaku seperti ini juga dapat terjadi saat memigrasikan situs web ke host baru atau menempatkannya di belakang CDN dan penyeimbang beban. Hal ini terjadi karena lalu lintas terbagi antara server lama dan baru, dan beberapa orang mendapatkan versi baru sementara yang lain mendapatkan versi lama. Hal ini dikenal sebagai situs web yang terjebak di antara dua server.
Mari kita pahami mengapa hal ini terjadi dan apa yang perlu Anda ketahui tentangnya.
Mengapa Situs Web Akhirnya Terbagi Antar Server
Jadi, kita tahu kapan situs web akhirnya “terjebak” di antara server. Sekarang, mari kita lihat mengapa hal itu terjadi. Berikut adalah beberapa alasan umum mengapa situasi ini terjadi.
1. Propagasi DNS dan Catatan yang Berkonflik
Saat Anda memperbarui pengaturan DNS, perubahannya tidak langsung terasa di seluruh dunia. ISP dan DNS resolver menyimpan hasil selama berjam-jam, atau terkadang hingga satu atau dua hari.
Data yang di-cache tidak akan diperbarui hingga TTL ‘time-to-live’-nya berakhir. Oleh karena itu, banyak resolver tidak akan menampilkan perubahan pada pengaturan DNS Anda hingga cache-nya dihapus.
Penundaan ini terjadi di seluruh dunia dan dikenal sebagai “penundaan propagasi DNS”. Seperti yang mungkin sudah Anda duga dari namanya, propagasi DNS mengacu pada waktu yang dibutuhkan data baru Anda untuk diperbarui di seluruh dunia.
Selama propagasi, situs web Anda akan tampak terjebak di antara dua server. Anda tidak dapat melakukan apa pun selain menunggu, dan situasi ini akan otomatis teratasi dalam 24 hingga 72 jam.
Anda hanya dapat memeriksa propagasi DNS menggunakan alat online whatsmydns.me Ini akan menunjukkan server DNS global mana yang telah menerima data terbaru dan mana yang belum. Dengan demikian, Anda dapat menangani keluhan dan masalah dengan tepat.
2. Penyeimbang Beban Mengarahkan Lalu Lintas Secara Salah
Banyak host menyediakan penyeimbang beban dalam paket mereka. Pada dasarnya, jika situs web Anda ditujukan untuk audiens global, situs tersebut akan dihosting di berbagai server backend untuk meningkatkan pengiriman ke perangkat edge.
Penyeimbang beban adalah perangkat atau perangkat lunak yang bertugas mendistribusikan lalu lintas antar server backend. Penyeimbang beban memastikan tidak ada satu server pun yang kelebihan beban, dan jika server mengalami masalah koneksi, tidak ada lalu lintas yang dialihkan ke server tersebut.
Dengan cara ini, situs web Anda akan dimuat dengan cepat dan selalu tersedia. Konfigurasi ini sensitif dan dapat rusak jika beberapa hal terjadi secara tidak berurutan.
Jika terjadi kesalahan, server bisa jadi tidak sinkron, dan bagi pengguna akhir, tampilan situs web yang mereka terima tampak tidak konsisten.
Salah satu alasan umum adalah ketika afinitas sesi tidak diaktifkan. Ini berarti data tidak disinkronkan dengan benar antar-server backend, sehingga Anda mungkin mengalami login yang tidak konsisten, konten yang tidak cocok, kesalahan 5xx acak, atau halaman yang beralih antara versi lama dan baru.
3. Migrasi Situs Web Tidak Lengkap
Saat melakukan migrasi situs web antar host, beberapa hal harus terjadi.
- File perlu dikirim ke server baru,
- Basis data harus disinkronkan,
- Jalur file harus diperbarui,
- Catatan DNS harus diubah.
Selama migrasi yang tidak tuntas, yang terjadi adalah database tidak tersinkronisasi, atau jalur file tetap tidak berubah, atau pembaruan DNS dilakukan sebelum hal lainnya.
Hal ini menyebabkan situs web Anda tidak tersedia di hosting baru dan terjebak antara server lama dan baru karena pengaturan yang belum lengkap. Selama periode ini, pengguna dapat memuat salah satu lingkungan tergantung pada caching DNS, sehingga menghasilkan hasil yang tidak terduga.
4. Konflik Cache CDN vs. Server Asal
CDN (jaringan pengiriman konten) digunakan untuk meningkatkan pengiriman ke lokasi yang lebih jauh dari server hosting utama. CDN menyimpan situs web dalam cache dan menyajikannya ke semua perangkat edge yang dekat dengannya. Hal ini secara drastis mempercepat waktu pemuatan.
Namun, karena CDN menggunakan situs web yang di-cache, beberapa masalah dapat terjadi. Misalnya, jika server asal membuat perubahan pada situs web, tetapi CDN masih memiliki versi lama yang di-cache, pengguna di dekat CDN akan melihat versi lama, sementara mereka yang terhubung langsung ke server asal akan melihat versi baru.
Jadi, bisa dikatakan situs web tersebut berada di antara CDN dan server asal.
Cara Mengetahui Apakah Situs Web Anda Terbagi Antara Server
Situs web Anda yang terbagi di antara server bukanlah hal yang baik. Hal ini dapat menimbulkan berbagai masalah. Kita akan membahasnya lebih lanjut nanti, tetapi untuk saat ini, mari kita lihat bagaimana Anda dapat mengetahui apakah situs web Anda terbagi di antara server.
Gejalanya mungkin samar pada awalnya, tetapi akan terlihat jelas jika Anda tahu apa yang harus diperhatikan. Berikut beberapa contohnya.
- Pengunjung melaporkan versi berbeda dari halaman yang sama
- Beberapa pengguna melihat kesalahan HTTPS sementara yang lain tidak
- Satu wilayah dimuat secara instan, sementara wilayah lain kehabisan waktu
- Pembaruan panel admin muncul di satu server tetapi tidak di server lain
- Muncul 404 acak atau konten yang tidak cocok
- Situs berfungsi tanpa CDN tetapi rusak dengan CDN
Anda dapat menemukan banyak petunjuk ini hanya dengan memeriksa ke mana domain tersebut diarahkan. Menjalankan Pencarian DNS dari beberapa wilayah (atau menggunakan pemeriksa propagasi) akan menunjukkan apakah domain Anda diarahkan ke IP yang sama secara global.
Jika tidak, situs Anda secara efektif berada “di antara” server.
Risiko Terbagi Antara Dua Server
Nah, sekarang mari kita bahas dampak dari fenomena ini. Dampaknya cukup serius, jadi Anda perlu segera menangani masalah seperti itu.
1. Korupsi Basis Data
Jika pengguna berinteraksi dengan dua basis data yang berbeda selama migrasi, entri mungkin hilang, terduplikasi, atau tertimpa. Jika Anda tidak mengisolasi basis data utama dengan benar, Anda dapat membuat perubahan yang tidak dapat diperbaiki, yang berpotensi merusaknya.
2. Kerusakan SEO
Jika situs web Anda memiliki beberapa versi yang tersedia, mesin pencari dapat merayapinya dan mengindeks inkonsistensi. Hal ini berdampak buruk bagi SEO karena berarti mesin pencari tidak tahu versi mana yang harus diberi peringkat, dan peringkat situs web Anda bisa anjlok.
3. Sesi dan Login Rusak
Ketika sebuah situs web “terjebak” di antara server, pemeriksaan autentikasi dapat gagal karena pengguna berpindah-pindah di antara server backend yang tidak berbagi sesi atau menyimpan data. Pengguna menghadapi perilaku aneh dan keluar di tengah sesi, dan sebagainya. Perilaku seperti ini merusak kepercayaan pengguna dan kredibilitas Anda.
4. Konflik Versi
Ketika situs web terjebak di antara server, pembaruan yang diterapkan ke satu server mungkin tidak berlaku untuk server lainnya. Hal ini dapat membuat Anda terjebak dalam mimpi buruk pemeliharaan yang membuat Anda mungkin mengalami waktu henti yang belum pernah terjadi sebelumnya dan sebagainya.
Cara Memperbaiki Masalah
Memperbaiki masalah server terpisah tidak memerlukan tebak-tebakan. Ada langkah-langkah konkret yang dapat Anda ambil untuk mengatasi masalah ini. Berikut adalah uraian langkah demi langkah tentang apa yang harus Anda lakukan untuk memperbaikinya.
Langkah 1: Jalankan Pencarian DNS Baru
Periksa apakah domain Anda dapat diakses ke beberapa IP. Jika ya, bersihkan A-record lama, hapus CNAME yang tidak digunakan, dan verifikasi rekomendasi penyedia hosting. Anda dapat melakukannya dengan melakukanPencarian rekaman PTRdan melihat berapa banyak nama yang diselesaikan IP Anda.
Langkah 2: Bersihkan Cache DNS dan CDN
Hapus cache di Cloudflare, panel hosting, dan resolver DNS lokal. Ini akan memaksa semua CDN untuk memperbarui cache situs web mereka dan tetap paritas dengan server asal.
Langkah 3: Nonaktifkan CDN Sementara
Muat situs Anda langsung dari IP asal untuk melihat apakah kinerjanya konsisten. Ini akan memperlambat pemuatan situs web, tetapi setidaknya tidak akan “macet”.
Langkah 4: Konfirmasi Sinkronisasi Server
Pastikan kecocokan berikut di seluruh lingkungan Anda:
- Sistem berkas
- Basis Data
- Sertifikat SSL
- Versi PHP/Node
- File konfigurasi
Ini akan mengurangi kemungkinan ketidakcocokan versi dan memastikan situs web Anda tampil sama di mana-mana.
Langkah 5: Finalisasi DNS ke Server Tunggal yang Benar
Setelah semuanya cocok, Anda harus mengganti DNS lagi ke satu penyedia saja. Kemudian, Anda harus menjalankan Pencarian DNS lagi sebagai konfirmasi untuk memastikan keakuratannya. Anda perlu menunggu propagasi selama beberapa jam sambil memantau log, jadi tunggu saja sampai proses selesai.
Kesimpulan
Ya, situs web Anda bisa macet di antara dua server, dan ini lebih umum daripada yang disadari kebanyakan orang. Akar penyebabnya hampir selalu disebabkan oleh penundaan DNS, konflik caching, atau migrasi yang tidak tuntas.
Sekarang Anda tahu cara mengidentifikasi masalah dan cara mengatasinya. Tidak terlalu rumit, Anda hanya perlu mengikuti langkah-langkahnya secara sistematis.

