| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java EE (J2EE) и Spring > Запросы к базе |
| Автор: yuliada 29.5.2009, 14:31 |
| На сайте есть сервлет, который делает много запросов к базе, поэтому работает медленно. Если развернуть сайт на той же машине, где и база, то все работает быстрее. Т.е. наверно надо как-то с сайта посылать один запрос на комп с базой (а не много), выполнять там все операции с ней, и назад отдавать готовый результат. Как это обычно делают, в какую сторону гуглить? |
| Автор: tux 29.5.2009, 14:41 |
| Переносить эту логику с многими запросами в хранимую процедуру и вызывать ее. |
| Автор: boevik 29.5.2009, 14:42 |
| Рулить в сторону DBA, который может проанализировать SQL statements посылаемые программой и улучшить их выполнение. |
| Автор: Samotnik 29.5.2009, 17:02 |
| yuliada, использовать в SQL функции с пом http://ru.wikipedia.org/wiki/%D0%A5%D1%80%D0%B0%D0%BD%D0%B8%D0%BC%D0%B0%D1%8F_%D0%BF%D1%80%D0%BE%D1%86%D0%B5%D0%B4%D1%83%D1%80%D0%B0 |
| Автор: jeank 29.5.2009, 17:38 |
| Использовать синтаксис подзапросов, если их поддерживает СУБД, тогда никакие хранимые процедуры не нужны. |
| Автор: boevik 29.5.2009, 20:06 | ||
Не совсем верно. В хранимой процедуре можно описать сложную логику приложения, включая if-ы. |
| Автор: yuliada 29.5.2009, 23:25 |
| А кроме хранимых процедур еще как-нибудь можно сделать? Там много java кода со сложной логикой, его не очень удобно будет в хранимые процедуры запихивать наверно... Может какую-то штуку, которая будет запущена на том же компьютере что и база и к которой как-то можно послать запрос... |
| Автор: yuliada 9.6.2009, 03:47 |
| В интернете говорят что по идее сервер БД и сайт должны быть на одном компе, ну или хотя бы на 2-х компах с нормальной скоростью связи между ними. У нас пока нет такой возможности. Еще говорят про трехзвенную архитектуру, но как-то неоднозначно народ к ней относится. Вынесла пока часть действий в хранимые процедуры, сократив число запросов, скорость работы увеличилась, но все туда вытащить будет проблемно. Решили пока обойтись этим решением, потом может дальше начальство будет думать на счет того чтобы хостить сайт рядом с БД. |