|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
МСУАлексей К, вот тебе OData канал, общаемся бизнесовыми сущностями: http://blogs.office.com/2014/03/24/creating-burndown-charts-for-project-using-power-pivot-and-power-query/ Пишется такой канал за 3 минуты, рецепт показывал выше. Даже контроллеров не нужно писать, просто натравливаем на OData целую edmx. Всё. Что может предложить твой унылый SOAP? Писать 100500 методов на каждый чих юзера? Пилить под них 100500 отчетов?Отдаём данные в виде myReport.xlsx, и пусть он делает с ними в Excel всё что хочет, раз он такой умный. А у меня не стоит задача предоставить универсальный движок для построения отчётов, поэтому ОДата мне ни к чему. Если ОДата кому-то помогает, я только рад, но навязывать мне его не надо. Я не ведусь на бесплатный сыр от маркетологов. :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2014, 05:33 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
МСУEDUARD SAPOTSKIМожете привести пример задачи, где ну прям позарез нужны 100500 фильтров на сервере? Везде. В любых задачах, какие только можно себе представить. В любой автоматизации, в любой аналитике, в любой интеграции. Всегда и всюду хотелось фильтровать, сортировать, группировать, выбирать нужные поля. Вася хочет чупа-чупс, а Петя хочет петушка на палочке, а Алла хочет огурчик. Всё это даёт OData. Отдай ей свою модель, разнеси на контроллеры для гибкости и отдай бизнесу.Переносим логику с сервера на клиента. Отлично! :-) МСУОни тебя в задницу будут целовать,Спасибо, не надо! :-) МСУа IT будет прыгать от щастья, что не нужно на каждый чих что-то допиливать, прикручивать педали и биться головой о стенку и писать отписки "нет ресурсов".Ну будут биться головой потребители твоей информации, в попытках её обработать. Ещё и твой сервер положат неоптимальными SQL-запросами, которые получатся в результате их упражнений с ОДата. Но они за это деньги получат, а ты нет, потому что ты отдал свой объём работ. :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2014, 05:41 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
skyANAНо Эдуард предпочитает думать, что это на фиг никому не нужно, что это какая-то экзотика. Ну что ж, его право. И снова бла-бла-бла... Куча адептов OData сотню постов распрягают как круто реализуется фильтрация, и ни одного примера привести не могут реальной практической задачи где это действительно нужно! А знашь почему? Да потому что вы никогда никакой ентерпрайз не пилили! Ни на одатах ни на соапах, ваще ниначом! Уверен, что хер из вас кто знает что хотя бы подобные циферьки значат 60–50/51 62–90 51/50–62 а уже оборотно-сальдовые ведомости составлять собрались! Хрен вы их когда составляли и ваще смутно представляете что это. Вон ViPRos плавал, знает, так и ахинею не несет, и уверен что спокойно примеры приведет где фильтрация действительно нужна. Надоел этот срач теоретиков. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2014, 07:01 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
EDUARD SAPOTSKIskyANAНо Эдуард предпочитает думать, что это на фиг никому не нужно, что это какая-то экзотика. Ну что ж, его право. И снова бла-бла-бла... Куча адептов OData сотню постов распрягают как круто реализуется фильтрация, и ни одного примера привести не могут реальной практической задачи где это действительно нужно! А знашь почему? Да потому что вы никогда никакой ентерпрайз не пилили! Ни на одатах ни на соапах, ваще ниначом! Уверен, что хер из вас кто знает что хотя бы подобные циферьки значат 60–50/51 62–90 51/50–62 а уже оборотно-сальдовые ведомости составлять собрались! Хрен вы их когда составляли и ваще смутно представляете что это. Вон ViPRos плавал, знает, так и ахинею не несет, и уверен что спокойно примеры приведет где фильтрация действительно нужна. Надоел этот срач теоретиков.Тро-ло-ло, от тебя требовалось привести пример реализации настраиваемого фильтра для SOAP, ты не справился, а не компетентны мы? Эдуард, такой Эдуард. Стоял бы уже в сторонке, раз облажался. Примера ему не хватает. Тебя чем моя ссылка не устраивает? Мы разработали наш Public API не потому, что нам захотелось, а потому что большая часть клиентов (а не взятые тобой с потолка 5%) подняла этот feature request в wish list-е. Также с Public API работает мобильный клиент Абикоса, и шлёт на сервер свои запросы со своими фильтрами. Тут ты небось предложишь писать отдельные хранимки, отдельные лимиты для мобильных устройств, написать на сервере кучу проверок, а с какого устройства пришёл запрос, да? ViPRos тоже не для потехи реализовал фильтры. Скажешь его клиентам они тоже на фиг не упали? А если хочешь пример из своей предметной области, то пойди к бухгалтеру тёте Вале и посмотри как она твою хранимку за период дёргает, выгружает данные в Excel и что с ними делает. И вот её и убеждай, что настраиваемые фильтры в Excel ей не нужны. Кстати последние Microsoft придумал тоже, исключительно чтобы было, так то ими никто не пользуется, ага, ага ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2014, 07:24 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
EDUARD SAPOTSKIвы никогда никакой ентерпрайз не пилили! Ни на одатах ни на соапах, ваще ниначом! Уверен, что хер из вас кто знает что хотя бы подобные циферьки значат 60–50/51 62–90 51/50–62 а уже оборотно-сальдовые ведомости составлять собрались! Хрен вы их когда составляли и ваще смутно представляете что это.я начинал свою профессиональную карьеру с разработки АИС ТПС НК Юкос. Там этого ентерпрайза было жопой жуй на сотне серверов по всей России. И любой грид в интерфейсе АРМа поддерживал выгрузку в Excel, филтрацию колонок и настраиваемые фильтры на уровне компонента. И прикинь, этим активно пользовались. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2014, 08:05 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
skyANAИ любой грид в интерфейсе АРМа поддерживал выгрузку в Excel, филтрацию колонок и настраиваемые фильтры на уровне компонента. Да епрст, да каким хером фильтрация на клиенте до фильтрации на уровне сервера плять???!!! Если юзер в гриде жмякнул по хидеру в колонке "цвет", то у тебя запрос на сервак идет и там все фильтруется??? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2014, 08:16 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
EDUARD SAPOTSKIskyANAИ любой грид в интерфейсе АРМа поддерживал выгрузку в Excel, филтрацию колонок и настраиваемые фильтры на уровне компонента. Да епрст, да каким хером фильтрация на клиенте до фильтрации на уровне сервера плять???!!! Если юзер в гриде жмякнул по хидеру в колонке "цвет", то у тебя запрос на сервак идет и там все фильтруется???Глупости не пиши. Какая колонка "цвет" в нефтянке? Какой"жмякнул по хидеру"? Там было жесткое разделение прав и ответственности. Пользователи настраивали фильтры под себя, сохраняли их и работали. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2014, 08:36 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
skyANAГлупости не пиши. Какая колонка "цвет" в нефтянке? Какой"жмякнул по хидеру"? Там было жесткое разделение прав и ответственности. Пользователи настраивали фильтры под себя, сохраняли их и работали. Имел дело с нефтянкой не один раз, с тонкостями учета при бурении и обслуживании трубопроводов с большего знаком и всякими witsml prodml меня тоже не испугаешь. Давай по существу! Какой процесс? Где какой фильтр? Где что нужно настраивать и сохранять?! И аргументы - вот это с OData делается вот так просто, а с SOAP получается вот такая жопа... ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2014, 08:59 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
hVosttИзопропила какая разница для осуществления RPC, в каком формате передавать параметры и получать результаты? вот разница img=http://i58.tinypic.com/1zh3cqh.png Можно и наоборот подписать. ))) Аналогия напрашивается: OData - аналог LINQ, а SOAP - аналог хранимых процедур на сервере. Казалось бы, на линке можно любой запрос написать, а с мощью C# вообще ХП не требуются. Помню, когда появился LINQ, многие вопили, что transact sql не нужен, и вообще "умер и не трепыхается" :) Ан нет. Почему-то глупые DBA так и продолжают не разрешать умным программерам лезть шаловливыми запросами в таблички, а раздают права на ХП. И правда, что это они? )) Короче, Одата - это действительно неплохо, этакий linq over http. Но заменить соап не сможет. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2014, 09:31 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
ДиезАналогия напрашивается: OData - аналог LINQ, а SOAP - аналог хранимых процедур на сервере.Если пошло сравнение SOAP == SP, я бы тогда сказал OData == View. ДиезКазалось бы, на линке можно любой запрос написать, а с мощью C# вообще ХП не требуются. Помню, когда появился LINQ, многие вопили, что transact sql не нужен, и вообще "умер и не трепыхается" :)В моём мире так и есть. :-) ДиезАн нет. Почему-то глупые DBA так и продолжают не разрешать умным программерам лезть шаловливыми запросами в таблички, а раздают права на ХП. И правда, что это они? ))Никогда не понимал, как администраторы (DBA) могут принимать участие в разработке информационной системы, да ещё и навязывать свою архитектуру. В моём мире задача DBA ограничивается администрированием того, что дадут. :-) ДиезКороче, Одата - это действительно неплохо, этакий linq over http. Но заменить соап не сможет.Задачи у них разные. В моём мире востребованность OData вызывает сомнения. Я не хочу давать возможность клиентам формировать через OData SQL запросы, планы выполнения которых я, как разработчик, не могу контролировать. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2014, 09:45 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
Алексей КНикогда не понимал, как администраторы (DBA) могут принимать участие в разработке информационной системы, да ещё и навязывать свою архитектуру. В моём мире задача DBA ограничивается администрированием того, что дадут. :-)везет тебе, а где-то даже на тестовой бд хрен прав допросишься)) по теме: если сервису не нужна публичность, планируется работа только в интранете, зачем тут web.api? сделал, запустил виндоус-службой, и пусть себе работает; у потребителя сервиса всегда под рукой контракт, классы; удобно же. как я понял, смысл web.api если есть именно web-клиенты, т.е. нужно взаимодействие с сервисом через js, так? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2014, 10:09 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
Алексей КДиезАналогия напрашивается: OData - аналог LINQ, а SOAP - аналог хранимых процедур на сервере.Если пошло сравнение SOAP == SP, я бы тогда сказал OData == View. Неправильно сравнение. В View логику не напишешь. OData - это всё, и View, и хранимые процедуры, и функции, и вычисления. SOAP убог, от того и помер. REST всё и завоевал уже весь мир. Бороть SOAP уже не нужно, он в могиле. Зачем бороться с мертвыми? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2014, 11:56 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
Алексей КДиезАналогия напрашивается: OData - аналог LINQ, а SOAP - аналог хранимых процедур на сервере.Если пошло сравнение SOAP == SP, я бы тогда сказал OData == View. ДиезКазалось бы, на линке можно любой запрос написать, а с мощью C# вообще ХП не требуются. Помню, когда появился LINQ, многие вопили, что transact sql не нужен, и вообще "умер и не трепыхается" :)В моём мире так и есть. :-) ДиезАн нет. Почему-то глупые DBA так и продолжают не разрешать умным программерам лезть шаловливыми запросами в таблички, а раздают права на ХП. И правда, что это они? ))Никогда не понимал, как администраторы (DBA) могут принимать участие в разработке информационной системы, да ещё и навязывать свою архитектуру. В моём мире задача DBA ограничивается администрированием того, что дадут. :-) ДиезКороче, Одата - это действительно неплохо, этакий linq over http. Но заменить соап не сможет.Задачи у них разные. В моём мире востребованность OData вызывает сомнения. Я не хочу давать возможность клиентам формировать через OData SQL запросы, планы выполнения которых я, как разработчик, не могу контролировать. Я тоже думал, что выбрать в качестве примера - View или LINQ. Выбрал линк для пущего контраста :) Сейчас в телекоме работаем - тут в порядке вещей, когда админы выставляют требования к архитектуре. Есть огромные БД, к которым хочет прицепиться куча систем, наружу выставляются либо SOAP, либо хранимки. А внутри - оттюнингованные по полной запросы. Никаких прямых селектов. И ДБА тут не только админят, а настраивают индексы, партицирование, тейблспейсы и т.д. Т.е. напрямую участвуют в разработке. Был случай, когда запрос к таблице с 10 тысячами записей вешал промышленный сервер на несколько минут. Стали копать - а там "всего лишь" CTE и вложенные подзапросы. Так что программистов порой тоже нельзя подпускать к БД ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2014, 12:06 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
Boneshockпо теме: если сервису не нужна публичность, планируется работа только в интранете, зачем тут web.api? сделал, запустил виндоус-службой, и пусть себе работает; у потребителя сервиса всегда под рукой контракт, классы; удобно же. как я понял, смысл web.api если есть именно web-клиенты, т.е. нужно взаимодействие с сервисом через js, так?Если надо дёргать данные AJAX-сом с Asp.Net странички, то Web API удобен: он заточен чисто под эту задачу, в нём нет ничего лишнего, настраивать практически ничего не надо. В WCF возможностей намного больше, чем в Web API, но и работать с WCF сложнее. Всему своё место. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2014, 12:19 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
МСУАлексей Кпропущено... Если пошло сравнение SOAP == SP, я бы тогда сказал OData == View. Неправильно сравнение. В View логику не напишешь.Вот это новость! МСУOData - это всё, и View, и хранимые процедуры, и функции, и вычисления.ОДата - это всё, согласен. :-) МСУSOAP убог, от того и помер. REST всё и завоевал уже весь мир. Бороть SOAP уже не нужно, он в могиле. Зачем бороться с мертвыми? SOAP будет всегда. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2014, 12:22 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
ДиезСейчас в телекоме работаем - тут в порядке вещей, когда админы выставляют требования к архитектуре. Есть огромные БД, к которым хочет прицепиться куча систем, наружу выставляются либо SOAP, либо хранимки. А внутри - оттюнингованные по полной запросы. Никаких прямых селектов.Вот, а коллеги предлагают юзерам напрямую ходить в таблицы и самим писать запросы, хоть и через OData. Ну что поделать, тренд нынче такой. :-) ДиезИ ДБА тут не только админят, а настраивают индексы, партицирование, тейблспейсы и т.д. Т.е. напрямую участвуют в разработке.Никогда не понимал, почему этих людей называют админами. :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2014, 12:27 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
Алексей КSOAP будет всегда. EDI до сих пор жив и ничё ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2014, 12:29 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
Алексей КВот это новость! Прикинь как оно бывает? Алексей КМСУOData - это всё, и View, и хранимые процедуры, и функции, и вычисления.ОДата - это всё, согласен. :-) OData это не всё, это просто протокол, покрывающим широкий спектр задач, которые даже не снились SOAP'у. Алексей КSOAP будет всегда. Ну да, как и спектрум, приставка денди и панасоник 3DO ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2014, 14:27 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
ДиезСейчас в телекоме работаем - тут в порядке вещей, когда админы выставляют требования к архитектуре. Есть огромные БД, к которым хочет прицепиться куча систем, наружу выставляются либо SOAP, либо хранимки. А внутри - оттюнингованные по полной запросы. Никаких прямых селектов. И ДБА тут не только админят, а настраивают индексы, партицирование, тейблспейсы и т.д. Т.е. напрямую участвуют в разработке. Я не вижу противоречий в использовании REST подхода, а конкретно OData. Можно и с хранимками работать, и с мухами, и даже с котлетами. OData не мешает работе твоих админов. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2014, 14:29 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
Алексей КВ WCF возможностей намного больше, чем в Web API, но и работать с WCF сложнее. Всему своё место. Смотря по какому протоколу работаешь. Ты изначально сказал, что речь о HTTP. Так вот готов тебя расстроить, WCF сольёт по возможностям WebAPI. Один стримминг чего только стоит (недавно обсуждали с хвостом). В плане же REST уважаемый и могучий WCF не развивается, в отличие от WebAPI. Да и OData в WCF невозможна. Так что в плане HTTP твой унылый SOAP сосёт болт. То ли дело в WebAPI, и мощнейшая маршрутизация, экшены-шмешкены и прочее. Если решил ставить тапки на HTTP, то однозначно WebAPI с его вкусным REST. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2014, 14:33 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
Алексей КПереносим логику с сервера на клиента. Отлично! :-) Фильтрики и сортировки - замечательная бизнес логика :) Ну просто отличная логика Алексей КМСУОни тебя в задницу будут целовать,Спасибо, не надо! :-) А зря :) Алексей КЕщё и твой сервер положат неоптимальными SQL-запросами, которые получатся в результате их упражнений с ОДата. Но они за это деньги получат, а ты нет, потому что ты отдал свой объём работ. :-) Ну так проектируй так, чтобы сервер не убивали. Урезай выборки, разграничивай ACL ролями и пермиссиями и так далее. Зачем отдавать сразу всю базу? Отдавай, к примеру, всё, что связанно с одним элементом из мастера данных. Например, товарная накладная. И всё, что по ней связано - детализация, поставщики, транспорт и логистика, счета и так далее. Максимум что ты тут можешь вытащить, так это пару десятков строк в итоге, увязанных джойнами. Тебя же никто не заставляет давать контроллер, который будет выплевывать из базы все накладные со свей этой иерархией. Так что от тебя зависит, что давать, кому давать и сколько давать. Включи уже мозг... ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2014, 14:39 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
Алексей КМСУАлексей К, вот тебе OData канал, общаемся бизнесовыми сущностями: http://blogs.office.com/2014/03/24/creating-burndown-charts-for-project-using-power-pivot-and-power-query/ Пишется такой канал за 3 минуты, рецепт показывал выше. Даже контроллеров не нужно писать, просто натравливаем на OData целую edmx. Всё. Что может предложить твой унылый SOAP? Писать 100500 методов на каждый чих юзера? Пилить под них 100500 отчетов?Отдаём данные в виде myReport.xlsx, и пусть он делает с ними в Excel всё что хочет, раз он такой умный. А у меня не стоит задача предоставить универсальный движок для построения отчётов, поэтому ОДата мне ни к чему. Если ОДата кому-то помогает, я только рад, но навязывать мне его не надо. Я не ведусь на бесплатный сыр от маркетологов. :-) Я тебя не спрашивал, как можно это альтернативно решить. Это можно хоть на голубиной почте запилить. Речь шла о том, что OData дает готовые механизмы, с помощью который за пару минут можно поднять полноценный сервис с реальной моделью. Все, кому нужна информация, ходят и берут её, анализируют, изменяют, удаляют. И всё это за две минуты. Вопросы оптимизации, нагрузки и прочих телодвижений решаются так же как и в обычных веб сервисах. И речи об этом вообще не идет. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2014, 14:44 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
ДиезНо заменить соап не сможет. В чём конкретно не сможет? Что такого может SOAP, но не может OData? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2014, 14:46 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
Алексей КМне проще написать самому, чем разбираться со стандартом, который завтра может оказаться на помойке. Пара базовых классов для DTO + расширяющий метод для IQueryable пишутся за два часа. Ну так с этого и надо было начинать. Ты лисапедостроитель и тебе страшно освоить новую технологию. И ты прикрываешься якобы страхами оказаться на помойке. А то, что уже происходит, тебе не важно https://www.oasis-open.org/news/pr/oasis-approves-odata-4-0-standards-for-an-open-programmable-web ... |
|||
:
Нравится:
Не нравится:
|
|||
30.10.2014, 14:47 |
|
|
start [/forum/moderation_log.php?user_name=CostyaN]: |
0ms |
get settings: |
10ms |
get forum list: |
16ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
155ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
61ms |
get tp. blocked users: |
1ms |
others: | 590ms |
total: | 876ms |
0 / 0 |