2011-03-28 3 views
1

J'ai un service WCF (pas RIA) auquel j'accède depuis Silverlight. L'application a des données entrantes rapides, les données de Twitter bien sûr;) qui est écrite dans une base de données SQL Server. Le service WCF se trouve dans un projet Web distinct et j'interroge le serveur toutes les 10 secondes à partir de Silverlight.Questions de performance Silverlight WCF

J'ai remarqué qu'il ralentissait récemment, probablement en raison des volumes, bien que je le limite à 100 objets par requête (en ajoutant une instruction Take (100) à toutes les requêtes). J'ai mis une instruction debug.writeline dans le constructeur pour mon service WCF et la fenêtre de sortie l'a montré en construisant pour chaque requête, je pense que c'est mauvais car je mets stupidement ma construction de différents dépôts, etc. faire plusieurs nouveaux contextes d'objet.

Existe-t-il une solution Silverlight autre que l'interrogation du service et comment configurer un service WCF pour mon scénario de clients souhaitant de petites quantités (< = 100 objets) de données fréquemment?

+0

Salut, alors que je crois qu'il est bien de créer une nouvelle classe de service WCF pour chaque requête entrante, je crois que vous seriez en mesure d'améliorer les performances ayant une certaine logique de mise en cache si les données que vous chargez sont en grande partie similaires ... –

+0

Yeh j'espérais qu'il y avait un paramètre que quelqu'un savait pour le sauvegarder continuer à créer de nouvelles instances peut-être la mise en cache ou peut-être juste utiliser singleton sur ninject pourrait suffire. – Phil

+0

J'ai aidé les performances en séparant le projet Web en deux, car j'avais un projet Web hébergeant à la fois le service XAP et le service WCF. Cela semblait aider beaucoup. – Phil

Répondre