Спасибо) Да, действительно, просто и эффективно) Для теста отлично, однако в рабочем проекте каждый из активных скриптов должен иметь доступ ко всем данным таблицы, а не только к части, т.к. там более сложные запросы с большим количеством условий. Но в этом направлении я еще не копал. Попробую использовать.
Спасибо, почитал про FOR UPDATE. Классная штука, к сожалению в моем варианте, похоже, не подходит, по крайней мере при использовании "в лоб", т.к. MySQL не имеет способа игнорировать заблокированные строки в SELECT. Провёл тест, запустив одновременно 300 скриптов, получилось что каждый скрипт ждёт завершения активного и только после этого выполняется сам, что получается невероятно долго. При этом выполнились только 60, остальные отвалились по таймауту ожидания разблокировки: Lock wait timeout exceeded;
Совет Станислава помог. Записываю изображение в массив байт, а таймером уже отрисовываю. А с Invoke в данном случае проблемы были. Не смотря на него выдавались исключения, связанные с доступом из разных потоков.
>>Запросы реально исполняются несколько минут?
>>Потребление памяти/процессора на SQL сервере в момент выполнения запроса?
По одиночке, нет, но если их сразу много, то подлетает использование процессорного времени для mysql и сервер очень напрягается, поднимается load average и waiting. Собственно этот момент удалось решить "картой данных".
>>Какой объем данных передается в ответе?
Совсем немного, несколько сотен байт.
>>Какой канал между серверами, не забивается ли он?
Интересный вопрос, как это можно проверить?