Запустил скрипт на обработку 28 гигабайт данных (в разжатом виде около 100 гигабайт). Имею следующую картину - загрузка HDD - 45%, загрузка CPU эквивалентна 55% одного ядра. Хотелось бы запустить один процесс на вытаскивание данных с диска в кеш виндоуса, а второй на их обработку, ну и второй процесс можно еще распараллелить, но надо бы чтоб эти процессы синхронизовались, чтобы первый процесс не убегал сильно вперед от второго. Запустил сейчас просто два процесса - один тащит данные в кэш виндоуса, второй вытаскивает данные из кэша и обрабатывает. Обработка пошла в 2 раза быстрее. Однако первый процесс скоро убежит вперед от второго и тогда кэш будет очищаться раньше, чем к нему обратится второй процесс.
Тоесть поднимать на пхп сервер, и к нему коннектить чайлдов.. интересно..)) Наверное лучше средствами пхп сервер поднять, без сторонних библиотек? А многопоточность сложно реализуется? (чтобы внутри одного процесса все было). предполагается что код написан в стиле "все в кашу".
тогда забей. Ебля с потоками того не стоит. но это не значит, что нельзя сделать это параллельно. Просто тебе нужно придумать как запустить пару скриптов одновременно так, чтобы они не мучали диск слишком сильно.