Yaklaşan kısa vadeli iş yoğunluğu zirvelerine veya veritabanı şema değişikliklerine (özellikle dizin değişikliklerine) hazırlanmak için trafik oynatma ve yük testi özelliğini kullanabilirsiniz. Bu özellik, veritabanı örneğinizin ölçeklendirilip ölçeklendirilmemesi gerektiğini belirlemenize ve gerçek dünya iş senaryolarındaki performansını doğrulamanıza yardımcı olarak dağıtım sonrası oluşabilecek hata risklerini azaltır. Ayrıca, bir veritabanı arızalandığında ve nedeni bulunamadığında, klonlanmış bir veritabanı kullanarak hatayı yeniden oluşturabilir ve kök nedenini tespit edebilirsiniz.
Ön koşullar
-
Desteklenen kaynak veritabanları:
RDS MySQL
-
PolarDB for MySQL
NotPolarDB for MySQL Enterprise Edition single-node örnekleri desteklenmemektedir.
-
Desteklenen hedef veritabanı örnekleri:
RDS MySQL.
PolarDB for MySQL.
PolarDB-X 2,0.
Kaynak ve hedef veritabanı örnekleri DAS'a bağlı olmalıdır. Daha fazla bilgi için bkz. Alibaba Cloud veritabanı örneğini DAS'a bağlama.
Kaynak veritabanı örneği için DAS Enterprise Edition ve SQL Explorer özelliği etkinleştirilmiş olmalıdır. Günlük dizinlerinin saklama süresi 7 gün olarak ayarlanmalıdır.
Hedef veritabanı örneği için DAS Enterprise Edition ve SQL Explorer özelliği etkinleştirilmiş olmalıdır. Günlük dizinlerinin saklama süresi 7 gün olarak ayarlanmalıdır.
Senaryolar
Mevcut veritabanı örneğinizin yaklaşan kısa vadeli trafik zirvelerini karşılamak için ölçeklendirilip ölçeklendirilmemesi gerektiğini belirleyin.
Bir veritabanı şema evriminden, özellikle de bir dizin değişikliğinden sonra, etkisini gerçek dünya hizmet senaryosunda doğrulayabilirsiniz. Bu işlem, değişiklik canlıya alındıktan sonra oluşabilecek hata tehdidini azaltır.
Bir veritabanı arızalandığında ve nedeni bulunamadığında, akıllı yük testi özelliğini kullanarak klon bir veritabanında arıza senaryosunu yeniden oluşturabilir ve nedeni tespit edebilirsiniz.
Kullanım notları
-
Ağ gecikmesinin yük testi üzerindeki etkisini azaltmak için yük istemcisi ve hedef örnek aynı bölgede olmalıdır.
NotYük istemcisini ve hedef örneği aynı VPC içinde konumlandırmanızı öneririz.
Yük testini gerçekleştirmeden önce, trafiğin gönderilebilmesini sağlamak amacıyla yük istemcisi ile hedef örnek arasındaki bağlantıyı doğrulayın.
Faturalama
DAS Enterprise Edition ücretleri hakkında bilgi için bkz. Faturalama.
-
Bir yük testi görevi oluşturduktan sonra aşağıdaki öğeler faturalandırılır:
Veri geçişi için Restore by Backup seçeneğini belirlerseniz sistem, seçtiğiniz hedef veritabanı altyapısına göre otomatik olarak kullandıkça öde bir veritabanı örneği oluşturur. Sistem ayrıca yeni örnek için en son DAS Enterprise Edition sürümünü, 30 günlük SQL günlükleri depolama alanını ve 7 günlük günlük dizini depolama alanını etkinleştirir.
Advanced Settings bölümünde DAS Automatic Purchase and Deployment seçeneğini belirlerseniz sistem, kaynak veritabanının QPS değerine ve oynatma hızı çarpanına göre uygun bir örnek türünde kullandıkça öde bir ECS örneği satın alır. Daha fazla bilgi için bkz. ECS faturalama genel bakışı.
NotSistem kullandıkça öde örnekler satın aldığından, gereksiz ücretlerden kaçınmak için yük testi görevi sona erdiğinde bu örnekleri manuel olarak silmeniz gerekir.
Yordam
DAS konsoluna giriş yapın.
-
Trafik Oynatma ve Yük Testi sayfasına gidin.
Trafik Oynatma ve Yük Testi sayfasına aşağıdaki yollardan biriyle gidebilirsiniz:
Sol gezinme bölmesinde Tools > Traffic Replay & Stress Testing seçeneklerini tıklayın.
-
Örnek ayrıntıları sayfasından sayfaya gidin.
Soldaki gezinme bölmesinde yolunu izleyin.
Hedef örneği bulun ve örnek ayrıntıları sayfasını açmak için örnek ID'sini tıklayın.
Sol gezinme bölmesinde Request Analysis > SQL Explorer and Audit seçeneklerini tıklayın. Ardından görüntülenen sayfada Traffic Playback and Stress Test seçeneğini tıklayın.
Görev listesi sayfasında sağ üst köşede bulunan Create Task seçeneğini tıklayın.
-
Create Task iletişim kutusunda aşağıdaki parametreleri ayarlayın.
Task Type parametresini Cloud Instance Playback olarak ayarlayın ve bir Task Name girin.
-
Source Information bölümünde aşağıdaki parametreleri ayarlayın ve Next seçeneğini tıklayın.
Yapılandırma
Açıklama
Instance Source
Alibaba Cloud Database seçeneğini belirleyin.
Database Engine
Veritabanı örneğinizin altyapısıdır. Seçenekler şunlardır:
-
MySQL: Bir RDS MySQL örneği.
-
PolarDB for MySQL: Bir PolarDB for MySQL örneği.
-
PolarDB-X: Bir PolarDB-X 2,0 örneği.
Source Instance
Source Instance ID'sini seçin.
Advanced Settings
Batch Stress Testing
Görev, hazırlık aşamasından sonra duraklar. Ardından görev listesinden birden çok görev seçebilir ve hepsi için yük testini aynı anda başlatabilirsiniz.
SQL Type
Test edilecek bir veya daha fazla SQL türü seçin.
Database Account, Password
Kaynak veritabanının hesabı ve parolasıdır.
NotVeritabanı listesini almak için Obtain Database seçeneğini tıklayın. Tüm veritabanlarında yük testi gerçekleştirmek istiyorsanız herhangi bir seçim yapmanız gerekmez. Belirli veritabanlarını test etmek istiyorsanız en fazla beş veritabanı seçebilirsiniz.
-
-
Generation Method of Schema and Data of Destination Database bölümünde aşağıdaki parametreleri ayarlayın.
Yapılandırma
Açıklama
Database Engine
Hedef veritabanı örneğinin altyapısıdır. Aşağıdaki türler desteklenir:
-
MySQL: Bir RDS MySQL örneği.
-
PolarDB for MySQL: Bir PolarDB for MySQL örneği.
-
PolarDB-X: Bir PolarDB-X 2,0 örneği.
NotPolarDB-X 2,0 yalnızca Çin (Hangzhou), Çin (Şanghay), Çin (Pekin), Çin (Shenzhen) ve Singapur bölgelerinde desteklenir.
Benchmark Data Migration
Kaynak örneğin referans verilerinin hedef örneğe geçirilip geçirilmediğine göre bir geçiş yöntemi seçin:
-
Restore by Backup: Hedef örnek, belirli bir zaman noktasına veya yedekleme kümesine dayalı olarak kaynak örnekten klonlanır.
NotDAS, kaynak örnekle aynı teknik özelliklere sahip kullandıkça öde bir örneği otomatik olarak satın alır. Örnek için varsayılan olarak en son DAS Enterprise Edition ve SQL Explorer özelliği etkinleştirilir, günlük dizinlerinin saklama süresi 7 gün olarak ayarlanır ve yedekleme verileri örneğe geri yüklenir.
-
Data Migration Completed: Trafik oynatma zaman aralığındaki kaynak örneğin tablo şeması ve verileri hedef örneğe eşitlenmiştir.
NotYük testi trafiğinin beklendiği gibi çalışmasını sağlamak için hedef örneğin şeması ve verileri kaynak örnekle tutarlı olmalıdır.
-
Enter DTS Task ID: Kaynak örnekten hedef örneğe veri eşitlemek için DTS konsolunda bir veri geçiş görevi oluşturulmuştur.
NotDTS kullanılarak veri geçişi hakkında daha fazla bilgi için bkz. Veri Geçişi.
-
Create DTS Migration Task: DTS konsoluna gitmeden doğrudan bir veri geçiş görevi oluşturun.
Not-
Kaynak örnek bir Alibaba Cloud veritabanı ise dört yöntemden herhangi birini seçebilirsiniz. Sistem, yük testi görevi oluşturulduktan sonra kaynak örnekle aynı teknik özelliklere sahip kullandıkça öde bir örneği otomatik olarak satın alıp verileri bu örneğe geri yüklediğinden Restore by Backup seçeneğini belirlemenizi öneririz.
-
Kaynak örnek kendi tarafınızca yönetilen bir veritabanı ise yalnızca Data Migration Completed, Enter DTS Task ID veya Create DTS Migration Task seçeneklerini belirleyebilirsiniz.
Restore Mode
Bir geri yükleme modu seçin. İhtiyaca göre aşağıdaki modlardan birini seçebilirsiniz:
-
By Time Point
-
By Backup Set
Not-
Bu parametre, Benchmark Data Migration parametresi Restore by Backup olarak ayarlandığında gereklidir.
-
Restore Mode parametresini By Backup Set olarak ayarlarsanız DAS Service-linked Role için izin vermeniz gerekir. Görüntülenen iletişim kutusunda OK seçeneğini tıklayın.
Select Restore Time/Backup Set
Seçilen Restore Mode değerine göre bir geri yükleme zamanı veya yedekleme kümesi seçin.
NotBu parametre, Benchmark Data Migration parametresi Restore by Backup olarak ayarlandığında gereklidir.
Migration Task ID
Verileri kaynak örnekten hedef örneğe eşitleyen DTS veri geçiş görevinin ID'sidir.
NotBu parametre, Benchmark Data Migration parametresi Enter DTS Task ID olarak ayarlandığında gereklidir.
DTS Migration Task Specifications
DTS geçiş görevi teknik özelliklerini seçin.
NotBu parametre, Benchmark Data Migration parametresi Create DTS Migration Task olarak ayarlandığında gereklidir.
Destination Instance
Hedef örneği seçin. Sistem varsayılan olarak hedef örneğin birincil uç noktasına erişir.
NotBu parametre, Benchmark Data Migration parametresi Data Migration Completed, Enter DTS Task ID veya Create DTS Migration Task olarak ayarlandığında gereklidir.
Privileged Account of Destination Instance
Hedef örnek için yetkili hesabın kullanıcı adı ve parolasıdır.
NotBu parametre, Benchmark Data Migration parametresi Data Migration Completed, Enter DTS Task ID veya Create DTS Migration Task olarak ayarlandığında gereklidir.
Privileged Account of Source Instance
Kaynak örnek için yetkili hesabın kullanıcı adı ve parolasıdır.
NotBu parametre, Benchmark Data Migration parametresi Restore by Backup veya Create DTS Migration Task olarak ayarlandığında gereklidir.
-
-
Stress Testing Basic Settings bölümünde aşağıdaki parametreleri ayarlayın.
Yapılandırma
Açıklama
Select Playback Traffic
Trafik oynatma için zaman aralığını seçin.
NotBu zaman aralığında kaynak örnek için SQL Explorer and Audit özelliği etkinleştirilmiş olmalıdır.
Playback Speed
Kaynak örnek trafiğinin hedef örnekte yeniden oynatılma oranıdır. Örneğin, 1 değeri orijinal hızı ifade eder. Oynatma hızı 1 ile 10 arasında pozitif bir tamsayı olmalıdır.
NotBelirlediğiniz oynatma hızı, hedef örnek türünün desteklediği maksimum hızı aşarsa yük testi görevi desteklenen maksimum hızda çalışır.
-
Advanced Settings bölümünde bir ECS that Deploys Stress Testing Program seçin.
DAS Automatic Purchase and Deployment seçeneğini belirleyebilirsiniz. Sistem ardından kaynak örneğin QPS değerine ve oynatma hızı çarpanına göre uygun bir örnek türünde kullandıkça öde bir ECS örneği satın alır.
Mevcut bir ECS örneğini seçmek, dağıtım komutunu oluşturmak ve bu örnekte çalıştırmak için Add seçeneğini de tıklayabilirsiniz.
Next seçeneğini tıklayın.
Doğrulama başarılı olduktan sonra yük testi görevini oluşturmak için OK seçeneğini tıklayın.
Sonuçları görüntüleyin
Yük testi görevi oluşturulduktan sonra görev ayrıntılarını görüntülemek üzere görev listesi sayfasına dönün.
-
Actions sütununda aşağıdaki işlemleri gerçekleştirebilirsiniz:
Yük testi görevinin yürütme durumunu ve raporunu görüntülemek üzere Basic Task Information sayfasına gitmek için Details seçeneğini tıklayın.
Yük testi görevini erken bir zamanda sonlandırmak için Terminate seçeneğini tıklayın.
Oluşturduğunuz yük testi görevini silmek için Delete seçeneğini tıklayın.
-
bölümünde, görev yürütme sırasında parametreleri dinamik olarak ayarlayabilirsiniz. Parametreler aşağıdaki tabloda açıklanmıştır.
Parametre
Açıklama
Threads
Oynatma iş parçacığı sayısıdır. Bu değer, oynatma ana bilgisayarının CPU'suna göre otomatik olarak hesaplanır: max(3, 2*runtime.NumCPU()-5).
BatchSize
Ayrıştırma için toplu iş boyutudur. SQL deyimleri ayrıştırma sırasında toplu işler halinde işlenir. Bellek yetersizliği hatası oluşursa bu parametreyi ayarlayabilirsiniz. Varsayılan değer: 100000.
Debug
Hata ayıklama günlüklerinin çıktılanıp çıktılanmayacağını belirtir.
ConnectPoolSize
Bağlantı havuzu boyutudur.
ConnectTimeout
Bağlantı zaman aşımı süresidir. Birim: saniye. Varsayılan değer: 3.
SocketTimeout
Çalıştırma zaman aşımı süresidir. Birim: saniye. Varsayılan değer: 10.
SkipDuplicateErrorSqlEtkinleştirildiğinde sistem, tekrarlanan yürütme hatalarına veya zaman aşımlarına neden olan SQL deyimi şablonlarını atlar.
SqlCountLimit
İş parçacığı dağıtım boyutudur. Daha küçük bir değer iş parçacığı birleştirmeyi azaltır ancak yüksek okuma baskısına neden olarak zaman aşımlarına ve oynatma ilerlemesinin etkilenmesine yol açabilir.
Sonraki adımlar
Yük testi görevi tamamlandıktan sonra Intelligent Stress Testing Details sayfasına gidin. Ek teste gerek yoksa gereksiz ücretlerden kaçınmak için ilgili ECS ve veritabanı örneklerini serbest bırakın.
Kaynak örnek için SQL Explorer and Audit özelliğini manuel olarak etkinleştirdiyseniz yük testi tamamlandıktan sonra bu özelliği devre dışı bırakın. Daha fazla bilgi için bkz. SQL Explorer ve Denetimi Devre Dışı Bırakma.
Yaklaşan kısa vadeli iş yoğunluğu zirvesi için veritabanı örneğinizi ölçeklendirmeniz gerekiyorsa örnek türüne göre otomatik performans ölçeklendirmeyi veya zamanlanmış Auto Scaling'i etkinleştirebilirsiniz.