Можно ли запускать запрос для каждого изменения поля ввода в большой веб-форме? - PullRequest
0 голосов
/ 22 января 2020

Я занимаюсь разработкой портала для оценки / оценки для учебного заведения, используя php и html, который похож на лист Excel, где факультеты будут вводить оценки для примерно 20 вопросов против имени студента. На каждой из этих страниц будет около 60 студентов.

Можно ли запускать запрос на обновление для каждого изменения, которое будет сделано. Это будет означать, что будет запущено как минимум 1200 запросов на обновление.

Причина моей путаницы: я хочу, чтобы страница функционировала точно так же, как лист Excel, чтобы даже если они обновляют sh страницу без отправки формы, детали остаются такими же.

Есть ли такой риск, как перегрузка БД, связанная с этим?

Ответы [ 3 ]

0 голосов
/ 22 января 2020

Все будет в порядке, если пользователь будет вводить запись один за другим. Однако, если есть сценарий, в котором пользователь сможет выполнить массовое обновление, то есть более чем одно поле за раз, вы можете предложить оптимизированное решение, внедрив Единица работы шаблон дизайна. Идея заключается в том, чтобы накапливать и объединять все ожидающие запросы в БД и отправлять их все одновременно одним запросом, тем самым значительно оптимизируя производительность. Кроме того, было бы лучше использовать AJAX в вашем проекте, чтобы сделать взаимодействие с пользователем более плавным. Вы не хотите прерывать пользователя каждый раз, когда он обновляет поле с перезагрузкой страницы.

0 голосов
/ 22 января 2020

Было бы хорошо, если вы используете AJAX для выполнения операций обновления. Потому что для каждого изменения вызывается AJAX и выполняется операция обновления. PHP может обрабатывать миллионы операций, поэтому вам не нужно беспокоиться о перегрузке БД или о чем-то еще

0 голосов
/ 22 января 2020

Я думаю, что все должно быть в порядке, базы данных созданы для обработки миллионов операций CRUD с записями, 1200 кажется слишком малым, и в соответствии с вашими требованиями все операции записи не выполняются одновременно, поэтому все должно быть хорошо;)

Если вы хотите иметь более надежное решение, у вас всегда может быть 2 сервера баз данных, где один выполняет только запись, а другой выполняет чтение, а также существует множество решений для оптимизации базы данных в зависимости от типа базы данных. Если вы используете, вы всегда можете выполнить поиск в Google и найти их, дайте мне знать базу данных, которую вы используете, если вам нужна помощь по ним!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...