Tüm Ürünler
Search
Belge Merkezi

ApsaraDB RDS:Use transaction splitting

Son Güncelleme:Oct 02, 2026

Otomatik onaylama (autocommit) devre dışı bırakıldığında (örneğin, SET autocommit=0 komutuyla), veritabanı proxy'si okuma işlemleri dahil tüm sorguları birincil örnek üzerinden yönlendirir ve yükü bu örnekte yoğunlaştırır. İşlem bölme özelliği, uygulamada kod veya yapılandırma değişikliği gerektirmeden, bir işlemdeki ilk yazma işleminden önce gerçekleşen okuma isteklerini otomatik olarak salt okunur örneklere yönlendirerek yük dağılımı sağlar.

Ön koşullar

Başlamadan önce aşağıdaki ön koşulu yerine getirdiğinizden emin olun:

Çalışma mantığı

Varsayılan olarak, veritabanı proxy'si doğruluğu korumak amacıyla bir işlem içindeki tüm istekleri birincil örneğe gönderir. Otomatik onaylama devre dışı bırakıldığında her sorgu örtük bir işlem içinde çalıştırılır; bu durum tüm yükün birincil örnek üzerinde toplanmasına neden olur.

image.png

İşlem bölme özelliği bu davranışı değiştirir: Proxy, yalnızca bir yazma işlemi gerçekleştiğinde birincil örnek üzerinde bir işlem başlatır. İlk yazma işleminden önceki tüm okuma istekleri, bir yük dengeleyici aracılığıyla salt okunur örneklere yönlendirilir. Varsayılan yalıtım düzeyi READ COMMITTED kullanılıyor ve işlemlerin otomatik onaylama modu devre dışı bırakılıyorsa sistem yalnızca yazma işlemleri için bir işlem başlatır.

Not

BEGIN TRANSACTION veya START TRANSACTION ile başlatılan açık işlemlerin desteklenmesi, örneğinizin oluşturulma tarihine bağlıdır:

  • 31 Temmuz 2024 tarihinde veya sonrasında oluşturulan örnekler: Hem açık hem de örtük işlemler bölünebilir.

  • 31 Temmuz 2024 tarihinden önce oluşturulan örnekler: Yalnızca örtük işlemler bölünebilir.

Yönlendirme kuralları

Salt okunur örneklere yönlendirilenler:

  • Bir işlemdeki ilk yazma işleminden önce gerçekleşen SELECT deyimleri

Birincil örneğe yönlendirilenler:

  • İşlemdeki ilk yazma isteği (işlem birincil örnekte bu noktada başlar)

  • Açık bir yazma işlemindeki sonraki tüm istekler (SELECT, UPDATE, INSERT, DELETE, COMMIT)

Aşağıdaki tabloda, otomatik onaylamanın devre dışı olduğu ve örtük olarak başlatılan tipik bir işlem için yönlendirme sırası gösterilmektedir:

SQL deyimi Yönlendirildiği hedef Açıklamalar
SELECT Salt okunur RDS örneği İlk yazma öncesi okuma isteği
SELECT Salt okunur RDS örneği İlk yazma öncesi okuma isteği
UPDATE, INSERT veya DELETE Birincil RDS örneği İlk yazma — işlem burada başlar
SELECT Birincil RDS örneği İlk yazma sonrası okuma isteği
UPDATE, INSERT veya DELETE Birincil RDS örneği Yazma isteği
SELECT Birincil RDS örneği İlk yazma sonrası okuma isteği
COMMIT Birincil RDS örneği İşlem onaylama

İşlem bölme özelliğini etkinleştirme veya devre dışı bırakma

Önemli

İşlem bölme özelliği genel tutarlılığı garanti etmez. Bu özelliği etkinleştirmeden önce iş yükünüzün bu ödünleşimi tolere edip edemeyeceğini doğrulayın.

  1. Örnekler sayfasına gidin. Üst gezinti çubuğunda RDS örneğinizin bulunduğu bölgeyi seçin ve ardından örnek ID değerine tıklayın.

  2. Sol gezinme bölmesinde Database Proxy seçeneğine tıklayın.

  3. Connection Information bölümünde değiştirmek istediğiniz proxy uç noktasını bulun ve Actions sütunundaki Modify Configuration seçeneğine tıklayın.

  4. İletişim kutusunda, Transaction Splitting yanındaki Enable veya Disable seçeneğine tıklayın.

Not

Yeni ayar yalnızca yeni bağlantılar için geçerlidir.

API referansı

İşlem Açıklama
DescribeDBProxy Veritabanı proxy'si ayrıntılarını sorgular
DescribeDBProxyEndpoint Veritabanı proxy'si uç nokta bilgilerini sorgular
ModifyDBProxyEndpoint Veritabanı proxy'si uç nokta ayarlarını değiştirir