p4s8x: "перевести все это в более-менее нормальный ООП" - вот-вот... я об этом и говорю. Кстати, часть вычислительной логики можно передать базе (через запросы или через вызов хранимых процедур).
gadfi: ну на самом деле для них нет разницы - новое или залоченное уже пол-года/год... Там политика одинаковая. Так что можете попытаться со старым.
Удачи, Вам!
p4s8x: ок. значит проблема в архитектуре приложения: много лишних действий.
Например, ряд рекомендаций:
1. При создании структуры для подобных объектов - делать копию и заменять свойства (а не пересоздавать каждый заново).
2. Запросы на выборку можно делать стэком.
3. Часто используемые структуры - наследовать и помещать через менеджер в сокет-сервис.
4. Использовать ===, делать где возможно ставить break в циклах.
5. Никогда не разрывать соединение с базой - использовать сокет-очередь.