Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: PHP pthreads spadek wydajności w przeglądarce względem konsoli WINDOWS
Forum PHP.pl > Forum > PHP
Bargor
Witam.

Zainstalowałem bibliotekę pthreads według instrukcji znalezionej tutaj
http://php.net/manual/en/pthreads.installation.php
Zainstalowała się poprawnie.

Ale

Uruchomiłem kilka razy skrypt Benchmark.php pobrany z stąd
https://github.com/krakjoe/pthreads/blob/ma...s/Benchmark.php


  1. class T extends Thread {
  2. public function run() {}
  3. }
  4.  
  5. $max = @$argv[1] ? $argv[1] : 100;
  6. $sample = @$argv[2] ? $argv[2] : 5;
  7.  
  8. printf("Start(%d) ...", $max);
  9. $it = 0;
  10. do {
  11. $s = microtime(true);
  12. /* begin test */
  13. $ts = [];
  14. while (count($ts)<$max) {
  15. $t = new T();
  16. $t->start();
  17. $ts[]=$t;
  18. }
  19. $ts = [];
  20. /* end test */
  21.  
  22. $ti [] = $max/(microtime(true)-$s);
  23. printf(".");
  24. } while ($it++ < $sample);
  25.  
  26. printf(" %.3f tps\n", array_sum($ti) / count($ti));



#Windows console:

Działa prawidłowo i tak samo:
#First run 1102 Thread per s


#Second run 974 Thread per s


RAM used ~600MB

Kiedy skrypt zakończy działanie proces php.exe zostaje zakończony a pamięć zwolniona

#Przeglądarka(FF i Chrome ten sam błąd)

#First run 1175 Thread per s and 161 RAM


#Second run 565 Thread per s and 534 RAM

#Third run 235 Thread per s and 977 RAM


Po wykonaniu skryptu proces httpd.exe ZOSTAJE A PAMIĘĆ NIE ZOSTAJE UWOLNIONA.

W najgorszej sytuacji wydajność spadła do 20 t/ps a httpd.exe zjadł prawie 6GB RAM


Konfiguracja:

> Windows 7 64 bit
>
> WampServer64
> PHP Version :5.5.12
> (php info)
> Compiler MSVC11 (Visual C++ 2012)
> Architecture x64
> Zend Extension Build API220121212,TS,VC11
> PHP Extension Build API20121212,TS,VC11
>Thread Safety enabled
>
> Apache Version :2.4.9
>
> Procesor: i7-4790k

Bardzo mi zależy na uruchomieniu skryptów używających pthreads przez przeglądarkę. Czy ktoś wie dlaczego tak się dzieje?
Bardzo proszę o pomoc.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.