MySQL'de thread cache, bağlantılar için kullanılan iş parçacığı (thread) nesnelerini yeniden kullanmak üzere saklamak amacıyla kullanılan bir önbellek sistemidir. İş parçacığı önbelleği, özellikle yüksek bağlantı oranları olan senaryolarda, iş parçacığı oluşturma ve yok etme maliyetlerini azaltmaya yardımcı olur.
İşte thread cache'in nasıl çalıştığına dair bazı anahtar noktalar:
İş Parçacığı Yeniden Kullanımı: Bir istemci bağlantısı kapanırken, iş parçacığı önbelleğe eklenir. Bir sonraki bağlantı talebi geldiğinde, bu iş parçacığı yeniden kullanılır, böylece yeni bir iş parçacığı oluşturmanın maliyeti ortadan kaldırılır.
Performans Artışı: İş parçacığı oluşturmanın ve yok etmenin maliyeti, iş parçacığının yeniden kullanılmasıyla atlanır, böylece daha hızlı bağlantı zamanları ve düşük CPU kullanımı sağlanır.
Yapılandırılabilir Önbellek Boyutu: thread_cache_size parametresi, önbellekte saklanacak iş parçacığı sayısını kontrol eder. Bu değer, sistem yüküne ve ihtiyaca göre özelleştirilebilir.
Dinamik Yapılandırma: MySQL 5.6.8 ve sonrası sürümlerde, thread_cache_size parametresi dinamik olarak değiştirilebilir, yani sunucuyu yeniden başlatmaya gerek kalmadan bu değeri güncelleyebilirsiniz.
İstatistikler ve İzleme: SHOW STATUS LIKE 'Threads_%'; sorgusu ile iş parçacığı önbelleği hakkında istatistiklere erişebilirsiniz.
İş parçacığı önbelleğinin kullanımı, yoğun bağlantı oluşturma ve kapanma operasyonları olan senaryolarda faydalı olabilir. thread_cache_size değerinin çok büyük olması gereksiz bellek kullanımına yol açabilir, bu yüzden bu değerin dikkatli bir şekilde ayarlanması gerekir. Uygun bir değerin belirlenmesi, uygulamanın bağlantı modeline, sistem kaynaklarına ve performans ihtiyacına bağlı olarak değişebilir.
Ayarlama:
MySQL'de iş parçacığı (thread) önbelleği, thread_cache_size parametresi ile ayarlanır. Bu değeri, sisteminizdeki ihtiyaca göre özelleştirebilirsiniz. İşte bu ayarın nasıl yapılandırılacağına dair adımlar:
MySQL Yapılandırma Dosyasını Bulun: Bu dosya genellikle Linux/Unix sistemlerde /etc/mysql/my.cnf veya /etc/my.cnf konumunda, Windows sistemlerinde ise MySQL kurulum dizininde my.ini olarak bulunur.
Yapılandırma Dosyasını Düzenleyin: Yapılandırma dosyasını bir metin düzenleyici ile açın. Aşağıdaki satırı [mysqld] bölümüne ekleyin veya düzenleyin:
[mysqld] thread_cache_size = 10 # İstenilen önbellek boyutu
Bu değeri, mevcut bağlantı yükünüze ve sistem kaynaklarınıza uygun olarak ayarlayın. Önbellek boyutu, kullanılan iş parçacığı sayısına bağlı olarak değişebilir, bu yüzden bu değeri dikkatli bir şekilde seçin.
Değişiklikleri Kaydedin: Dosyayı kaydedin ve kapatın.
MySQL Sunucusunu Yeniden Başlatın
Eğer MySQL 5.6.8 veya daha yeni bir sürüm kullanıyorsanız, bu değeri çalışma zamanında da değiştirebilirsiniz:
SET GLOBAL thread_cache_size = 10; # Yeni değer