Самый правильный выход — писать демон, общаться с ним из пхп по tcp например через protobuffers.
Такой подходит уведет вас от проблемы с горизонтальным масштабированием, когда локальной машине не будет хватать ресурсов, да и можно будет раунд-робином раздавать демонам задания, которых может быть неограниченное количество.
Такая схема работы у очень многих систем — sphinxа например.
Так же еще есть fastcgi, можете вообще свой сишный демон без пхп заставить работать — nginx вам в помощь.