.NET Remoting : DataSet или контейнер .

User avatar
ListenMeNow
Уже с Приветом
Posts: 536
Joined: 31 Jul 2002 13:09
Location: Москва

.NET Remoting : DataSet или контейнер .

Post by ListenMeNow »

Нет опыта в использовании ADO-шного DataSet-a в качестве передаваемого
обьекта между удаленным сервером и клиентом .
Насколько является правильной сама идея использования датасета
как передаваемого обьекта при получении данных с application-сервера
и возвращения изменений отклиента ?
У нас тут 2 точки зрения по этому вопросу :одни ратуют
за использование ADO-шного DataSet-а в качестве передаваемого обьекта .
Лично я - за использование самописных контейнеров и против использования датасетов .
Мои аргументы :
1. Ремоутинг-канал предьявляет жесткие ограничения по трафику ,
и я пока не знаю , как поведёт себя DataSet , который наверняка будет
"таскать" между клиентом и сервером весь свой набор данных .
2. Контейнер позволит максимально оптимизировать потоки данных
по ремоутинг-каналам и снизить траффик в силу того , что
он есть конечный фиксированный набор типизированных двнных .
3. Непонятно , как будет работать DataSet-овский механизм
"возвращения" изменений с клиента на сервер ,
который является его основной "изюминкой" .
Кстати , в нашем случае клиент вообще не имеет доступа к SQL-серверу .
Я подозреваю , что снижение затрат при разработке системы с
использованием датасетов ( что не является еще фактом )
будет компенсироваться дополнительными затратами на оптимизацию траффика .
User avatar
Gennadiy
Уже с Приветом
Posts: 11332
Joined: 30 Mar 2000 10:01
Location: Ice Storm Town

Re: .NET Remoting : DataSet или контейнер .

Post by Gennadiy »

ListenMeNow wrote:Нет опыта в использовании ADO-шного DataSet-a в качестве передаваемого
обьекта между удаленным сервером и клиентом .
Насколько является правильной сама идея использования датасета
как передаваемого обьекта при получении данных с application-сервера
и возвращения изменений отклиента ?

Не совсем понятно что вы называете ADO DataSet. DataSet в .Net не привязан к конкретной технологии. В том числе и к ADO.
У нас тут 2 точки зрения по этому вопросу :одни ратуют
за использование ADO-шного DataSet-а в качестве передаваемого обьекта .
Лично я - за использование самописных контейнеров и против использования датасетов .
Мои аргументы :
1. Ремоутинг-канал предьявляет жесткие ограничения по трафику ,
и я пока не знаю , как поведёт себя DataSet , который наверняка будет
"таскать" между клиентом и сервером весь свой набор данных .

DataSet умеет использовать DiffGram XML что бы передавать ТОЛьКО изменения.
2. Контейнер позволит максимально оптимизировать потоки данных
по ремоутинг-каналам и снизить траффик в силу того , что
он есть конечный фиксированный набор типизированных двнных.

Тут как всегда - противоречие между еффективностью и гибкостью. Если протоколы тщательно прописаны и редко меняются может самодельные контейнеры и лучше будут. Но с DataSet часто работать проще.
3. Непонятно , как будет работать DataSet-овский механизм
"возвращения" изменений с клиента на сервер ,
который является его основной "изюминкой" .

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

DataSet тоже подлежат оптимизации. Можно передавать только изменения, можно не передавать схему, можто использовать двоичную сериализацию или ZIP фильтр .
В общем трудно рекомендовать что-то одно, не зная деталей.
User avatar
ListenMeNow
Уже с Приветом
Posts: 536
Joined: 31 Jul 2002 13:09
Location: Москва

Re: .NET Remoting : DataSet или контейнер .

Post by ListenMeNow »

Gennadiy wrote:DataSet тоже подлежат оптимизации. Можно передавать только изменения, можно не передавать схему, можто использовать двоичную сериализацию или ZIP фильтр .
В общем трудно рекомендовать что-то одно, не зная деталей.

Спасибо . Будем разбираться .
Yuri_p33
Уже с Приветом
Posts: 394
Joined: 12 Feb 2001 10:01
Location: USA

Re: .NET Remoting : DataSet или контейнер .

Post by Yuri_p33 »

ListenMeNow wrote:Будем разбираться .
Почитайте еще и тут - http://www.rsdn.ru/article/dotnet/DotNetSerial.xml

Return to “Вопросы и новости IT”