Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > ASP .Net > WCF based full duplex service issue

Reply
Thread Tools

WCF based full duplex service issue

 
 
Nadeem Ashraf
Guest
Posts: n/a
 
      11-03-2009
Hi,

We are working on a Silverlight 3 based tool that we call "Live Presenter".
Briefly speaking, the purpose of this tool is to provide an environment
where a teacher/presentation host can push himself live to other users (with
the help of a camera and a software tool like Expression Encoder; for
example). Apart from the live video, a presenter can also push selected
multimedia content from his library including video, audio, image, text and
form etc. which may serve as a subject reference material during
presentation. The attendees/students on the other hand can also connect
through the same tool and watch the presentation live, as it is being
conducted by the presenter.

In order to push the messages from the client to the server and then pass
those messages around to various different connected clients, we are using
WCF full duplex messaging service. So for example, when a presenter tries to
push a video content to clients, a message is sent to the messaging service
which then sends the same message to each of the connected clients of that
specific session. On receiving the message, source of a medialement based
control is set to the url passed in the message.

We have used the following URLs for reference in building this service:

http://weblogs.asp.net/dwahlin/archi...ce-part-i.aspx
http://weblogs.asp.net/dwahlin/archi...e-part-ii.aspx

Having said above, we are running into two very critical issues pertaining
to this service that is hindering any serious progress since the last one
week.

1) The messages are getting lost somewhere in the transit when we try to run
this tool with even 3-4 members in a session.
2) The messages are getting significantly delayed in reaching the
destination

It is worthwhile to mention that we are using the same service for passing
around two different categories of messages. one category is our
command/control messages to push the content around (from presenter's
perspective) and other category is chat messages.

Since the Service has to maintain the state of the connected clients, it is
a singleton service (InstanceContextMode is single). We have tried to set
ConcurrenyMode to multiple without any luck. We even tried to break the
Service into two different services each serving different category of
messages but that didn't solve our problem either.

Today, we tried to follow a different approach and created a simple Socket
based chat Service (for processing chat messages only). This looked to be
fine until 2-3 clients connected with the Server and they started sending
and receiving messages rapidly. At one point the server failed with the
following exception:

Socket Error
System.InvalidOperationException: An asynchronous socket operation is
already in progress using this SocketAsyncEventArgs instance.

Client Code
args = new SocketAsyncEventArgs();
args.UserToken = socket;
args.RemoteEndPoint = endPoint;
args.SetBuffer(message, 0, message.Length);
socket.SendAsync(args);

Just like previous case, we have no clue as to what is wrong here and how
can this problem be resolved. Can somebody please help or guide us in an
appropriate manner.

Thanks.




 
Reply With Quote
 
 
 
 
Steven Cheng
Guest
Posts: n/a
 
      11-04-2009
Hi Nadeem,

From your description, you are developing a service which will accept some
command/chat data from silverlight client and push data to other clients
connected to the same service, however, you found there occured some
problems when multiple clients connected to the service, correct?

As for the service, since it is sending both command and chat data, will
those message data contains large amount of binary data(such as
multimediate stream)? As you said that there is message got lost, what kind
of message does the issue occur against, you can try only sending command
data or chat data to see whether the problem is specific to certain kind of
message data.

Also, you mentioned that even using raw socket programming, you'll get
following error when have multiple clients connected to server service:

>>>>>>>>>

Socket Error
System.InvalidOperationException: An asynchronous socket operation is
already in progress using this SocketAsyncEventArgs instance.
<<<<<<<<<<

In such case, what is your server-side code look like? It looks like
something got wrong with the concurrent processing at server-side.

For WCF, you can turn on tracing to see whether you can get some detailed
error info in the trace log:

#Configuring Tracing
http://msdn.microsoft.com/en-us/library/ms733025.aspx

Sincerely,

Steven Cheng

Microsoft MSDN Online Support Lead


Delighting our customers is our #1 priority. We welcome your comments and
suggestions about how we can improve the support we provide to you. Please
feel free to let my manager know what you think of the level of service
provided. You can send feedback directly to my manager at:
http://www.velocityreviews.com/forums/(E-Mail Removed).

==================================================
Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/en-us/subs...#notifications.


--------------------
>From: "Nadeem Ashraf" <(E-Mail Removed)>
>Subject: WCF based full duplex service issue
>Date: Tue, 3 Nov 2009 11:59:05 +0500


>Hi,
>
>We are working on a Silverlight 3 based tool that we call "Live

Presenter".
>Briefly speaking, the purpose of this tool is to provide an environment
>where a teacher/presentation host can push himself live to other users

(with
>the help of a camera and a software tool like Expression Encoder; for
>example). Apart from the live video, a presenter can also push selected
>multimedia content from his library including video, audio, image, text

and
>form etc. which may serve as a subject reference material during
>presentation. The attendees/students on the other hand can also connect
>through the same tool and watch the presentation live, as it is being
>conducted by the presenter.
>


>
>
>


 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Difference between Ajax Enabled WCF service and regular WCF? Cindy Lee ASP .Net 1 03-19-2010 05:59 PM
WCF based full duplex service issue Nadeem Ashraf ASP .Net Web Services 0 11-03-2009 06:59 AM
AJAX enabled WCF Service Vs Standard WCF Service Simon ASP .Net 0 10-13-2009 09:13 AM
ECP Half-duplex or Full-Duplex? DigitalSierra A+ Certification 0 10-18-2004 04:39 AM



Advertisments