Silverlight и WCF: стратегии оптимизации производительности для огромного количества данных - PullRequest
0 голосов
/ 22 октября 2011

У меня есть приложение SL, которое связано со службой WCF.Служба WCF извлекает данные из базы данных SQL-сервера.И Silverlight, и WCF используют BinaryEncoding для кодирования сообщений SOAP.

WCF отправляет клиенту много данных с помощью метода OperationContract GetAllData ().GetAllData () возвращает список элементов ComplexData.Количество элементов в списке может быть большим.Снижение производительности звезды с 3 или 4 элементов.Каждый объект ComplexData помечен как DataContract и содержит множество свойств DataMember (около 30).Эти свойства имеют тип int, boolean, string, enum и list.

Поскольку GetAllData () проходит по таймауту, я хотел бы знать, как можно найти узкое место в такой архитектуре.В частности, какие инструменты или приемы я мог бы использовать для продолжения?

Заранее спасибо.

1 Ответ

1 голос
/ 22 октября 2011

Если вы получаете исключение тайм-аута на клиенте, узким местом, скорее всего, является код, который создает / извлекает ваши объекты ComplexData, а не WCF, который просто сериализует их.

...