PDA

Bekijk Volledige Versie : Hoe vaak wordt Php.ini ingelezen



Johnnie
21/07/09, 17:17
Hi all,

Ik heb dedicate webserver, windows 2003, IIS6, Php5 werkt als een zon..

Maar vraag me af hoe vaak Php.ini ingelezen wordt is dit 1 malig bij op/herstarten (zoals je verwacht onder windows) of wordt dit toch vaker ingelezen als dat zo zou zijn kan er nog wat aan de performence gesleuteld worden. :sneaky2:

Iemand idee..

Thx

Spyder01
21/07/09, 17:29
De php.ini wordt bij het starten/herstarten van IIS ingelezen. Als je er iets in veranderd zul je dus IIS moeten herstarten om de wijzigingen actief te krijgen.

Johnnie
21/07/09, 17:40
Thx Spyder01,

Klopt ik wist dat IIS herstart moest worden na een aanpassing, maar twijfelde of de ini toch nog daarna, af hankelijk van processen ingelezen werd.

Oke twijfels weg.

manbearpig
21/07/09, 21:08
Thx Spyder01,

Klopt ik wist dat IIS herstart moest worden na een aanpassing, maar twijfelde of de ini toch nog daarna, af hankelijk van processen ingelezen werd.

Oke twijfels weg.

toevoeging: zou een mooie boel worden als je bij iedere php request een i/o stream naar php.ini zou moeten openen ;)

maargoed, 't antwoord is gegeven.

ju5t
21/07/09, 21:52
toevoeging: zou een mooie boel worden als je bij iedere php request een i/o stream naar php.ini zou moeten openen ;)

maargoed, 't antwoord is gegeven.

Hoe je dit bij IIS in zou stellen weet ik niet, maar als je in Apache de environment variabele PHP_INI_SCAN_DIR hebt ingesteld wordt er wel degelijk een I/O stream opgestart. Sterker nog, er wordt een directory gescanned op .ini files en deze worden op alfabetische volgorde ingeladen. Of hier caching van toepassing is weet ik niet.

Dit staat bij ons default ingesteld en wij hebben nergens performance problemen.

Randy
21/07/09, 23:05
toevoeging: zou een mooie boel worden als je bij iedere php request een i/o stream naar php.ini zou moeten openen ;)

ALs je PHP in (Fast)CGI mode draait is dit vrij normaal...

manbearpig
22/07/09, 09:37
ik was er niet echt bij geloof ik...

/me kruipt terug in z'n hoekje

Johnnie
22/07/09, 19:22
Bedankt voor de reacties zover,

De meningen lijken nu toch verdeeld te worden :eek:

Ik wil niet zeggen dat ik performence problemen heb maar dit kwam gewoon bij me op: de php.ini file is ruim gedocumenteerd wanneer je dit weg zou laten kom je op een reductie van ruim 65% waardoor je dus een performence vehoging krijgt, Mits ie elke keer gelezen wordt.

Aanvullende info: ik draai Php onder Isapi en in IIS kan ik geen setting vinden omdat aan/uit te zetten c.q. te checken.

thx

Dennis
22/07/09, 19:43
Er zijn in Linux verschillende modi om php in te draaien. Of je php moet herstarten of apache moet reloaden na een php.ini-aanpassing is daarvan afhankelijk.

In Windows zou ik het zo niet weten. Ik hoor hier dat het een App Pool Recycle vereist, maar géén idee wat dat precies inhoudt.

Je hoeft in ieder geval geen performance verhoging te verwachten door het verwijderen van commentaar. Deze zal nihil zijn, anders zou dit wel in elke 'apache tuning'-howto vermeld staan.

Randy
22/07/09, 19:49
Ik wil niet zeggen dat ik performence problemen heb maar dit kwam gewoon bij me op: de php.ini file is ruim gedocumenteerd wanneer je dit weg zou laten kom je op een reductie van ruim 65% waardoor je dus een performence vehoging krijgt, Mits ie elke keer gelezen wordt.

Nee, want je diskbloks zijn toch groter dan de php.ini en worden dus toch in zijn geheel ingelezen.

