В спящем режиме хорошие для пакетной обработки? Что относительно использования памяти?

Этого можно добиться с помощью трубы | async.

Пример:

<div *ngIf="(2DArray$ | async)?.length !== 0">...</div>
6
задан WW. 2 December 2008 в 06:19
поделиться

5 ответов

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

Причины использовать В спящем режиме:

  • "Кто-то" был "творческим" с именами столбцов (PRXFC0315. XXFZZCC12)
  • Дизайн DB все еще в движении, и/или Вы хотите одно место, где имена столбцов отображаются на Java.
  • Вы используете, в спящем режиме так или иначе
  • У Вас есть сложные запросы, и Вы не бегло говорите на SQL

Причины не использовать В спящем режиме:

  • Остальная часть Вашего приложения является чистым JDBC
  • Вам не нужно ни одно питание, в спящем режиме
  • У Вас есть сложные запросы, и Вы бегло говорите на SQL
  • Вам нужна определенная функция Вашего DB, чтобы заставить SQL работать
5
ответ дан 9 December 2019 в 22:41
поделиться

Будьте в спящем режиме, поскольку любая платформа ORM предназначается для того, чтобы разработать и обслужить системы на основе принципала объектно-ориентированного программирования. Но большинство баз данных является реляционным и не объектно-ориентированным, таким образом, в любом случае ORM всегда является компромиссом между удобным программированием ООП и оптимизировал/больше всего эффективный доступ DB.

Я не использовал бы ORM для определенных изолированных задач, а скорее как полный вариант архитектуры для слоя персистентности приложения.

2
ответ дан 9 December 2019 в 22:41
поделиться

Будьте в спящем режиме предлагает некоторые возможности сохранить сессию небольшой.

Можно использовать Query.scroll (), Criteria.scroll () для подобной JDBC прокрутки. Можно использовать Session.evict (Объектный объект) для удаления объектов из сессии. Можно использовать StatelessSession для подавления грязной проверки. И существует еще некоторая оптимизация производительности, видит Быть в спящем режиме документацию.

3
ответ дан 9 December 2019 в 22:41
поделиться

Если существуют возможные проблемы производительности, затем придерживаются кода JDBC.

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

Только выберите столбцы, которые Вы используете! (Никакой "выбор *" материал).

Сохраните SQL максимально простым. например, не включайте маленькие ссылочные таблицы как коды валют в соединении. Вместо этого загрузите таблицу валюты в описания валюты памяти и твердости с поиском программы.

В зависимости от DBMS незначительное переупорядочение SQL, где предикаты могут иметь главный эффект на производительность.

Если Вы - updateing/inserting, только фиксируют каждые 100 - 1 000 обновлений. т.е. не фиксируйте каждую единицу работы, но сохраняйте некоторый счетчик, таким образом, Вы фиксируете менее часто.

Используйте в своих интересах агрегатные функции своей базы данных. Если Вы хотите общие количества кодом ОТДЕЛА, затем делают это в SQL с "СУММОЙ (сумма)... ОТДЕЛ GROUP BY".

0
ответ дан 9 December 2019 в 22:41
поделиться

По-моему, я НЕ использовал бы, в спящем режиме, так как это подает Вашу заявку, намного больше и менее удобную в сопровождении, и у Вас действительно нет шанса оптимизации сгенерированных sql-сценариев быстрым способом. Кроме того, Вы могли использовать всю функциональность SQL поддержки JDBC-моста и не ограничены быть в спящем режиме функциональностью. Другая вещь состоит в том, что у Вас есть ограничения также, которые приходят с каждым слоем унаследованного кода.

Но в конце это - философский вопрос, и необходимо сделать это способ, которым это соответствует, Вы - образ мыслей лучше всего.

1
ответ дан 9 December 2019 в 22:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: