AJAX: проблемы стабильности и надёжности при большой нагрузке на сервер
3 мин
Последние пару месяцев пишу небольшое Ajax-приложение.
Если коротко, то такой упрощённый браузерный Excel — фильтр сверху, табличка с данными снизу. Пользователь выбирает в фильтре, что он хочет редактировать, в табличку снизу подгружаются данные, пользователь их может редактировать, после изменения данных они отправляются на сервер, там обрабатываются, записываются в базу данных, сервер генерирует новые данные, графики, данные отправляет назад, графики отображаются отдельно в iFrame. До меня это приложение было не аяксовым, а основывалось на обычных формах, и пользователю приходилось ждать новой загрузки страницы после каждого изменения фильтра или данных (так как данные в ячейках зависили от других ячеек, приходилось делать пересчёт после каждого изменения), а мне поручили переделать всё под Ajax. Я не javascript-программист, я из мира Delphi/Builder, где весь интерфейс рисуется без проблем за полчаса, а потом уже пишется логика. Многое мне пришлось изучать на ходу, почти всё пришлось писать самому (вручную рисовать контролы и описывать эвенты на javascript, попутно борясь с несовместимостью или разной реакцией разных браузеров на один и тот же код — брррр, врагу не пожелаешь).
Если коротко, то такой упрощённый браузерный Excel — фильтр сверху, табличка с данными снизу. Пользователь выбирает в фильтре, что он хочет редактировать, в табличку снизу подгружаются данные, пользователь их может редактировать, после изменения данных они отправляются на сервер, там обрабатываются, записываются в базу данных, сервер генерирует новые данные, графики, данные отправляет назад, графики отображаются отдельно в iFrame. До меня это приложение было не аяксовым, а основывалось на обычных формах, и пользователю приходилось ждать новой загрузки страницы после каждого изменения фильтра или данных (так как данные в ячейках зависили от других ячеек, приходилось делать пересчёт после каждого изменения), а мне поручили переделать всё под Ajax. Я не javascript-программист, я из мира Delphi/Builder, где весь интерфейс рисуется без проблем за полчаса, а потом уже пишется логика. Многое мне пришлось изучать на ходу, почти всё пришлось писать самому (вручную рисовать контролы и описывать эвенты на javascript, попутно борясь с несовместимостью или разной реакцией разных браузеров на один и тот же код — брррр, врагу не пожелаешь).



