Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / Single, PerSession, PerCall / 10 сообщений из 10, страница 1 из 1
28.04.2010, 15:39
    #36603279
Winnipuh
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Single, PerSession, PerCall
объясните простым языком чем отличаются....
Я сейчас использую такое:

Код: plaintext
1.
[ServiceBehavior(InstanceContextMode = InstanceContextMode.Single, ConcurrencyMode = ConcurrencyMode.Multiple)]


может надо на PerSession поменять?
...
Рейтинг: 0 / 0
28.04.2010, 15:56
    #36603354
bured
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Single, PerSession, PerCall
Single - синглтон. Один инстанс для всех.
PerCall - создание нового инстанса для каждого запроса.
PerSession - один инстанс для сессии одного клиента.

>может надо на PerSession поменять?

Если нужно сохранять состояние или синглтон притормаживает, то да.
...
Рейтинг: 0 / 0
28.04.2010, 17:12
    #36603623
Winnipuh
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Single, PerSession, PerCall
buredSingle - синглтон. Один инстанс для всех.
PerCall - создание нового инстанса для каждого запроса.
PerSession - один инстанс для сессии одного клиента.

>может надо на PerSession поменять?

Если нужно сохранять состояние или синглтон притормаживает, то да.

у меня так: каждый юзер вызывает метод connect(), получает ид сессии (гуид) и далее вызывает
разные методы по выборке данных, изменению, т.е. через сервис идет работа с sql server.
...
Рейтинг: 0 / 0
28.04.2010, 17:32
    #36603720
bured
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Single, PerSession, PerCall
Я так и не понял, для чего тебе сессии. Тем более при InstanceContextMode.Single сессия будет одна на всех.
...
Рейтинг: 0 / 0
28.04.2010, 17:38
    #36603760
Winnipuh
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Single, PerSession, PerCall
buredЯ так и не понял, для чего тебе сессии. Тем более при InstanceContextMode.Single сессия будет одна на всех.

я проверил, не подходит сессии, т.е. то, как у меня луше всего....

Хотя получается как-то странно, хочется где-то оптимизнуть.., т.е.
если два клиентских приложения вызовут одновременно один и тот же метод, который возвращает какие-то данные типа select id, name from t; то пока один юзер вызвал и забирает данные, второй ждет... а если юзеров 100 ?

какая практика есть в этом смысле?
...
Рейтинг: 0 / 0
28.04.2010, 17:43
    #36603788
bured
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Single, PerSession, PerCall
Тут палка о двух концах. Можешь сделать PerCall или PerSession и с чтением будет всё ок.
Но с записью надо будет решать проблемы с блокировками.
...
Рейтинг: 0 / 0
28.04.2010, 19:47
    #36604034
Winnipuh
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Single, PerSession, PerCall
buredТут палка о двух концах. Можешь сделать PerCall или PerSession и с чтением будет всё ок.
Но с записью надо будет решать проблемы с блокировками.

да.. а вот скл сервер умеет параллельно обрабатывать много коннектов и запросов,
как бы так извернуться?
...
Рейтинг: 0 / 0
28.04.2010, 21:01
    #36604142
bured
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Single, PerSession, PerCall
Да извернуться-то можно используя трансакции.
...
Рейтинг: 0 / 0
28.04.2010, 22:50
    #36604236
LR
LR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Single, PerSession, PerCall
Winnipuh
Код: plaintext
1.
[ServiceBehavior(InstanceContextMode = InstanceContextMode.Single, ConcurrencyMode = ConcurrencyMode.Multiple)]

ConcurrencyMode.Multiple бессмысленно в сочетании с InstanceContextMode.Single
msdnNote
The ConcurrencyMode property interacts with some other settings. For example, if the InstanceContextMode value is set to Single the result is that your service can only process one message at a time unless you also set the ConcurrencyMode value to Multiple.
...
Рейтинг: 0 / 0
29.04.2010, 13:17
    #36605099
LR
LR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Single, PerSession, PerCall
LRConcurrencyMode.Multiple бессмысленно в сочетании с InstanceContextMode.Single
здесь я оказался неправ, нехитрый тест показал что это не так, "конкурентоспособность" сервиса повышается...
...
Рейтинг: 0 / 0
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / Single, PerSession, PerCall / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]