|
Конструктор классы службы.
|
|||
---|---|---|---|
#18+
Кто знает как WCF инстанцирует класс службы ? Каждый раз или один раз при первом обращении ? К чему вопрос ? Надо инициализировать некоторые статические данные. Хочу сделать это в конструкторе. Это гуд или глупость ? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.11.2012, 22:43 |
|
Конструктор классы службы.
|
|||
---|---|---|---|
#18+
thunder2, это ты сам задаешь с помощью атрибута ServiceBehavior и его свойства InstanceContextMode ... |
|||
:
Нравится:
Не нравится:
|
|||
30.11.2012, 00:17 |
|
Конструктор классы службы.
|
|||
---|---|---|---|
#18+
bazile, Спасибо дружище. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.11.2012, 00:53 |
|
Конструктор классы службы.
|
|||
---|---|---|---|
#18+
thunder2статические данные Вот это часто бывает бэд, независимо от того, где их инициализировать. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.11.2012, 10:56 |
|
Конструктор классы службы.
|
|||
---|---|---|---|
#18+
SolYUtor, У меня мало опыта работы со службами, поэтому пока не все тонкости исследованы. Но в данном случае, храниться минимальный набор данных. Совсем чуть-чуть. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.11.2012, 21:37 |
|
Конструктор классы службы.
|
|||
---|---|---|---|
#18+
можно использовать синглетную службу [ServiceBehavior(InstanceContextMode=InstanceContextMode.Single)] class MySingleton: {.....} но....синглетная служба - заклятый враг масштабируемости. в любой момент времени с синглетом может работать только один клиент. например, если операция с синглетом занимает 1/10 секунды, то синглет сможет обслуживать только 10 клиентов в секунду синглетные службы неприемлемы для систем сколько-нибудь нормального размера. Лёве рекомендует по возможности избегать синглетов и поискать средства совместного использования состояния синглета вместо самого синглетного экземпляра. Но могут быть случаи, в которых применение синглетных экземпляров оправдано. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.12.2012, 12:32 |
|
Конструктор классы службы.
|
|||
---|---|---|---|
#18+
вопрос возник. Лёве или Лоуи, как правильней??? ) (Juval Lowy) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.12.2012, 14:17 |
|
Конструктор классы службы.
|
|||
---|---|---|---|
#18+
PropertSysвопрос возник. Лёве или Лоуи, как правильней??? ) (Juval Lowy) Правильней будет читать до конца. Есть еще конкурентный режим ConcurrencyMode.Multiple, в котором не делается синхронизация контекста и никаких очередей вызова не будет ... |
|||
:
Нравится:
Не нравится:
|
|||
02.12.2012, 10:07 |
|
Конструктор классы службы.
|
|||
---|---|---|---|
#18+
SeVa, благими намерениями вымощена дорога в ад. дочитаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.12.2012, 01:54 |
|
Конструктор классы службы.
|
|||
---|---|---|---|
#18+
SeVa, при использовании ConcurrencyMode.Multiple в случае синглетной службы необходимо обязательно устанавливать атрибут ReleaseServiceInstanceOnTransactionComplete=false (по умолчанию true) [ServiceBehavior(InstanceContextMode=InstanceContextMode.Single), СoncurrencyMode=ConcurrencyMode.Multiple, ReleaseServiceInstanceOnTransactionComplete=false ] class MySingleton: MySingletonIsTrueAnswer {.....} ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2012, 16:42 |
|
Конструктор классы службы.
|
|||
---|---|---|---|
#18+
SolYUtorthunder2статические данные Вот это часто бывает бэд, независимо от того, где их инициализировать. Но вот это тоже резонно. Lowy рекомендует использовать Single и PerSession - only if you need, а PerCall - everyways. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2012, 17:08 |
|
Конструктор классы службы.
|
|||
---|---|---|---|
#18+
thunder2 Надо инициализировать некоторые статические данные. Не нужно этого делать. При создании сервиса добавь свои данные в описание хоста Код: c# 1. 2. 3. 4.
и потом в сервисе доставай их из контекста операции: Код: c# 1.
как-то так ... |
|||
:
Нравится:
Не нравится:
|
|||
12.12.2012, 04:25 |
|
Конструктор классы службы.
|
|||
---|---|---|---|
#18+
Верблюдthunder2 Надо инициализировать некоторые статические данные. Не нужно этого делать. При создании сервиса добавь свои данные в описание хоста Код: c# 1. 2. 3. 4.
и потом в сервисе доставай их из контекста операции: Код: c# 1.
как-то так По мне, если Behavior, то уж лучше взять готовые для unity или mef ... |
|||
:
Нравится:
Не нравится:
|
|||
13.12.2012, 00:22 |
|
|
start [/forum/topic.php?fid=19&msg=38059083&tid=1397132]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
30ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
58ms |
get tp. blocked users: |
1ms |
others: | 13ms |
total: | 145ms |
0 / 0 |