Performata slaba PHP pe IIS

Salut !

Ma confrunt cu uramtoarea problema:

Pe o masina virtuala cu Windows Server 2016 + IIS 10 aplicatiile scrise in php se misca lent, adica dureaza mult pana cand se incarca pagina aplicatiei respective.
Masina virtuala este la noi in retea. Ce-i drept versiunea de php este cam veche, dar acest lucru este necesar pt a pastra compatibiliateta cu anumite biblioteci. In plus php-ul este instalat cu Microsoft® Web Platform Installer.

Aplicatiile nu sunt consumatoare de resurse.

  • O aplicatie interna pt pontaj
  • o instanta de mediawiki pt wiki-ul intern
  • altele facute in house

Pana acum, cautand pe Google am gasit ceva legat de schimbarea adrese la server-ul de baze de date din localhost in 127.0.0.1 si fastcgi.

Daca ati mai avut semenea probleme si daca mai aveti alte idei, feel free to share :slight_smile:

Multumesc !


Masina virtuala este pe un server care se afla la locul meu de munca
Azi a durat secunde bune pana cand s-a incarcat wiki-ul intern

1 Like

Intr-adevar trecerea pe apache ar rezolva toate problemele, dar este mai complicat acest lucru si nu stiu cat de mult se doreste .

1 Like

Dacă încerci să servești o pagină simplă (e.g. phpinfo();) cât durează?

Eu am avut problema asta pe apache când aveam o versiune veche/incompatibilă de xdebug:


@Caezsar_Matei: îți înțeleg supărarea, dar nu ai dat un răspuns la întrebare. Chiar a și menționat că știe că trecerea pe apache ar rezolva multe probleme, deci ce valoare aduce răspunsul tău?

2 Likes

@Caezsar_Matei ai tinut mortis sa afle lumea ca esti cool pe linux?

@Cosmin_Popescu, incearca cu un debug. vezi ce-ti mananca cel mai mult timp. eu m-am jucat cu iis si php si n-am observat probleme.

1 Like

Legat de acest lucru cu xdebug citisem pe undeva despre el

Ciudat este ca daca servesc o pagina simpla nu dureaza asa mult. Momentan nu am acces la acea masina.

Ca improvizaţie, ai putea sa incerci sa rulezi IIS pentru aplicatiile cu .net si Apache pentru alea in php. Pur si simplu rulezi Apache pe alt port sau pe alt ip (ziceai ca e in intranet, deci n-ar fi o problema sa mai aloci un ip privat, banuiesc).

1 Like

Am facut la mine pe laptop testul cu apache mediawiki si mysql. Se mica bine. Am windows 10

Todo:
:heavy_check_mark: verificare cu debug
:heavy_check_mark: rulare iis pt .net si apache pt php
:heavy_check_mark: reverse proxy
:heavy_check_mark: schmbare localhost in 127.0.0.1
:heavy_check_mark: versiune veche de php(cu >= 7 se misca foarte bine)
Mai zice si ceva de isapi
Interesant este ca majoritatea rezultatelor google sunt destul de vechi

Am pus eu mediawiki pe windows de test (xampp cu apache) pe laptopul meu si s-a miscat bine.

Ai pus pe wamp pe acelasi server pe care era rulata aplicatia cu IIS? sau ai schimbat hostul?

Legat de topic si de php pe iis am gasit urmatoarea prezentare

@Caezsar_Matei nu wamp ci xamp. nu am treaba cu hostul. am instalat media wiki la mine pe latptop

@iamntz, am vazut in thread-ul postat de tine uramtorul script

 error_reporting(E_ALL);
 ini_set('display_errors', 1);

 $time = microtime(true);
 $mem  = memory_get_usage();

 trigger_error('Whatever', E_USER_NOTICE);

 $time = microtime(true) - $time;
 $mem  = memory_get_usage() - $mem;

 $time = number_format($time, 2);

 echo "$time second(s)\n";
 echo "$mem bytes of memory used";

Il voi rula sa vad ce zice
Va multumesc pentru raspunsuri si sugestii. Le vom incerca si voi reveni cu un feedbak :slight_smile:

O sera buna !

@Cosmin_Popescu: mai ai o variantă, reverse proxy. IIS sa fie frontend pentru Apache sau invers.

1 Like

Xamp sau wamp…same shit! varianta lui serghei cu reverse proxy e de luat in considerare…desi nu cred ca va optimiza daca e vb de aplicatie dinamica ce interogheaza baza de date, intrucat backend-ul se mica greu!

Backend-ul va fi apache cu php, deci n-are de ce sa se miste greu. IIS va sta in faţă si doar va fi interfaţa dintre client si apache, overhead-ul e foarte mic comparativ cu orice s-ar executa pe partea de PHP.

1 Like

@Caezsar_Matei, tu esti genul care arunca cu hardware intr-o problema si se lauda pe net cat de optimizat e linuxul.
@Cosmin_Popescu, incearca sa loghezi timpii de executie in diferite puncte ale aplicatiei. vezi unde moare.

2 Likes

Si zici ca nu ai schimbat hostul?

Dude !
Este localhost.

nu wamp ci xamp. nu am treaba cu hostul. am instalat media wiki la mine pe laptop

Pare contraintuitiv, dar ia încearcă să pui și ip-ul :slight_smile: 127.0.0.1.

(voi șterge răspunsurile ce sunt pe lângă)

localhost sau 127.0.0.1este pe orice nod (host, computer, etc) ! Cand ai migrat fisierele aplicatiei din serverul de windows pe laptopul tau ce ai facut! Nu ai schimbat cumva hostul aplicatiei?

Sa stii ca am mai vazut ideea asta.
Asta la fisierele de configurtie