Database Scaled-Out
Untuk menyediakan ketersediaan tinggi untuk database BizTalk Server, konfigurasikan dua komputer yang menjalankan SQL Server di kluster Windows. Komputer ini dapat berjalan dalam konfigurasi aktif/aktif atau aktif/pasif untuk redundansi dan menyimpan data pada drive bersama (seperti array disk RAID 1+0 SCSI) atau jaringan area penyimpanan (SAN).
Jika layanan SQL Server menjadi tidak tersedia karena alasan apa pun, kluster database mentransfer sumber daya dari komputer aktif ke komputer pasif. Selama proses failover ini, instans layanan BizTalk Server mengalami kegagalan koneksi database dan secara otomatis memulai ulang untuk terhubung kembali ke database. Komputer database yang berfungsi (sebelumnya komputer pasif) mulai memproses Penghubungan Database setelah mengasumsikan sumber daya selama failover.
Menjalankan Beberapa Database MessageBox
Untuk meningkatkan skalabilitas database BizTalk Server, Anda dapat mengonfigurasi BizTalk Server untuk menyimpan data di beberapa database MessageBox. Anda membuat database MessageBox pertama saat menjalankan Panduan Konfigurasi. Database MessageBox ini adalah database MessageBox master. Ada satu database MessageBox master dalam penyebaran BizTalk Server Anda. Database MessageBox master berisi informasi langganan master dan merutekan pesan ke database MessageBox yang sesuai. Biasanya, Anda ingin mendedikasikan Kotak Pesan master untuk melakukan perutean saja (pilih Nonaktifkan publikasi pesan baru) dan biarkan database MessageBox lainnya melakukan pemrosesan.
Saat database MessageBox master menerima pesan aktivasi baru—contoh baru proses bisnis atau pesan langganan—database MessageBox master mendistribusikan pesan aktivasi ke database MessageBox berikutnya yang tersedia. Misalnya, jika Anda memiliki satu database MessageBox master dan dua database MessageBox, database MessageBox master merutekan pesan aktivasi pertama ke database MessageBox 1, pesan aktivasi kedua ke database MessageBox 2, pesan aktivasi ketiga ke database MessageBox 1, dan sebagainya dalam pola round-robin. Database MessageBox master menggunakan logika bawaan untuk memuat keseimbangan, dan tidak memerlukan mekanisme penyeimbangan beban tambahan.
Setelah database MessageBox master merutekan pesan aktivasi ke database MessageBox tertentu (misalnya, database MessageBox 1), proses bisnis masuk ke memori dan berjalan. Jika proses bisnis harus menunggu pesan, dan waktu tunggu lebih lama dari beberapa detik, proses bisnis dipertahankan kembali ke database MessageBox 1. Proses bisnis sedang menunggu pesan korelasi. Ketika pesan korelasi tiba di database MessageBox master, pesan melakukan operasi pencarian di database untuk database MessageBox yang berisi status untuk pesan korelasi (dalam contoh ini, MessageBox 1). Database MessageBox master kemudian mengirimkan pesan ke database MessageBox yang berisi proses bisnis. Proses bisnis kemudian dibawa kembali ke memori untuk terus memproses sampai selesai atau sampai harus menunggu pesan korelasi lain.
BizTalk Server menyimpan semua status dalam database MessageBox, dan setiap database MessageBox berisi informasi status untuk proses bisnis yang berbeda. Untuk keandalan, Anda harus mengklusterkan semua database MessageBox, termasuk database master dan MessageBox sekunder.
Untuk mengonfigurasi beberapa database MessageBox, Anda menggunakan konsol Administrasi BizTalk untuk menambahkan komputer yang berjalan SQL Server. Dari perspektif administrasi, Anda hanya perlu menambahkan database MessageBox baru. BizTalk Server secara otomatis menangani distribusi round-robin pesan aktivasi dan mengirim pesan korelasi ke database MessageBox yang benar.
Jika Anda mengonfigurasi beberapa database MessageBox di lingkungan Anda, Anda harus membuat minimal 3 database MessageBox untuk grup BizTalk Server Anda dan Anda harus menonaktifkan publikasi pesan di Master MessageBox. Rekomendasi ini dibuat karena menambahkan database MessageBox tambahan menimbulkan overhead oleh database Master MessageBox untuk merutekan pesan antara database MessageBox. Jika Anda hanya mengonfigurasi 2 database MessageBox, sebagian besar manfaat yang diperoleh oleh database MessageBox tambahan diimbangi oleh overhead yang digunakan oleh Master MessageBox untuk perutean pesan.
Menyediakan Ketersediaan Tinggi untuk Beberapa Database MessageBox
Saat menambahkan database MessageBox ke penyebaran BizTalk Server Anda meningkatkan skalabilitas, itu tidak memberikan ketersediaan tinggi karena setiap database MessageBox unik dan independen dan berpotensi menjadi satu titik kegagalan untuk lingkungan BizTalk Server Anda. Untuk menambahkan redundansi melibatkan konfigurasi kluster server untuk setiap database MessageBox. BizTalk Server mendistribusikan data di beberapa database MessageBox, sehingga database tidak berbagi data atau memberikan redundansi tanpa pengklusteran server.
Menyediakan Ketersediaan Tinggi untuk Database Pelacakan BizTalk
Bergantung pada persyaratan penyebaran tertentu, Anda mungkin ingin meningkatkan performa untuk pelacakan dengan mengisolasi database Pelacakan BizTalk ke komputer SQL Server terpisah dan dengan membuat BizTalk Host terpisah yang didedikasikan untuk pelacakan host. Jika penyebaran Anda memiliki throughput tinggi dan melibatkan pelacakan banyak data untuk pesan-pesan ini, overhead pelacakan berpotensi mengonsumsi banyak sumber daya di komputer yang berjalan SQL Server. Jika situasi ini terjadi dan tingkat pesan masuk yang tinggi berlanjut, BizTalk Server mencapai titik di mana ia tidak dapat memproses pesan baru karena sumber daya yang diperlukan untuk melacak pesan lebih besar dari sumber daya yang diperlukan untuk menjalankan komponen BizTalk Server lainnya (seperti menerima pesan dan menyimpannya ke database MessageBox).
Untuk meningkatkan performa dan keamanan, kami sarankan Anda mendedikasikan host untuk pelacakan yang tidak berisi item lain (seperti menerima lokasi, orkestrasi, atau alur) dan menonaktifkan pelacakan dari host penerima, pemrosesan, dan pengiriman. Untuk memberikan ketersediaan tinggi untuk host pelacakan, buat lebih dari satu instans host host pelacakan.
Untuk setiap database MessageBox, BizTalk Server hanya menggunakan satu instans host pelacakan untuk memindahkan pesan dari database MessageBox ke database Pelacakan BizTalk (BizTalkDTADb). Jika komputer tambahan menjalankan instans host pelacakan, BizTalk Server secara otomatis menskalakan penanganan setiap database MessageBox ke instans terpisah dari host pelacakan. Jika jumlah database MessageBox lebih besar dari jumlah instans host pelacakan, satu atau beberapa instans host pelacakan akan melayani lebih dari satu database MessageBox.
Untuk menyediakan ketersediaan tinggi untuk database Pelacakan BizTalk, gunakan Pengklusteran Windows untuk mengonfigurasi dua komputer database yang berjalan SQL Server dalam konfigurasi aktif/pasif.
Menyediakan Ketersediaan Tinggi untuk Database BAM
Pemantauan Aktivitas Bisnis (BAM) memberikan visibilitas ke dalam proses bisnis yang independen dari implementasi TI atau di seluruh implementasi IT yang heterogen. Database SQL Server BAM (database Skema Bintang BAM, database Impor Utama BAM, dan database Arsip BAM) dan database Analisis BAM menyimpan data aktivitas bisnis yang berbeda dari data pemantauan operasional. Untuk memastikan infrastruktur BAM Anda sangat tersedia, lakukan hal berikut:
Kluster database Impor Utama BAM dan database Analisis BAM. Database Impor Utama BAM adalah pusat sistem Pemantauan Aktivitas Bisnis. Oleh karena itu, penting agar Anda membuat database ini sangat tersedia dengan menggunakan Pengklusteran Windows dan Anda mengikuti dua rekomendasi berikutnya untuk mencegah pengisian database ini. Database Analisis BAM adalah database Analysis Services yang menyimpan data yang digunakan analis bisnis untuk membangun agregasi aktivitas dan kubus OLAP, dan oleh karena itu setiap waktu henti database ini memengaruhi produktivitas mereka. Meskipun Anda tidak perlu mengkluster database Arsip BAM, kami sarankan Anda memantau log peristiwa untuk kesalahan ketika paket Data Transformation Services (DTS) berjalan untuk memastikan data telah berhasil ditransfer, dan untuk memantau ukuran database sehingga Anda dapat menggantinya sebelum terisi.
Tentukan jendela online. Untuk memungkinkan performa yang lebih besar dan menghindari waktu henti, BAM mempartisi data dalam database Impor Utama BAM ke dalam tabel berdasarkan tanda waktu saat aktivitas selesai. BAM mencapai ini dengan secara teratur menukar tabel yang telah selesai dengan tabel kosong lain dengan format yang identik. Setelah BAM melakukan ini, aktivitas tambahan yang diselesaikan masuk ke partisi baru (tabel), sementara BAM menyimpan partisi lama untuk waktu yang ditentukan di jendela online. Anda harus menentukan jendela online untuk memastikan jumlah partisi dalam database Impor Utama BAM tidak tumbuh terlalu besar. Untuk informasi selengkapnya tentang penjadwalan jendela online, lihat "Pengarsipan Data Database Impor Utama" di Bantuan BizTalk Server.
Jadwalkan paket DTS untuk berjalan secara berkala. Menentukan jendela online memastikan database Impor Utama BAM Anda tidak terisi dengan partisi aktivitas lama. Anda juga harus menjadwalkan paket DTS untuk berjalan secara berkala guna membuat partisi baru untuk data aktivitas dan memindahkan data dari partisi lama dalam database Impor Utama BAM ke database Arsip BAM. Untuk informasi selengkapnya tentang penjadwalan paket DTS, lihat "Menjadwalkan Paket DTS" di Bantuan BizTalk Server.
Pilih sekumpulan kecil item data (titik pemeriksaan) dengan hati-hati, dan hindari menyertakan item data yang tidak perlu saat menentukan aktivitas.
Pahami trade-off antara agregasi terjadwal dan real-time saat Anda merancang agregasi Anda. Agregasi real-time secara otomatis dikelola oleh pemicu SQL Server dan tidak memiliki latensi. Ini sangat ideal untuk beberapa skenario latensi rendah misi-kritis, tetapi menimbulkan biaya performa setiap kali peristiwa ditulis ke database Impor Utama BAM. Agregasi terjadwal mengandalkan paket DTS cubing terjadwal untuk memperbarui data agregasinya. Latensinya sama dengan atau lebih besar dari interval jadwal DTS, tetapi secara keseluruhan memiliki dampak performa yang lebih kecil pada database Impor Utama BAM.
Jika Anda memilih agregasi terjadwal, pastikan Anda menjadwalkan DTS cubing untuk berjalan lebih sering daripada DTS pengarsipan. Ini karena DTS pengarsipan tidak akan memindahkan data aktivitas yang telah diproses untuk agregasi terjadwal ke database Arsip BAM.
Aktifkan Layanan Azure Event Bus BAM di beberapa komputer untuk mendapatkan fungsionalitas failover.
Menyediakan Ketersediaan Tinggi untuk Database Server BizTalk Lainnya
Untuk menyediakan ketersediaan tinggi untuk database BizTalk Server lainnya, konfigurasikan dua komputer yang menjalankan SQL Server dalam kluster Windows. Komputer ini dapat berjalan dalam konfigurasi aktif/aktif atau aktif/pasif untuk redundansi dan menyimpan data pada drive bersama (seperti array disk RAID 1+0 SCSI) atau jaringan area penyimpanan (SAN).
Lihat juga
Menyediakan Ketersediaan Tinggi untuk Host BizTalk
Menyediakan Ketersediaan Tinggi untuk Database BizTalk Server
Contoh Skenario Ketersediaan Tinggi BizTalk Server