Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Large dataset updates and queries
Message
 
À
08/01/2009 07:36:02
Information générale
Forum:
ASP.NET
Catégorie:
The Mere Mortals .NET Framework
Versions des environnements
Environment:
C# 3.0
OS:
Windows XP SP2
Network:
Windows 2003 Server
Database:
MS SQL Server
Application:
Web Service
Divers
Thread ID:
01368654
Message ID:
01373168
Vues:
26
>Hi Paul,
>we are thinking about using streaming for our gets of data. The problem I am having is that occassionally I get a system.out of memory exception failed to allocate a managed buffer of ... bytes. The service is currently being hosted in iis 5.1. This hosting option was configured by using the mm.net template. How can I ensure that streaming is actually working because my client waits several minutes before displaying data. The protocol in use is basic http. If you wish we can continue this discussion via email at rwatson@ogleveeltd.com.

I don't really have any experience using streaming in WCF so I don't know that I'd be all that helpful with specifics. However, one thing about WCF is that the default settings are horrible - I've found that almost every default setting is no where near what is needed for a real application; stuff seems to work during testing but as soon as you pass some real data is starts falling down. Specifically, take a look at (must be set on both the server and the client):

MaxBufferSize
MaxReceivedMessageSize
MaxStringContentLength

Here's a sample of part of one of my config files for WCF:
<bindings>
      <nettcpbinding>
          <binding name="StandardServerBinding" maxbuffersize="8192000" 
              maxreceivedmessagesize="8192000" listenbacklog="5000" maxconnections="1000"> 
              <readerquotas maxdepth="24" maxstringcontentlength="8192000" maxarraylength="8192000" 
               maxbytesperread="8192000" maxnametablecharcount="8192000" />
              <reliablesession inactivitytimeout="01:00:00" />
          </binding>
      </nettcpbinding>
  </bindings>
        <behaviors>
            <servicebehaviors>
                <behavior name="RegisterBehavior">					
                    <servicedebug includeexceptiondetailinfaults="true" />
                    <servicemetadata />
                    <servicethrottling maxconcurrentcalls="48" maxconcurrentsessions="5000" 
                      maxconcurrentinstances="5000" />
                </behavior>
                <behavior name="ThrottlingBehavior">
                    <servicethrottling maxconcurrentcalls="48" maxconcurrentsessions="5000" 
                        maxconcurrentinstances="5000" />
                </behavior>
            </servicebehaviors>
        </behaviors>	
-Paul

RCS Solutions, Inc.
Blog
Twitter
Précédent
Répondre
Fil
Voir

Click here to load this message in the networking platform