Сериализация и быстродействие
Возникла такая ситуация. Есть приложение типа XML WebService. Восредством веб-методов к сервисам обращается клиент и в ответ получает разную информацию в объектах. Проблема в том, что при передаче объектов происходит сериализация/десериализация объектов в XML. И с увеличением числа объектов, увеличивается время на эту операцию. Сейчас ситуация достигла той точки, когда мириться с потерей времени стало невозможно. В связи с этим вопрос, кто-нибудь сталкивался с подобными проблемами и их решением?
П.С. Нашел на RSDN статью про то как убого сделана сериализация в .НЕТ 1.1 и примером "самопальной" сериализации, а так же тестами убедительно доказывающими правоту автора статьи. Но не пойму каким образом можно "перегрузить" или "подменить" стандартную сериализацию XML через SOAP.
Буду благодарен любым советам и идеям.
Насколько я помню, время на сериализацию не зависит от числа объектов. Покопался сейчас у Рихтера и не нашёл ничего подробного. Пока что могу предположить, что дело не в самом механизме сериализации, а в чём-то другом. Это другое стоит поискать, и как ещё вариант - попробовать другую версию фреймворка.
Может быть дело и не в этом. Но в чем тогда не пойму. Есть проект веб-сервисов. Есть проект тестового клиента. Если из клиента вызывать веб-метод - то результаты приходят через, допустим 6 секунд. Если из тогоже клиента, подключать приложение сервисов, как библиотеку и вызывать тот же метод, с теми же параметрами - работает 1 секунду. Куда тратится время не пойму... Никакого сжатия при передаче нет (точнее есть но результаты работы одинаковы как со включенным сжатием так и с выключенным) Данные и в том и в другом случае - передаются по сети. Единственное отличие двух способов в том, что в одном случае объекты сериализуются и передаются как данные XML, в другом - бинарным потоком. Насколько мне представлется так. Может я ошибаюсь и есть еще какое-то звено, на котором идет такая поетеря времени?