Первое, что нужно при анализе проблем с производительностью, - это проверить и проверить там, где вы теряете время, а не предположить , что это одна особая часть вашей системы.
Вы говорите: " занимает слишком много времени для обновления базы данных SQL ", откуда вы знаете, что вставки замедляют вас?
Сначала вы должныизмерьте время выполнения каждой части вашей системы.Затем оптимизируйте эту часть.
Не запускайте оптимизацию, если вы не знаете, какую часть оптимизировать.
Используйте профилировщик или простой код измерения времени, используя microtime()
в PHP и класс Stopwatch в C #, чтобы вычислить время выполнения фрагмента в вашей программе, чтобы точно определить горячие точки.
Предполагая, что у вас естьСделав все это, вы обнаружите, что `INSERTìng одной строки занимает слишком много времени, а затем есть несколько областей для изучения.Слишком много индексов - это, пожалуй, первое, что нужно проверить.
Видя вашу программу, я бы поспорил, что Андерс Абель прав, и вы теряете время на издержках HTTP, а не на INSERT
Альтернативный подход заключается в том, чтобы отправить весь список в код PHP, а затем использовать многорядную строку INSERT
для вставки всего лишь одним оператором:
INSERT INTO codes (code,Active)
VALUES
('code_1', true),
('code_2', false),
('code_3', true),
('code_4', false),
('code_5', true)
Но я все еще верю, что это ваша концепцияотправка каждого кода в виде одного POST на сервер, который занимает все время ...