@Kinokio есть встроенный модуль работы с картинками.
но тоже костыльно.
режешь картинку исходную попиксельно, собирая в процессе новую но уже с другим расположением.
вроде модуля для этого достаточно.
производительность наверно ужасна.
@andrwork а откуда данные берутся? они проверяются перед тем как заносить в БД?
Как вариант конечно отдельный поток который будет собирать данные с рабочих потоков (через те же списки) и заносить их в БД, предварительно производя валидацию)