Performans & Optimizasyonlar
WISECP otomasyonunuzu yüksek performans ile herhangi bir sorun yaşamadan kullanabilmeniz için, sunucu taraflı bir takım ayarlamalar yapmanız gerekebilir. Yüksek bir veri hacmine ve işlem trafiğine sahipseniz, kesinlikle aşağıda belirtilen optimizasyonları uygulamanızı öneririz.
PHP Kaynak Kullanımı
Sunucunuzun PHP yapılandırma dosyasında (php.ini) bazı limitlendirme tanımları bulunur. WISECP gibi büyük ölçekli bir otomasyon yazılımı için bu değerlerin yüksek tutulması önerilir.
- memory_limit = 128M (ve üzeri tavsiye edilen. Özel bir sunucu kullanıyorsanız -1 yapabilirsiniz.)
- max_execution_time = 600 (ve üzeri tavsiye edilen)
- max_input_vars = 50000 (alan adı uzantılarını içeri aktarmak ve güncellemek için gereklidir.)
MySQL Kullanım Limitleri
Özellikle yüksek veritabanı hacmine sahipseniz kesinlikle bu değerleri yükseltmeniz faydalıdır. Ayrıca API üzerinden yapılan işlemlerde, API sunucusundan geç yanıt dönmesi durumunda, sorgu MySQL bağlantı limitlerine takılabilir ve MySQL sunucusu işlemi yarıda kesebilir. Bu durum yaşanmaması için MySQL limitlerini aşağıda gösterildiği şekilde tanmlamalısınız.
Sunucunuzun /etc/my.cnf dosyasını açın ve en alt kısmına aşağıdaki değerleri ekleyin. (Eğer root erişiminiz yok ise bu işlemi sunucu firmanızın sağlaması gerekir.)
- connect_timeout = 300
- wait_timeout = 300
- interactive_timeout = 300
- max_connections = 200
- sort_buffer_size = 4M
- read_buffer_size = 4M
- max_allowed_packet = 64M
Bu işlemden sonra MySQL sunucusunu yeniden başlatınız.
MySQL Strict Mode Pasif Edilmesi
MySQL 5.7 ve üzeri sürümleri için "SQL MODE" tanımlamalarında, yazılımların çalışmasını engelleyecek bazı komutlar bulunlanmaktadır. Bunların SQL MODE tanımından kaldırılarak aşağıdaki şekilde güncellenmesi gerekmektedir.
- ) Sunucuza "SSH" veya "SFTP" üzerinden "root" olarak erişim yaparak /etc/my.cnf dosyasını açınız. (Eğer root erişiminiz yok ise bu işlemi sunucu firmanızın sağlaması gerekir.)
- ) Açılan dosyanın en alt kısmına aşağıdaki metni ekleyin ve kaydedin;
sql_mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" - ) Bu işlemden sonra MySQL sunucusunu yeniden başlatınız.