PHPGangsta - Der praktische PHP Blog

PHP Blog von PHPGangsta


Archive for the ‘PCNTL’ tag

Richtige Threads in PHP einfach erstellen mit pthreads

with 34 comments

Wir alle haben gelernt dass PHP kein richtiges Multi-Threading kann, und auch Kindprozesse zu forken ist nicht ganz trivial. Extensions wie PCNTL funktionieren nicht unter Windows und sind schwer zu bedienen. Man kann sich eventuell mit exec() behelfen und damit weitere Prozesse starten, verliert dann jedoch die Möglichkeit, die Prozesse zu synchronisieren oder einfach Nachrichten zwischen ihnen auszutauschen.

Und wer möchte eigentlich Threads in PHP und wofür?

Größere Projekte gehen heutzutage häufig den Weg, für Asynchronität und Parallelität Tools wie Gearman zu nutzen. Mit einem Gearman-Job-Server und einer beliebigen Menge an verbundenen Workern, die auch noch in beliebigen Programmiersprachen geschrieben sein können, kann man eine Menge Arbeit parallelisieren, aber ist eine komplette Gearman-Installation wirklich immer nötig? Gerade für kleinere Projekte ist das sicherlich zuviel, und auf Shared Hosting Platformen kann man keine Worker starten.

Weiterlesen »

Written by Michael Kliewe

März 13th, 2013 at 12:26 pm

Posted in PHP

Tagged with , , , ,

Linkpool Nummer 7

without comments

Blogartikel über Mutation Testing, sehr interessant um seine Tests zu testen:

http://blog.astrumfutura.com/index.php?/plugin/tag/mutateme

Webseitengeschwindigkeit ist wichtig:

http://www.stevesouders.com/blog/2010/05/07/wpo-web-performance-optimization/

Zend Framework 1.10.4:

http://devzone.zend.com/article/12078-Zend-Framework-1.10.4-Released

Einfacher forken unter Linux mit PCNTL:

http://kore-nordmann.de/blog/0098_native_job_queue.html

Git post-receive Hooks mit Gearman umgesetzt:

http://weierophinney.net/matthew/archives/240-Writing-Gearman-Workers-in-PHP.html

PHP Microbenchmarking

http://code.ning.com/2010/05/php-microbenchmarking/

Der „Month of PHP Security“ hat begonnen:

http://php-security.org/

Written by Michael Kliewe

Mai 8th, 2010 at 1:31 pm