Kısa Firebird veritabanı performans kontrol listesi
Windows
-
Enerji tasarrufu planını yüksek performans olarak ayarlayın (Windows Server 2016+ üzerinde +%20)?
-
Sürücüler için Yazma Önbelleğe Alma Politikasını Yazma Önbelleğini Etkinleştir olarak ayarlayın
-
RAID durumunda, modern sürücünün kurulu olduğunu ve RAID’in doğru yapılandırıldığını kontrol edin.
Linux
-
Max Open Files 49999 olarak mı ayarlı? Kontrol edin cat /proc/$(pgrep firebird)/limits, varsayılan 4096’dır, gerekirse artırın: Firebird servis dosyasında LimitNOFILE=49999 olarak ayarlayın
-
VMA sayısını kontrol edin cat /proc/sys/vm/max_map_count, varsayılan 64K’dır, 250K olarak ayarlanmalıdır: /etc/sysctl.conf dosyasına vm.max_map_count=250000 satırını ekleyin
Firebird Yapılandırması (yalnızca Firebird 3 için öneriler)
-
Varsayılan DefaultDBCacheBuffers kullanmadığınızdan emin olun, çok düşükler (256 ve 8K)! SuperClassic için 1024, SuperServer için 100K ayarlayın. Firebird 3’te Classic kullanmayın, yavaştır.
-
DefaultDBCacheBuffers’ın veritabanı başlığında geçersiz kılınmadığından emin olun: gstat -h database -> Page Buffers ile kontrol edin, 0 olmalıdır. gfix -buffers 0 ile 0 olarak ayarlayın.
-
İşletim sisteminin dosya önbelleğini kullanmak için FileSystemCacheThreshold =100M ayarlayın
-
SuperServer için, DefaultDBCacheBuffers için RAM’in %30’undan azını ayırın. Çok sayıda veritabanınız varsa, hepsi için belleği hesaplayın ve databases.conf kullanarak ayrı ayrı yapılandırın. Toplam bağlantı ve veritabanı sayısını şu komutla kontrol edin:
fbsvcmgr.exe localhost:service_mgr user sysdba password masterkey info_svr_db_info
-
SuperServer ve SuperClassic için TempCacheLimit‘i RAM’in %25’i olarak ayarlayın, Classic için - 64M.
-
LockMemSize=30M ayarlayın, bu iyi bir başlangıç değeridir, ardından fblockprint -d databasename komutuyla kilit tablosunun büyümesini izleyin ve gerekirse LockMemSize’i artırın
-
LockHashSlots=20011 ayarlayın, bu iyi bir başlangıç değeridir, lockprint’te Hash Lengths’i izleyin
Veritabanı
-
50Gb’den büyük veritabanları için maksimum sayfa boyutunu kullanın: 16Kb (varsayılan 8Kb), okuma IO’sunu ve indeks derinliğini optimize etmek için. Geri yükleme sırasında “page” anahtarıyla ayarlayın: gbak**-c -page 16384**
-
Salt-okunur olmayan veritabanları için no_reserve bayrağını kullanmayın. **gfix -**use reserve ile kaldırın
-
gstat -h’den işlem işaretleyicileri (OIT, OST, OAT, Next) arasındaki farkı izleyin.
-
Büyük (OST-OIT), veritabanının muhtemelen çok sayıda çöp sürüm içerdiği ve sweep gerektirdiği anlamına gelir. Gece için gfix -sweep ile açık sweep planlayın
-
Büyük (Next-OAT), çöp toplamayı engelleyen uzun süreli aktif yazılabilir işlem anlamına gelir. Hangi uygulamanın işlemi açık tuttuğunu görmek için MON$ tablolarını kontrol edin ve düzeltin.
Firebird performansını tahmin etmek için 5 dakikalık test
Açık kaynak INSERT-UPDATE_DELETE scriptini kullanın: www.ib-aid.com/dbtestŞu anda, test edilen en hızlı sunucu saniyede 18140 eklenen kayıt göstermiştir, sizin sonucunuz ne olacak?
Firebird performansını bu basit ayarların ötesinde nasıl iyileştirirsiniz?
IBSurgeon’un Firebird optimizasyon hizmetini deneyin www.ib-aid.com/perf: Firebird’ünüzü nasıl daha hızlı çalıştıracağımızı biliyoruz.