2009-03-13 17 views
6

Komut satırı PHP istemcisinden (Windows üzerinde PHP 5.2) PHP komut dosyalarını çalıştırırken garip bir 5 ila 7 saniyelik duraklama alıyorum.Garip PHP komut satırı arayüzü ile 5 saniye duraklama (mysql/mysqli uzantısı ile ilgili)

Bu duraklatma sırasında, PHP betiği komut istemine dönmeden önce bir süre 'don' olarak görünür. Önemli bir CPU zamanı kullanmıyor, biraz gecikme bekliyor gibi.

PHP.ini ile deneme yaptıktan sonra, bunu mysql veya mysqli uzantısının etkinleştirildiğine indirdim. Bu uzantıların her ikisi de devre dışı bırakılmışsa, rahatsız edici bir duraklama yoktur ve PHP betiği sadece milisaniyeler içinde sona erer.

kullanıyorum komut şöyledir:

% 1 PHP script
"C:\Program Files\PHP\php.exe" -f %1 

.

duraklama hala yürütülmektedir PHP esasen boş olsa bile oluşur:

<?php 

?> 

bu duraklama neden olduğunu biliyor musunuz ve hala izin verirken bunu kaldırabilir nasıl mysql veya PHP mysqli desteği komut satırı?

+0

Sorun, Windows'taki PHP 5.3'te sabit görünüyor. – thomasrutter

+0

Bu iş parçacığı için çok teşekkürler, sorunumu çözdü, bu haftalarca beni sinirlendiriyordu! Bu sorunu, IIS ve PHP ile bir Win2008 sunucusunda karşılaştık. Şanslı olan, bir şekilde mysql'e ihtiyacımız olmaması, bu yüzden bu uzantıyı yeni kapattık. Saygılarımızla, Jens –

+0

Kodunuzda herhangi bir MySQL veritabanı işlevi kullanıyor musunuz? Kalıcı bağlantılar kullanıyor musunuz? Bunları kapatırsan, gider mi? –

cevap

6

bug in mysql. En son libmysql.dll (5.1.31 veya üstü. bazı eski sürümleri de çalışır - ikinci bağlantıya bakın) alarak çözebilirsiniz. libmysql.dll aslında kullanılan ve yolunuzda başka bir libmysql.dlls olduğundan emin olun. Ayrıntılar için ilgili php issue'a bakın.

+0

Teşekkür ederim. PHP dizininde libmysql.dll yükseltme, neredeyse tamamen gecikme kaldırıldı.İlginç bir şekilde, mysql desteğini devre dışı bırakmaya kıyasla hala biraz gecikme (birkaç yüz milisaniye) var. Ancak sıkıntı faktörü çözüldü. – thomasrutter

3

Ayrıca Windows 7 64bit altındaki komut satırından PHP'yi rahatsız edici 2 saniyelik bir gecikme yaşadım.
php.exe (v5.3.5) ZendServer Community Edition

sevk Bu sürüm harika gecikmedi:
php.exe (v5.3.6) ile sevk

Bu sürüm bir gecikme vardı EasyPHP

(eski iplik çarpmak, ama umarım bu diğerleri bu sorunu Googling yardımcı için üzgünüm.)

4

Benim için (Mac OS X üzerinde Zend Server CE), imap exetension suçluydu. Devre dışı bırakılması sorunu çözdü.

Anoyone bir PHP uzantısı bileme komut dosyası yazmak ister mi? :)

+1

Teşekkürler! Bu Mac OS X Mavericks üzerinde MAMP kullanarak sonda sabit, sadece uzantısı bulunan php-cli yapılandırma dosyasında "extension = imap.so" diyerek uzantıyı devre dışı bırakılmış: /Applications/MAMP/bin/php/php5.5.10 /conf/php.ini – jmserra

+0

Aynı burada! Bunun iki yıl sonra nasıl bir sorun olduğu komik, ancak imap.so'nun devre dışı bırakılması da benim için kısaltma gecikmesini çözdü. (MAMP PRO 3.0/OSX Yosemite) –

İlgili konular