Не сбивает ли база данных обновление запроса MySQL с помощью jQuery ajax? - PullRequest
0 голосов
/ 12 сентября 2010

Я использую функцию jQuery .ajax для загрузки страницы php с запросом mysql, который выбирает данные из базы данных, но у меня такой вопрос: обновляет ли запрос mysql сбои jQuery ajax или утомляет базу данных?

Информация: Обновление на 1 секунду с использованием setInterval ().

Отредактировано: Это запросы, которые я использую для их обновления.

SELECT * FROM table1 ORDER BY id DESC
SELECT * FROM table1 ORDER BY id ASC LIMIT 10
DELETE FROM table1 WHERE id = 'something'

Я бы ответилмне.Заранее спасибо

Ответы [ 3 ]

2 голосов
/ 12 сентября 2010

MySQL способен обслуживать сотни запросов в секунду, даже при работе на слабом оборудовании.

Однако вы все еще можете «утомить» сервер базы данных, особенно если вы выполняете очень сложный запрос или если у вас нет необходимых индексов в ваших таблицах. Вы можете использовать синтаксис EXPLAIN, чтобы увидеть, как MySQL выполняет ваш запрос.

2 голосов
/ 12 сентября 2010

Нет, это не приводит к сбою базы данных (как это могло быть?). Конечно, если вы запрашиваете скрипт, выполняющий mysql_query много , это может привести к DoS (но обычно требуется очень большое количество запросов для отключения сервера).

РЕДАКТИРОВАТЬ : Ваше обновление утверждает, что вы используете setInterval () в течение 1 секунды. В этом случае это зависит от того, сколько пользователей будут открывать эту страницу одновременно. Например. скажем, 1000 пользователей на этом сайте - это приведет к тому, что каждую минуту будет выполняться 60 000 запросов + запросов. Если ваш запрос только простой выбор, это не может быть проблемой. Если вы выполняете медленный запрос, вы можете проверить медленный журнал запросов , чтобы улучшить ваш запрос или, в качестве альтернативы, изменить поведение вашего скрипта.

1 голос
/ 12 сентября 2010

Что такое запрос mysql?Это зависит от пользователя?В противном случае было бы намного лучше кэшировать сторону сервера значений один раз в секунду и использовать ajax для извлечения этого кэшированного файла, а не для того, чтобы все ваши пользователи одновременно запрашивали одни и те же данные.

...