Bir apache sunucu üzerinde php bir kahin db bağlantısını kapatmak için?

1 Cevap php

Php komut bağlantı vefat biter Genellikle bir bağlantıyı kapatmadan sadece oci_close($connection); ya da daha kötü bir durumda yapılır.

Benim durumumda, ancak ben farklı bir davranış karşısında.

PHP 5.2.8 kullanan benim uygulamaya erişmek ise, Apache 2.2.11 ve 1.2.5 oci8, the connection is kept birkaç dakika boyunca.

Aslında gibi görünüyor: Ben başlatmak eğer netstat -b Ben süreç httpd.exe Bir süre sırasında veritabanının URL ESTABLISHED durumu ile (bir kaç dakika) kaldığını görmek .

Birisi bu davranışı beni aydınlatmak misiniz?

P.S. Ben kalıcı bağlantılarını kullanmayın.

P.P.S. Burada sorulan kod bağlamak için kullanılan ve yakın (bu eski bir uygulama):

Bağlantı: Bir fonksiyon olan bağlantı ile ilgili kod denir edilir $connection = @ocilogon ( "$username", "$password", "$database" );

Kapanış: Geliştirdiğimiz ama genelde o olurdu her sayfaların sorumluluğuna oci_close($connection)

1 Cevap

oci_connect() burada (ocilogon() aynı işlevi çağırır) üzerinde Dokümanlar:

http://www.php.net/manual/en/oci8.connection.php

O bunu işlenen sayfanın sonunda otomatik olarak kapalı olduğunu oci_close() aracılığıyla açıkça bağlantısını kapatmak veya ima eder. Eğer o zaman aşımı için biraz zaman alabilir açıkça kapanış değilse ben hayal ediyorum. O oci_close() aramaları gerekmez bazı sayfaları görmek açık bağlantıları neden olduğunu, mümkün mü?

Yalnızca bir oci_connect() ve oci_close() ile bir bağımsız sayfası oluşturun ve sonra bunu birden çok kez idam ederseniz, bağlantı sayfası idam kaç kez doğrudan yükselecek ve kalmak saymak görüyorsunuz öncesine kadar sonunda geri geliyor?

Ayrıca, ne göstergesi bağlantısının açık kalan olduğunu görmek için arıyoruz?

Eğer yüksek sürümlerinde olsaydı, o zaman Oracle 11g Database Resident Bağlantı havuzu olabilir ama o kullandığınız geçerli sürümlerinde mevcut değildir.