Сравнение производительности хранимой процедуры, написанная в PL/SQL против Java

StackOverflow https://stackoverflow.com/questions/4307016

Вопрос

После прохождения обсуждения здесь У меня сейчас еще один вопрос.

Предположим, есть предприятие Уровень применения с миллионом пользовательской базы и миллионы транзакций каждый день. Производительность, что было бы лучше.

  1. Java хранимая процедура
  2. Или Oracle, хранящиеся процедуры (PL/SQL)

PS: Когда я говорю предприятие Разработка приложений, я имел в виду его от точки зрения разработчиков, где у нас разные слои абстракции. Тестирующие рамки. Автоматическое тестирование развернуто на нескольких лезвиях и обширной отладке и т. Д.

Это было полезно?

Решение

Я подозреваю, что проблемы с производительностью сводится к тому, какие операции базы данных вы делаете. Однако очень важной проблемой для меня при работе с базами данных является тестируемость. Много раз я находился в проектах, с которыми слишком ориентированы на базу данных - где мы получаем тонны бизнес -логики, которую я не могу тестировать, проверить или, возможно, даже изменить.

Я всегда для прагматичного выбора - все в правильном месте. И для некоторых вещей вы действительно должны держать его в базе данных. Но это проблема, на которую стоит подумать.

Другие советы

Я не могу представить, что между двумя приложениями будет много раз разницы, если для большинства приложений, если только ваши сохраненные процедуры не являются высокочительно-тяжелыми (и обратите внимание, что я имею в виду вычисления в самой процедуре, а не вычисления, участвующие в выполнении отдельных операторов SQL).

Теперь, что касается разницы между сохраненными процедурами, в целом и обычным кодом приложения, это другая история.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top