|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
skyANA, ты сути посыла не понимаешь. Это просто пример привел того, что когда начинаешь "защищаться от дураков", то с юзингом реста траблов не меньше(а может и больше) чем с обычным SOAP. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2014, 18:29 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
EDUARD SAPOTSKI, а я тебе ссылку привёл на наш работаюшь RESTful public API :) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2014, 18:38 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
Мне бы твои проблемы. С юзингом RESTа у него траблы :) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2014, 18:39 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
skyANAя тебе ссылку привёл на наш работаюшь RESTful public API :) Лень ковырять, чесслово, и время нет. Вот МСУ свой проект допилит, похвастается, тогда и твой API посмотрим и решим как жить дальше В свое время сделал две поделки на SL с OData, афигеть, понравилось. Потом начали делать одну сложную хрень, нарвались на кучу траблов, откатились на SOAP, все пучком Ладно, пора мне, дел по горло... ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2014, 18:45 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
МСУEDUARD SAPOTSKIСлушай, давай не будем про ставки мелкософта, а то возникает желание на яву сбежать Ну если шарики на одате, одинэсы и прочая херотва, то надо уже начинать вилять задом чё А не похоже, что OData движется по тому же пути, что и SOAP в своё время? Спецификацию OData v2 можно за час прочитать. А спецификация OData v4 вполне уже тянет на рекомендации W3C :) Скоро получится такой же огромный неповоротливый монстр, как и SOAP-службы. Тогда в чем профит, реально? Про удобство реализации в .NET - не аргумент. Если сервис востребованный, использовать его отовсюду будут - из Java, PHP, из Delphi, чего доброго... :) Естественно, я сейчас про публичные API говорю, не про внутренности сайтов. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2014, 19:26 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
ДиезА не похоже, что OData движется по тому же пути, что и SOAP в своё время? Нет. Тут гораздо больше общего с ria services. ДиезСпецификацию OData v2 можно за час прочитать. А спецификация OData v4 вполне уже тянет на рекомендации W3C :) Ты имел ввиду OData v3 на нативном атоме? Да, вещь, причем поддерживается всякими экселями и прочим. v4 уже другая песня, добавили функции и прочие вкусности. Речь о v4, разумеется. ДиезСкоро получится такой же огромный неповоротливый монстр, как и SOAP-службы. Это будет скрыто от прикладного разработчика. ДиезТогда в чем профит, реально? Профит в том, что кодогенерированный контекст на клиенте так же трачится, как EF контекст и RIA. Работаешь с контекстом и с доменными объектами, а оно само всё транслируется в REST запросы. SOAP'у такого и не снилось. ДиезПро удобство реализации в .NET - не аргумент. Еще какой аргумент. ДиезЕсли сервис востребованный, использовать его отовсюду будут - из Java, PHP, из Delphi, чего доброго... :) Сделают темплейты, кодогенераторы. И поплывёт. Не проблема. ДиезЕстественно, я сейчас про публичные API говорю, не про внутренности сайтов. Публичные API вообще должны быть 100% REST. Априори. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2014, 20:18 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
EDUARD SAPOTSKIВ свое время сделал две поделки на SL с OData, афигеть, понравилось. Потом начали делать одну сложную хрень, нарвались на кучу траблов, откатились на SOAP, все пучком OData только сейчас стала съедобная. Буквально несколько месяцев назад еще была слабовата. Она и сейчас развивается. У меня есть один затык с ней, никак не могу решить его. У многих такая же фигня, решения пока не знаю. Жду новый релиз, может пофиксят... Ну это всё тонкости, в целом можно и нужно уже присаживать на лодку. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2014, 20:21 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
Web services are dead -- long live REST SOAP is officially dead, long live REST How REST replaced SOAP on the Web: What it means to you On the death of SOAP SOAP is Not Dead - It's Undead, a Zombie in the Enterprise REST in peace, SOAP SOAP is Comatose But Not Officially Dead! (February 19, 2005!!!) SOAP is dead, REST is coming Друзья, какой в задницу SOAP? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2014, 21:09 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
МСУПрофит в том, что кодогенерированный контекст на клиенте так же трачится, как EF контекст и RIA. Работаешь с контекстом и с доменными объектами, а оно само всё транслируется в REST запросы. Вот-вот! В этом как раз самый и косяк! Метода хорошо работает до поры до времени... Потом расскажешь что получилось. Хотя хз что у тебя за проект, может и прокатит на ура. МСУSOAP'у такого и не снилось. У SOAP потенциально возможностей больше чем в рест, но и писанины больше - факт. Но этот недостаток нивелируется с ростом сложности проекта. Короче, если у тебя там SL, табличек хотя бы штук 30 и какой ACID маячит на горизонте, советую 100 раз подумать прежде чем юзать рест. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2014, 21:13 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
МСУДрузья, какой в задницу SOAP? авторLooks like the tide of the web API protocol war (if there ever was one) has shifted firmly in REST’s favor while SOAP has been forced back. Web developers have cast their votes , they want RESTful APIs. Ага, спроси у рядового ПХП-шника что такое соап, процентов 80 ваще не в теме! И какого хрена JS в этом списке делает? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2014, 21:26 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
EDUARD SAPOTSKIВот-вот! В этом как раз самый и косяк! Метода хорошо работает до поры до времени... Потом расскажешь что получилось. Ну а чего ты, с RIA ведь никаких вопросов не было. Всё сейчас работает на нем. EDUARD SAPOTSKIМСУSOAP'у такого и не снилось. У SOAP потенциально возможностей больше чем в рест, но и писанины больше - факт. Но этот недостаток нивелируется с ростом сложности проекта. Короче, если у тебя там SL, табличек хотя бы штук 30 и какой ACID маячит на горизонте, советую 100 раз подумать прежде чем юзать рест. У SOAP вообще никаких возможностей нет, заранее обреченный протокол. Только REST! Хоть 1000 табличек ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2014, 21:28 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
МСУДрузья, какой в задницу SOAP?в России живешь, будь реалистом ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2014, 21:54 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
skyANAМСУДрузья, какой в задницу SOAP?в России живешь, будь реалистом Ну я не про старьё, а про новые решения. Так понятно-то, что это УГ еще не скоро сольется в унитаз. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2014, 22:04 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
Объясняю. Когда работаешь из того же SL через REST, у тебя линк-запрос на клиенте(приложение SL) транслируется в REST-запрос. На серваке он обратно транслируется в линк-запрос, который в свою очередь EF транслирует в SQL запрос. Т.е. идет цепочка - Linq -> REST -> Linq -> SQL. В итоге получается прям целая четырехзвенка! Вероятность что на каком-то участке что-то отвалится очень высокая, и механизмов контроля всего этого дела фактически нет! Из-за этого возрастает сложность отладки. Но это пол беды. Этот подход мотивирует реализовывать всю логику на клиенте, клиент раздувается, тормозит, елси еще кучу контролов какого телерика юзаешь, то ваще аминь. Но и это фигня. Всю логику на клиент не вытянешь, если приложение более или менее серьезное, начинаешь вытягивать хранимки на уровень REST на серваке. Начинается полный писец! А когда запросов становится дохрена, то очень сложно контролировать их последовательность(когда какой ответ сервака пришел). Вот тогда и начинаешь вспоминать про "заранее обреченный протокол" ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2014, 22:05 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
МСУДиезА не похоже, что OData движется по тому же пути, что и SOAP в своё время? Нет. Тут гораздо больше общего с ria services. Я не про общие концепции, а про геометрический рост сложности протокола в процессе развития. МСУДиезСпецификацию OData v2 можно за час прочитать. А спецификация OData v4 вполне уже тянет на рекомендации W3C :) Ты имел ввиду OData v3 на нативном атоме? Да, вещь, причем поддерживается всякими экселями и прочим. v4 уже другая песня, добавили функции и прочие вкусности. Речь о v4, разумеется. http://www.odata.org/documentation/odata-version-2-0/ http://www.odata.org/documentation/odata-version-4-0/ Объемы документации, мягко говоря, различаются :) SOAP тоже начинался с примитивного XML-RPC. А потом его начали расширять, стандартизировать, опять расширять, опять стандартизировать. Теперь мы вместо Simple Object Access Protocol имеем набор WS-*, в которых сам черт ногу сломит. :) МСУДиезСкоро получится такой же огромный неповоротливый монстр, как и SOAP-службы. Это будет скрыто от прикладного разработчика. ДиезТогда в чем профит, реально? Профит в том, что кодогенерированный контекст на клиенте так же трачится, как EF контекст и RIA. Работаешь с контекстом и с доменными объектами, а оно само всё транслируется в REST запросы. SOAP'у такого и не снилось. Точно так же реализация скрыта и для SOAP. Никто в здравом уме не будет формировать XML для Envelope или Fault. Для разработчика виден лишь набор классов и методов. МСУДиезПро удобство реализации в .NET - не аргумент. Еще какой аргумент. ДиезЕсли сервис востребованный, использовать его отовсюду будут - из Java, PHP, из Delphi, чего доброго... :) Сделают темплейты, кодогенераторы. И поплывёт. Не проблема. ДиезЕстественно, я сейчас про публичные API говорю, не про внутренности сайтов. Публичные API вообще должны быть 100% REST. Априори. ОК, назовем их не публичными, а используемыми внешними системами, в противоположность внутреннему АПИ сайта, которое лишь для AJAX-запросов. Даже если всё в рамках интранета. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2014, 22:05 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
EDUARD SAPOTSKIОбъясняю. Когда работаешь из того же SL через REST, у тебя линк-запрос на клиенте(приложение SL) транслируется в REST-запрос. На серваке он обратно транслируется в линк-запрос, который в свою очередь EF транслирует в SQL запрос. Т.е. идет цепочка - Linq -> REST -> Linq -> SQL. В итоге получается прям целая четырехзвенка! Вероятность что на каком-то участке что-то отвалится очень высокая, и механизмов контроля всего этого дела фактически нет! Из-за этого возрастает сложность отладки. Но это пол беды. Этот подход мотивирует реализовывать всю логику на клиенте, клиент раздувается, тормозит, елси еще кучу контролов какого телерика юзаешь, то ваще аминь. Но и это фигня. Всю логику на клиент не вытянешь, если приложение более или менее серьезное, начинаешь вытягивать хранимки на уровень REST на серваке. Начинается полный писец! А когда запросов становится дохрена, то очень сложно контролировать их последовательность(когда какой ответ сервака пришел). Вот тогда и начинаешь вспоминать про "заранее обреченный протокол" И чем тут поможет SOAP? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2014, 22:12 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
ДиезЯ не про общие концепции, а про геометрический рост сложности протокола в процессе развития. А накой тебе сдалась сложность протокола? Мысли доменными классами, возможностями контекста и реализацией OData контроллеров. То есть чистое прикладное программирование. Вот когда ты с SOAP работал, часто ли ты лез в его дебри? Я - ни разу, оно мне и нафик не уперлось. Диез http://www.odata.org/documentation/odata-version-2-0/ http://www.odata.org/documentation/odata-version-4-0/ Объемы документации, мягко говоря, различаются :) http://www.odata.org/documentation/odata-version-3-0/ является корневым унифицированным вариантом на атоме, а v2.0 уже где-то на помойке. Забудь про v2.0 :) ДиезSOAP тоже начинался с примитивного XML-RPC. А потом его начали расширять, стандартизировать, опять расширять, опять стандартизировать. Ну так расширять стали не туда. Да и идеология RPC это унылая дерьмократия, не иначе. Кому сейчас нужны RPC? ДиезТочно так же реализация скрыта и для SOAP. Никто в здравом уме не будет формировать XML для Envelope или Fault. Для разработчика виден лишь набор классов и методов. Причем тут скрытость реализации SOAP. Я выше написал про умный контекст, такой как в EF и RIA. Такая сказка SOAP'у и не снилась со своим унылым процедурным подходом. А в дебри Envelope или Fault уж подавно никто лезть не будет. ДиезОК, назовем их не публичными, а используемыми внешними системами, в противоположность внутреннему АПИ сайта, которое лишь для AJAX-запросов. Даже если всё в рамках интранета. Ну вот тебе внутренняя реализация для внешних систем http://msdn.microsoft.com/ru-ru/library/office/fp142385.aspx Чем плохо? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2014, 22:16 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
EDUARD SAPOTSKILinq -> REST -> Linq -> SQL. В итоге получается прям целая четырехзвенка! Вероятность что на каком-то участке что-то отвалится очень высокая, и механизмов контроля всего этого дела фактически нет! Из-за этого возрастает сложность отладки. Но это пол беды. Ну разумно. Больше уровней, сложнее отладка. Но всё решается обычным последовательным дебагом, как обычно. В случае веб приложений всё намного проще, за что я их и люблю. EDUARD SAPOTSKIВсю логику на клиент не вытянешь, если приложение более или менее серьезное, начинаешь вытягивать хранимки на уровень REST на серваке. Начинается полный писец! Никаких хранимок. Только внятная обвязка OData над моделью, всё. Забудь о убогих хранимках. EDUARD SAPOTSKIА когда запросов становится дохрена, то очень сложно контролировать их последовательность(когда какой ответ сервака пришел). Вот тогда и начинаешь вспоминать про "заранее обреченный протокол" Ну разумно, что тут сказать. А какие есть варианты? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2014, 22:19 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
МСУ Web services are dead -- long live REST SOAP is officially dead, long live REST How REST replaced SOAP on the Web: What it means to you On the death of SOAP SOAP is Not Dead - It's Undead, a Zombie in the Enterprise REST in peace, SOAP SOAP is Comatose But Not Officially Dead! (February 19, 2005!!!) SOAP is dead, REST is coming Вот скажите, зачем вы публикуете ссылки, которые не читали? По крайней мере, последнюю, на тайском языке МСУДрузья, какой в задницу SOAP? Насчет диаграмм - 15% - это не так уж и мало для мертвой с 2005 года технологии, не правда ли? (Кстати, в энтерпрайзе вовсю CORBA поддерживается до сих пор. Вот уж где окаменелости ) Но речь-то не о том, что SOAP лучше OData. А о том, что стандартизация превращает любую удобную технологию в неудобную, хотя и общеиспользуемую. Программисты, имхо, за то и любят REST, что он прост как табуретка, и не навязывает конкретную реализацию. Придумал удобный для себя протокол - и пользуй на здоровье. А тут опять "прокрустово ложе" навязывают... ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2014, 22:20 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
skyANAИ чем тут поможет SOAP? Одна операция - один метод на апликейшн-сервере. Каждый запрос(операция) под контролем. Вся логика сосредоточена на апликейшн-сервере или на уровне СУБД, клиент не перегружен. Просто тестировать. Просто контролировать последовательности. Прозрачно реализуются все транзакционные механизмы так сказать. В принципе, конечно, все это можно реализовать и с юзингом реста, но тогда его нужно пилить и пилить, а в итоге приходим к модели SOAP. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2014, 22:26 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
ДиезНасчет диаграмм - 15% - это не так уж и мало для мертвой с 2005 года технологии, не правда ли? Так это 10 год, почти 5 лет назад. Обрати внимание на динамику, с 2008 до 2010 года спад с 25% до 15%. А теперь прикинь себе цифры с 2010 года по конец 2014. Прикинул? Вот и я о том же. Диез(Кстати, в энтерпрайзе вовсю CORBA поддерживается до сих пор. Вот уж где окаменелости ) Ну это уже раритет. Не будет об этом. ДиезНо речь-то не о том, что SOAP лучше OData. А о том, что стандартизация превращает любую удобную технологию в неудобную, хотя и общеиспользуемую. SOAP ушел на покой уже давно, смысл его гладить по шерсти. Старое поддерживаем, новое - пилим на тренде. Топик как-раз про новое. Хочу уберечь Лешу от вляпаться в лужу :) ДиезПрограммисты, имхо, за то и любят REST, что он прост как табуретка, и не навязывает конкретную реализацию. Придумал удобный для себя протокол - и пользуй на здоровье. А тут опять "прокрустово ложе" навязывают... Ну оно же рестовое )) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2014, 22:29 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
EDUARD SAPOTSKIskyANAИ чем тут поможет SOAP? Одна операция - один метод на апликейшн-сервере.Классно. А как это противоречит REST? А что получится, если к SOAP необходимо добавить поддержку настрагиваемых пользователем фильтров? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2014, 22:33 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
skyANAА как это противоречит REST? Технически никак. Но практически получается, что рест изначально разрешает все а соап ничего. В одата дал доступ на таблицу а потом думаешь как этот доступ ограничить, всякие привилегии, валидаторы и т.д. А в соап хрен что сработает если ты в методе этот функционал не прописал. Для клиент-серверного приложения с высоким уровнем ответственности подход соап более приемлем. skyANAА что получится, если к SOAP необходимо добавить поддержку настрагиваемых пользователем фильтров? И как себе это представляешь? SOAP это фактически голый XML, куда какие фильтры всунешь? Есть методы, передавай фильтры в параметры, геморно, но работает. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2014, 22:50 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
МСУДрузья, какой в задницу SOAP? в сопу сопу! рест хотя бы идеологически верный. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2014, 22:56 |
|
Asp.Net vs WCF
|
|||
---|---|---|---|
#18+
skyANAТебя тут же попросят: "А сделайте так, чтобы не тупо 100, а настраивать можно было". Например так: OperationContract] public IEnumerable<Product> GetProducts(int top) { .... if(top > 1000) { return new List<Product>().Add(new Product(){Name = "ПНХ"}); } return db.Products.Take(top); } ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2014, 22:58 |
|
|
start [/forum/topic.php?fid=18&msg=38789897&tid=1354875]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
214ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
others: | 15ms |
total: | 332ms |
0 / 0 |