[Mono-dev] WCF and parallel client-execution
Chakotey STME
chakoteystme at gmail.com
Mon Nov 22 03:28:27 EST 2010
So I have to test it with using a mono 2.8 installation?
chakoteystme
2010/11/22 Atsushi Eno <atsushieno at veritas-vos-liberabit.com>:
> I can't give a definite answer, but at least the throttling limitation will
> go away ;-)
>
> Atsushi Eno
>
> (2010/11/22 15:41), Chakotey STME wrote:
>>
>> hello,
>>
>> thanks for your answer.
>>
>> That's correct. I am using mono 2.6
>> If I change to mono 2.8 - will die clients run parallel?
>>
>> chakoteystme
>>
>> 2010/11/22 Atsushi Eno<atsushieno at veritas-vos-liberabit.com>:
>>>
>>> Hello,
>>>
>>> Not sure what is exactly happening, but if you are using mono 2.6 then I
>>> limited service throttling the maximum concurrent sessions (and thus
>>> calls)
>>> to 1 for stable processing (and you cannot change it through
>>> ServiceThrottlingBehavior, as it is hard coded). So you won't get two
>>> clients run in parallel.
>>>
>>> Atsushi Eno
>>>
>>> (2010/11/21 8:10), Chakotey STME wrote:
>>>>
>>>> Hello,
>>>>
>>>> I have a problem with WCF.
>>>>
>>>> I have a service:
>>>>
>>>>
>>>> <ServiceBehavior(ConcurrencyMode:=ServiceModel.ConcurrencyMode.Multiple,
>>>> InstanceContextMode:=InstanceContextMode.Single)> _
>>>> Public Class HelloService
>>>> Implements IHelloService
>>>>
>>>>
>>>> Private Shared thisInstance As HelloService
>>>> Protected Sub New()
>>>> Console.WriteLine("Service erzeugt!")
>>>>
>>>>
>>>> End Sub
>>>>
>>>> 'singleton
>>>> Public Shared Function GetSingleton() As HelloService
>>>> If (thisInstance Is Nothing) Then
>>>> thisInstance = New HelloService
>>>> End If
>>>> Return thisInstance
>>>> End Function
>>>>
>>>> Public Function Greet(ByVal name As String) As IList(Of Objekt)
>>>> Implements IHelloService.Greet
>>>>
>>>> Console.WriteLine("greet aufgerufen! "& DateTime.Now.Ticks)
>>>>
>>>> Dim myObjekt As Objekt = New Objekt
>>>> Dim myObjekt2 As Objekt = New Objekt
>>>>
>>>>
>>>> Console.WriteLine("Service macht etwas lang dauerndes")
>>>>
>>>> Dim i As UInteger = 0
>>>> For i = 0 To UInteger.MaxValue / 2
>>>>
>>>> Next
>>>>
>>>> Console.WriteLine("dauert lange fertig")
>>>>
>>>> Dim list As List(Of Objekt) = New List(Of Objekt)
>>>> list.Add(myObjekt)
>>>> list.Add(myObjekt2)
>>>>
>>>>
>>>>
>>>> Return list
>>>>
>>>>
>>>> End Function
>>>>
>>>>
>>>>
>>>> Public Function Greet2(ByVal name As String) As
>>>> System.Collections.Generic.IList(Of Contracts.Objekt) Implements
>>>> Contracts.IHelloService.Greet2
>>>> Console.WriteLine("greet2 aufgerufen! "& DateTime.Now.Ticks)
>>>>
>>>> Dim myObjekt As Objekt = New Objekt
>>>> Dim myObjekt2 As Objekt = New Objekt
>>>>
>>>>
>>>> Console.WriteLine("Service2 macht etwas lang dauerndes")
>>>>
>>>> Dim i As UInteger = 0
>>>> For i = 0 To UInteger.MaxValue / 2
>>>>
>>>> Next
>>>>
>>>> Console.WriteLine("dauert lange fertig")
>>>>
>>>> Dim list As List(Of Objekt) = New List(Of Objekt)
>>>> list.Add(myObjekt)
>>>> list.Add(myObjekt2)
>>>>
>>>> Return list
>>>> End Function
>>>> End Class
>>>>
>>>> And I have a Client:
>>>>
>>>>
>>>> Imports System.ServiceModel
>>>> Imports Contracts
>>>>
>>>> Module Module1
>>>>
>>>> Sub Main()
>>>> Dim binding = New BasicHttpBinding()
>>>> Dim address = New EndpointAddress("http://192.168.100.110:8080")
>>>> Dim client = New HelloClient(binding, address)
>>>>
>>>> Dim myObjekt = client.Greet("name")
>>>> End Sub
>>>> End Module
>>>>
>>>> If I execute the client I get a answer from the host and all is perfect.
>>>>
>>>> But I want that more than one client can connect to the service and
>>>> use the methods from the singleton service.
>>>>
>>>> If I execute two clients - one client has to wait until the other
>>>> client has his return value.
>>>>
>>>> I don't know why, because I used the attribute
>>>>
>>>>
>>>> ConcurrencyMode:=ServiceModel.ConcurrencyMode.Multiple
>>>>
>>>> I use a basicHttpBinding and the service is hosted via a
>>>> windows-service with mono-service2.
>>>>
>>>> So can you help me?
>>>>
>>>> I use vb.net 3.5
>>>>
>>>> Thanks,
>>>> _______________________________________________
>>>> Mono-devel-list mailing list
>>>> Mono-devel-list at lists.ximian.com
>>>> http://lists.ximian.com/mailman/listinfo/mono-devel-list
>>>>
>>>>
>>>>
>>>
>>
>>
>
>
More information about the Mono-devel-list
mailing list