Digiover
24/07/09, 12:01
Aanvullende info: ik draai Php onder Isapi en in IIS kan ik geen setting vinden omdat aan/uit te zetten c.q. te checken.

Isapi = FastCGI ISAPI?

Volg je processen even met Process Explorer en, indien nodig(!), hernoem je php.ini bestand naar php-cgi-fcgi.ini. Maar afaik wordt het php.ini bestand tijdens Application Start ingelezen, omdat je FastCGI ISAPI draait.

Johnnie
12/08/09, 02:02
Volg je processen even met Process Explorer.

Goeie tip, leuk proggie alleen ben ik niet slim genoeg(of heb niet genoeg geduld) om php.ini juist te volgen.

Vervolgens heb ik het op de botte manier geprobeerd en php.ini verwijderd..... en ja naar een paar uur(misschien cache) lopen de forums vast.

Al met al toch wat van opgestoken in een Windows omgeving wordt php.ini weldegelijk vaker ingelezen ipv. wat vaak verondersteld word alleen bij opstarten.

Dus ga ik toch eens met php.ini stoeien wellicht ook met de extesies (installatie windows zet def. alles aan) maar daar zal ik dan wel een nieuw topic voor starten... :)

thx

Digiover
12/08/09, 08:42
Als je php-cgi.exe draait als CGI-proces, dan wordt het php.ini bestand bij iedere aanroep ingelezen. Met de PHP ISAPI heb ik (wat ik lees "gelukkig") geen ervaring, enkel verder met IIS' FastCGI extensie. Dat blijft inderdaad in het geheugen gecached.

De PHP installer heb ik ook nog nooit gebruikt, wij plaatsen altijd de zip-versie en zetten een goed werkende php.ini terug. Tenzij er veel wijzigingen in de PHP core zijn, dan ploegen we weer door het php.ini bestand.

Johnnie
12/08/09, 16:43
wij plaatsen altijd de zip-versie en zetten een goed werkende php.ini terug. Tenzij er veel wijzigingen in de PHP core zijn, dan ploegen we weer door het php.ini bestand.

Klopt, bij mij is het gebeurt tijdens upgraden van Php 4 naar 5 en tegelijk over naar Isapi, raakte het spoor bijster en natuurlijk tijd probleem vandaar toen de installer gebruikt... die zet alle extensies zonder " ; "

extension=php_bz2.dll
extension=php_curl.dll
extension=php_dba.dll
extension=php_dbase.dll
extension=php_exif.dll
extension=php_fdf.dll
extension=php_gd2.dll
extension=php_gettext.dll
extension=php_gmp.dll
extension=php_ifx.dll
extension=php_imap.dll
extension=php_interbase.dll
extension=php_ldap.dll
extension=php_mbstring.dll
extension=php_mcrypt.dll
extension=php_mhash.dll
extension=php_mime_magic.dll
extension=php_ming.dll
extension=php_msql.dll
extension=php_mssql.dll
extension=php_mysql.dll
extension=php_mysqli.dll
extension=php_oci8.dll
extension=php_openssl.dll
extension=php_pdo.dll
extension=php_pdo_firebird.dll
extension=php_pdo_mssql.dll
extension=php_pdo_mysql.dll
extension=php_pdo_oci.dll
extension=php_pdo_oci8.dll
extension=php_pdo_odbc.dll
extension=php_pdo_pgsql.dll
extension=php_pdo_sqlite.dll
extension=php_pgsql.dll
extension=php_pspell.dll
extension=php_shmop.dll
extension=php_snmp.dll
extension=php_soap.dll
extension=php_sockets.dll
extension=php_sqlite.dll
extension=php_sybase_ct.dll
extension=php_tidy.dll
extension=php_xmlrpc.dll
extension=php_xsl.dll
extension=php_zip.dll

terwijl ze in Php4 allemaal met " ; " stonden

; extension=php_bz2.dll (even 1 als voorbeeld)

dit vat ik niet :sweatdrop:

kan de complete php.ini als file wel neer zetten, als zin en tijd samen vallen kun je er misschien eens naar kijken ? :cool:

thx

Triloxigen
12/08/09, 16:59
Zet enkel aan wat je gebruikt, scheelt resources.