2010-12-10 2 views
1

hi Я разрабатываю свое первое веб-приложение asp.net, используя nHibernate в качестве поставщика данных.архитектура веб-приложений с использованием nhibernate

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

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

благодаря

Jhonny

ответ

1

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

Если вы застряли на материале для сеанса за разговором, посмотрите на NHibernate.Burrow - это обрабатывает все материалы для ведения беседы/сессии для вас.

+0

Рекомендация хорошая, но у вас есть одна ошибка: сеанс делает ** не ** держит соединение открытым, за исключением случаев, когда внутри транзакции. – 2010-12-10 14:35:11

0

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

Смежные вопросы