[.net;j2ee] Есть ли в .Net аналог entity beans? Или как лучше реализ.?

durka82

Есть такая задача:
Есть генератор запросов (на основе интерфейса и БД).
Есть асинхронный обработчик эти запросов (запросы к поисковым сервисам инета, например).
Генератор запросов создает некоторое множество запросов, которые надо выполнить, принять от них ответы и потом обработать.
Вся эта информация должна в итоге храниться в БД (сначала запрос, а потом и ответ на него или сообщение об ошибке).
Но если класть запрос в БД сразу генератором запросов, то логично обработчиком его брать из БД, иначе появляется проблема с тем, чтобы содержимое БД соответствовало объекту запроса (мало ли что).
А если класть запрос в БД в самом конце (вместе с ответом тогда появляется рис потерять его из-за сбоя (ну или надо все равно это все как-то бакапить).
Я подумал, что здесь как раз бы подошли entity beans из j2ee, но ставить сервер приложений не хочется (вообще-то хочется, чтобы это было клиентское приложение) + разработка уже идет и на .net.
Соответственно вопрос:
Есть ли на .net аналог entity beans? Или как еще можно решить эту задачу на .net (желательно поэффективнее)?
Пишу на C#, если это важно.

bleyman

А в чем проблема? Кладёшь в БД и мета-запрос (ну то есть то, что породило множество запросов и все запросы, у каждого запроса форейн ключ на соответствующий мета-запрос, у каждого результата - ссылка на соответствующий запрос, у мета-запроса есть поле "статус", которое инкрементится каждый раз после завершения очередного этапа (закончились генериться запросы, начали генериться ответы, закончились генериться ответы, начались обрабатываться ответы, завершена обработка мета-запроса).

durka82

А сохранение в БД самому надо писать?
Или можно, например, через сериализацию делать (и нужно ли?)?
Формат, в котором в базе лежат данные, не критичен, так как посторонние с ней работать не будут.
Или такое решение будет значительно медленнее?

Dasar

Какой кол-во запросов у тебя и за какое время?
Один из самых простых и гибких способов - это хранить запрос в строковом поле - в xml-виде

durka82

Пока что это будет однопользовательская версия, так что запросов не очень много будет.
Ну, например, запрос раз в 10 сек в среднем.
Хотя в пике мб создано несколько десятков запросов (скорее 10-20) в пределах минуты.
Один из самых простых и гибких способов - это хранить запрос в строковом поле - в xml-виде
В строковом поле в базе?
А xml-вид получать через сериализацию?

Dasar

> Ну, например, запрос раз в 10 сек в среднем.
> Хотя в пике мб создано несколько десятков запросов (скорее 10-20) в пределах минуты.
это немного
> В строковом поле в базе?
да
> А xml-вид получать через сериализацию?
да

durka82

Всем спасибо, буду пробовать
Но все-таки, есть в .Net аналог entity beans или нет (ну или что-нибудь близкое)?

puare

Есть проект NHibernate, адрес на память не помню, посмотри на офсайте Hibernate, у них это на главной висит. Это не совсем entity beans, это ORM, но тоже очень неплохо.

durka82

Ты ничего не путаешь? Это разве есть для .net?
Судя по описанию, это только для java

xz_post

есть клон под дот нет NHibernate - лежин на сорсфорже
а что такое entity beans ?

durka82

Спасибо, нашел
что такое entity beans ?
Это контейнеры для объектов с прозрачной синхронизацией их с БД.
Оставить комментарий
Имя или ник:
Комментарий: