Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Вызов Web Service из SQLCLR: кто использует?  [new]
Winnipuh
Member [заблокирован]

Откуда: Київ
Сообщений: 10428
Есть кто-то, кто реально использует вызов веб сервисов из SQLCLR процедур?
Как работает, ваше мнение?
21 ноя 13, 17:46    [15170080]     Ответить | Цитировать Сообщить модератору
 Re: Вызов Web Service из SQLCLR: кто использует?  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74925
В каком смысле "как"?
21 ноя 13, 17:51    [15170104]     Ответить | Цитировать Сообщить модератору
 Re: Вызов Web Service из SQLCLR: кто использует?  [new]
A1exey_E
Member

Откуда:
Сообщений: 22
Загружаю погоду таким способом, нормально работает, хотя думаю зависит от конкретной процедуры.
21 ноя 13, 17:54    [15170124]     Ответить | Цитировать Сообщить модератору
 Re: Вызов Web Service из SQLCLR: кто использует?  [new]
Winnipuh
Member [заблокирован]

Откуда: Київ
Сообщений: 10428
pkarklin
В каком смысле "как"?


вообще ...

например, при интенсивной нагрузке, т.е. когда много вызовов
21 ноя 13, 18:25    [15170269]     Ответить | Цитировать Сообщить модератору
 Re: Вызов Web Service из SQLCLR: кто использует?  [new]
KRS544
Member

Откуда:
Сообщений: 497
Все зависит от того, нужно ли потом будет маштабировать решение.
В случае написания аппсерверного приложения, которое работает с базой, его можно будет размножить на несколько серверов.
В случае использования CLR процедур нужно будет новый сервер СУБД ставить, что намного затратнее.
Чтоб валюту с сайта ЦБ качать - конечно лучше CLR.
21 ноя 13, 18:46    [15170336]     Ответить | Цитировать Сообщить модератору
 Re: Вызов Web Service из SQLCLR: кто использует?  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74925
Winnipuh
например, при интенсивной нагрузке, т.е. когда много вызовов


Много - это сколько?!
21 ноя 13, 21:46    [15170825]     Ответить | Цитировать Сообщить модератору
 Re: Вызов Web Service из SQLCLR: кто использует?  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74925
KRS544
В случае написания аппсерверного приложения, которое работает с базой, его можно будет размножить на несколько серверов.
В случае использования CLR процедур нужно будет новый сервер СУБД ставить, что намного затратнее.
Чтоб валюту с сайта ЦБ качать - конечно лучше CLR.


Внимательно перечитываем выделенное в первом предложении и второе предложение. Думаем...
21 ноя 13, 21:49    [15170830]     Ответить | Цитировать Сообщить модератору
 Re: Вызов Web Service из SQLCLR: кто использует?  [new]
Antoshka
Member

Откуда:
Сообщений: 828
Winnipuh
Есть кто-то, кто реально использует вызов веб сервисов из SQLCLR процедур?
Как работает, ваше мнение?
Пользуем, много и часто. Проблема в основном одна: CLR жрёт память. Много памяти. А SQL Server не спешить её (память) отдавать. Поэтому CLR-вызовы могут отваливаться по Out Of Memory
21 ноя 13, 22:36    [15170970]     Ответить | Цитировать Сообщить модератору
 Re: Вызов Web Service из SQLCLR: кто использует?  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6723
KRS544
Все зависит от того, нужно ли потом будет маштабировать решение.
В случае написания аппсерверного приложения, которое работает с базой, его можно будет размножить на несколько серверов.
В случае использования CLR процедур нужно будет новый сервер СУБД ставить, что намного затратнее.
Чтоб валюту с сайта ЦБ качать - конечно лучше CLR.
Как-то всё перекручено. Смешались кони люди.

Апп-сервер (AppS) - его функция интегрированная. Вызов Web Service (WS) никак не связан с базой. Да и структурная логика решения другая.
SQLCLR - явно зависимость серверного кода от WS. И пофиг, используется ли эта база через AppS или нет.

Одно из альтернативных решение - Service Broker (SB). Какой либо сервис (поставка данных от некоторых WS в базу) регистрируется как SB сервис, а далее через интерфейс вызова SB происходит обмен данными (получение).
И можно этот сервис делать как программу, как WinService и располагать не только на сервере. А также применять любые решения масштабирования.
У этого решения латенси чуть похуже, зато асинхронный вызов изкаробки (синхронный через "костыль"). Нужно больше знаний, как это всё фунчиклирует.
Другие преимущества - можно лучше организовать поддержку и контроль и доступность любых .Net решений, гибкость в разработке.
21 ноя 13, 23:00    [15171065]     Ответить | Цитировать Сообщить модератору
 Re: Вызов Web Service из SQLCLR: кто использует?  [new]
KRS544
Member

Откуда:
Сообщений: 497
pkarklin
KRS544
В случае написания аппсерверного приложения, которое работает с базой, его можно будет размножить на несколько серверов.
В случае использования CLR процедур нужно будет новый сервер СУБД ставить, что намного затратнее.
Чтоб валюту с сайта ЦБ качать - конечно лучше CLR.


Внимательно перечитываем выделенное в первом предложении и второе предложение. Думаем...


Не совсем понял...
Вам не нравится, что app сервер с базой может взаимодействовать?
22 ноя 13, 11:36    [15172851]     Ответить | Цитировать Сообщить модератору
 Re: Вызов Web Service из SQLCLR: кто использует?  [new]
KRS544
Member

Откуда:
Сообщений: 497
Mnior, может я некорректно написал...
Имел ввиду обычную связку -
удаленный сервис <-> app сервер на стороне клиента (приложение не только на .Net) <-> сервер СУБД.
22 ноя 13, 11:47    [15172944]     Ответить | Цитировать Сообщить модератору
 Re: Вызов Web Service из SQLCLR: кто использует?  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74925
KRS544
Не совсем понял...
Вам не нравится, что app сервер с базой может взаимодействовать?


Нравится. Почему-то все забывают, что размножая апп. сервера Вы никак не уменьшаете нагрузку на базу.
22 ноя 13, 11:50    [15172971]     Ответить | Цитировать Сообщить модератору
 Re: Вызов Web Service из SQLCLR: кто использует?  [new]
KRS544
Member

Откуда:
Сообщений: 497
pkarklin, это конечно, кто бы спорил.
Но по крайней мере мы оставляем делать СУБД то, что она умеет лучше всего.
А обработку SOAP оберток, парсинг данных (неважно XML или нет) и др. переносим на более дешевые (и приспособленные) железки. Ведь для этого не нужны массивы дисков, которые являются самой дорогой составляющей.

Конечно все зависит от конкретных задач...
22 ноя 13, 12:01    [15173028]     Ответить | Цитировать Сообщить модератору
 Re: Вызов Web Service из SQLCLR: кто использует?  [new]
Winnipuh
Member [заблокирован]

Откуда: Київ
Сообщений: 10428
Antoshka
Winnipuh
Есть кто-то, кто реально использует вызов веб сервисов из SQLCLR процедур?
Как работает, ваше мнение?
Пользуем, много и часто. Проблема в основном одна: CLR жрёт память. Много памяти. А SQL Server не спешить её (память) отдавать. Поэтому CLR-вызовы могут отваливаться по Out Of Memory


вот, в частности, это тоже я имел в виду
22 ноя 13, 12:04    [15173053]     Ответить | Цитировать Сообщить модератору
 Re: Вызов Web Service из SQLCLR: кто использует?  [new]
Antoshka
Member

Откуда:
Сообщений: 828
Winnipuh
Antoshka
CLR жрёт память
вот, в частности, это тоже я имел в виду

Порешали установкой ограничения max server memory
22 ноя 13, 14:13    [15174224]     Ответить | Цитировать Сообщить модератору
 Re: Вызов Web Service из SQLCLR: кто использует?  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6723
KRS544
Mnior, может я некорректно написал...
Имел ввиду обычную связку -
удаленный сервис <-> app сервер на стороне клиента (приложение не только на .Net) <-> сервер СУБД.
Да все вас прекрасно поняли. Вы ещё раз пост почитайте. 15171065

Человек говорит о серверном коде, а вы говорите о смене подхода. Эти понятия не надо путать.
KRS544
Но по крайней мере мы оставляем делать СУБД то, что она умеет лучше всего.
В итоге в процедуру же приходят данные.
KRS544
А обработку SOAP оберток, парсинг данных (неважно XML или нет) и др. переносим на более дешевые (и приспособленные) железки.
Да, если юзать тот же SB то в итоге будет XML, другого интерфейса нет. Хотя можно и бинарно, но маршалить на скуле неудобно.
А с другой стороны, не так уж и много нужно для серверной логики. А пихать всё в SQL - моветон, но этого ТС и не предлагает и не подразумевает.
Да и к тому же итак пихают этот XML где ненужно.
KRS544
Ведь для этого не нужны массивы дисков, которые являются самой дорогой составляющей.
Не массивом единым. Такой схоластикой можно свести RDBS к файлам.
22 ноя 13, 15:38    [15175066]     Ответить | Цитировать Сообщить модератору
 Re: Вызов Web Service из SQLCLR: кто использует?  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6723
Antoshka
Пользуем, много и часто. Проблема в основном одна: CLR жрёт память. Много памяти. А SQL Server не спешить её (память) отдавать. Поэтому CLR-вызовы могут отваливаться по Out Of Memory
Меня уверяли что проблему решили.
Не зря я всё никак не перехожу в CLR и правильно что сразу на SB.
Хотя укажите версию скуля, может он у вас старый/не пропатченный. И версию .Net.
22 ноя 13, 15:49    [15175172]     Ответить | Цитировать Сообщить модератору
 Re: Вызов Web Service из SQLCLR: кто использует?  [new]
Antoshka
Member

Откуда:
Сообщений: 828
2008 R2 и 2012 со всеми последними апдейтами
23 ноя 13, 23:05    [15180145]     Ответить | Цитировать Сообщить модератору
 Re: Вызов Web Service из SQLCLR: кто использует?  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74925
Antoshka
2008 R2 и 2012 со всеми последними апдейтами


У этих двух есть ряд отличий в части управления памятью...
23 ноя 13, 23:11    [15180167]     Ответить | Цитировать Сообщить модератору
 Re: Вызов Web Service из SQLCLR: кто использует?  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6723
pkarklin,

Какие?
25 ноя 13, 12:19    [15184481]     Ответить | Цитировать Сообщить модератору
 Re: Вызов Web Service из SQLCLR: кто использует?  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6723
Mnior
pkarklin,

Какие?
Up
27 ноя 13, 04:07    [15195879]     Ответить | Цитировать Сообщить модератору
 Re: Вызов Web Service из SQLCLR: кто использует?  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74925
Mnior,

http://blogs.msdn.com/b/sqlosteam/archive/2012/07/12/memory-manager-configuration-changes-in-sql-server-2012.aspx
27 ноя 13, 06:21    [15195954]     Ответить | Цитировать Сообщить модератору
 Re: Вызов Web Service из SQLCLR: кто использует?  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6723
pkarklin,

Ок. Хотя мне казалось что это уже в 2008 сделано, ибо падения при утечки памяти (нехватка) для связанных серверов (Oracle) пропали тогда.
С другой стороны это скрывает проблему утечки памяти. Так падает како-то левый модуль, но на сервер не отражается, а так куясь и не сразу понимаешь что что-то отобрало у сервера всю память.
В итоге гувернор становится обязаловкой.

Но меня больше интересует не сколько система контроля и ограничения, а именно модели памяти. В этом смысле всё как обычно?
28 ноя 13, 02:11    [15203034]     Ответить | Цитировать Сообщить модератору
 Re: Вызов Web Service из SQLCLR: кто использует?  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74925
Mnior
Но меня больше интересует не сколько система контроля и ограничения, а именно модели памяти. В этом смысле всё как обычно?


Да.
28 ноя 13, 11:40    [15204432]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить