Programlama Bilgisi
İşletim Sistemi
webman hem linux hem de windows sistemlerinde çalışabilir. Ancak workerman'ın windows'ta çoklu işlemi desteklemediği ve daemon işlemini desteklemediği için, windows sisteminin yalnızca geliştirme ortamında kullanılması önerilir. Canlı ortamda linux sistemi kullanılmalıdır.
Başlatma Yöntemi
linux sistemlerinde, php start.php start
komutu (debug hata ayıklama modunda) veya php start.php start -d
komutu (daemon modunda) ile başlatılır.
windows sistemlerinde ise windows.bat
dosyasını çalıştırabilir veya php windows.php
komutunu kullanarak başlatabilirsiniz. Durdurmak için ctrl+c tuşları kullanılır. Windows sistemleri stop, reload, status, reload connections gibi komutları desteklemez.
Sürekli Bellek Kullanımı
webman sürekli bellek kullanımına sahip bir framework'tür. Genellikle, bir PHP dosyası belleğe yüklendikten sonra tekrar diskten okunmaz (şablon dosyaları hariç). Bu nedenle, canlı ortamda işlem kodu veya yapılandırma değişiklikleri yapıldıktan sonra, etkin olabilmesi için php start.php reload
komutunu çalıştırmak gereklidir. Eğer işlemle ilgili yapılandırmalar değiştirildiyse veya yeni bir composer paketi yüklendiyse, php start.php restart
ile yeniden başlatılması gerekir.
Geliştirme sürecini kolaylaştırmak için, webman otomatik olarak dosya güncellemelerini izlemek için özel bir izleme süreci içerir. İşlem dosyaları güncellendiğinde otomatik olarak reload işlemi gerçekleştirilir. Bu özellik yalnızca workerman debug modunda çalıştığında (başlatılırken
-d
eklenmez) kullanılabilir. Windows kullanıcıları için isewindows.bat
dosyasını çalıştırmaları veyaphp windows.php
komutunu çalıştırmaları gerekir.
Çıktı İfadeleri Hakkında
Geleneksel php-fpm projelerinde echo
, var_dump
gibi fonksiyonlar verileri doğrudan sayfada gösterirken, webman'de bu çıktılar genellikle terminalde görüntülenir ve sayfada görüntülenmez (şablon dosyalarındaki çıktılar hariç).
exit
veya die
İfadelerini Kullanmayın
Die veya exit komutları işlemi sonlandıracağı ve yeniden başlatacağı için, mevcut isteğin doğru şekilde yanıtlanamamasına neden olur.
pcntl_fork
Fonksiyonunu Kullanmayın
pcntl_fork
fonksiyonu bir işlem oluşturur, ancak webman içinde kullanılmamalıdır.