Saya mengadakan pertemuan dengan vendor perangkat lunak hari ini tentang infrastruktur yang direkomendasikan untuk menyebarkan aplikasi tertentu. Aplikasi ini membutuhkan dua server: server aplikasi untuk halaman web server (.NET, Windows), dan database (SQL Server). Vendor mengklaim bahwa kedua server ini harus memiliki "bit parity". Apa yang mereka maksudkan dengan ini adalah bahwa jika server aplikasi 32 bit SQL Server harus 32 bit, atau jika aplikasi 64 bit, SQL Server 64 bit. Kalau tidak, kinerja akan terkena dampak negatif.
Ini tampak menggelikan bagi saya. Server independen dan hanya berkomunikasi melalui jaringan. Protokol jaringan tidak ada hubungannya dengan "bit-ness" dari prosesor di kedua server.
Apakah saya salah? Adakah alasan ketidakcocokan benar-benar dapat berdampak negatif terhadap kinerja?
CATATAN: Saya tahu bahwa aplikasi tertentu mungkin berjalan lebih cepat atau lebih lambat dalam 32 bit vs 64 bit. Tetapi vendor mengatakan bahwa ketidakcocokan antara server web dan server DB menyebabkan masalah. Ini pernyataan yang saya tanyakan.
Jawaban:
Saya kira itu mungkin bahwa mereka mengetahui beberapa interaksi spesifik antara dua produk yang menyebabkan masalah ketika ada ketidakcocokan (tapi saya benar-benar meragukannya - saya akan menempatkan sekitar 10: 1 peluang bahwa vendor penuh akan hal itu).
Anda mungkin ingin mencari di serverfault untuk pertanyaan tentang efek ketidakcocokan seperti itu, tetapi saya ragu Anda akan menemukan banyak, karena saya ragu ada masalah nyata untuk ditemukan ...
sumber
Minta bukti. Dia membuat pernyataan yang dipertanyakan, dia (salah-) menjual barang-barang Anda, apakah ia harus mencadangkannya atau menariknya kembali. Selamatkan diri Anda kerja keras.
sumber
Perbedaan antara pasangan server 32bit dan 64bit kemungkinan besar tidak akan membuat perbedaan. Apa yang akan membuat perbedaan adalah endianness dari berbagai proses, yang penjual mungkin bingung sebagai "bit parity".
sumber
Singkatnya saya akan mengatakan tidak ada sedikit paritas tidak masalah. SQL Server tidak memiliki protokol 64-bit dan 32-bit yang terpisah.
Namun, saya akan merekomendasikan bahwa Anda beralih ke server 64 bit terlepas. SQL Server datang dalam 64 bit saja dan saya percaya bahwa Windows Server sedang menuju ke arah itu juga.
sumber
Nah, jika kata vendor itu benar-benar merujuk pada kinerja, mungkin ada kebenarannya. Tentu saja tidak ada ketidakcocokan antara sistem x86 dan amd64, karena protokol jaringan harus menyembunyikannya.
Namun representasi internal dari nilai-nilai harus ditransformasikan selama transfer. Jadi beberapa bentuk
pack/unpack
akan menjadi bagian darinya. Namun saya akan mengasumsikan bahwa protol jaringan tidak mendefinisikan dua variasi, dan dioptimalkan untuk jaringan 64 bit atau nilai 32 bit. Jadi mungkin ada konversi yang terlibat, dan bahkan mungkin bisa diukur. Tapi itu mati kemungkinan tidak signifikan.sumber
Secara teknis koneksi ke server SQL biasanya merupakan saluran biner (Sekarang saya tidak tahu sistem ini secara khusus bisa berupa saluran berbasis teks) sehingga akan ada beberapa konversi di tujuan akhir ketika hasil kueri diambil.
Ini mengarah pada dua pertanyaan:
Apakah konversi ini dilakukan hanya pada 32x64
Bisa jadi saluran biner adalah sistem agnostik (sehingga dapat mendukung 32x64 dan 32x32 dan 64x64) dan konversi akan tetap terjadi pada sistem 32x32.
Berapa biaya konversi.
Saya tidak bisa membayangkan ini akan mempengaruhi Anda. Biaya konversi biner ke biner kecil dan tetap.
Ada satu pertanyaan lain yang perlu Anda tanyakan:
Apakah biaya memiliki bit paritas lebih tinggi? Jika tidak maka mengapa harus berurusan dengan konsultan. Jika ada perbedaan biaya yang signifikan maka apa penurunan nyata dalam kinerja dan yang paling penting penurunan kinerja menurunkan kinerja server Web di bawah ambang batas penerimaan Anda.
yaitu Jika server Anda perlu server 200 halaman per detik. Sistem 32x32 dapat mengirimkan 202 32x64 dapat mengirimkan 200 dan 64x64 dapat mengirimkan 210. Maka dalam situasi ini tidak masalah sistem apa yang Anda miliki (mereka semua memenuhi standar), tetapi apakah biaya tambahannya sepadan dengan tambahan 10 halaman per detik .
Pada akhirnya sekalipun ada biaya tambahan kecil (yang saya ragukan). Apakah biaya ini signifikan atau dapat diukur terhadap biaya lain yang dikeluarkan oleh WebServer. yaitu Melihat contoh ekstrem: jika biaya membangun sebuah halaman adalah 100ms dimana 15ms adalah WebServer. Jika versi non-bit parity 33% lebih mahal (20 ms) maka ambang ini hanya menaikkan biaya pembuatan halaman hingga 105 ms, peningkatan hanya 5%.
sumber