2010-03-03 3 views
1

Я разработал приложение VB.NET с Visual Studio 2008. Приложение взаимодействует с SQL Server и обрабатывает текстовый файл.Запуск приложения VB.NET на сервере Windows 2003

Мой вопрос касается производительности. Хотя я запускаю его из Visual Studio 2008, для завершения требуется 3 секунды. То же самое происходит, когда Запускаю исполняемый файл, созданный мастером установки на рабочем столе (Windows XP sp 3). Но если я запустил исполняемый файл, установленный на сервере Windows 2003 Server, это займет 15 секунд! Что может быть причиной снижения производительности на сервере и на рабочем столе? .Net framework 3.5 SP1 установлен как на рабочем столе, так и на сервере.

Спасибо, Лев

+0

Я предлагаю вам сначала немного диагностировать эту проблему: действительно ли она работает медленнее только на сервере, или может быть, что она работает быстро только на вашем компьютере? Обычно ли он работает медленно под сервером Windows 2003 или только на конкретном сервере, на котором вы его установили? Кроме того, диагностируйте, какая часть вашего кода занимает много времени: используйте вывод трассировки какого-либо типа (достаточно писать в текстовый файл), который сообщает о временной отметке каждой подпрограммы, начинающейся с, и вы можете определить, -routine. –

+0

Работает ли он как сервис? – JeffO

ответ

0

Возможно ли, что есть некоторая задержка в сети, которая присутствует с вашего сервера, а не с вашего рабочего стола/рабочей станции? Возможно, есть проблема памяти/ресурсов, которая присутствует на сервере, но не на вашей рабочей станции. Кроме того, является ли код, выполняющий ТОЧНО то же самое на вашей рабочей станции, что он делает с сервера? Доступ к тем же базам данных (например, вы не сравниваете производительность между локальной базой данных разработки и сервером производственной базы данных)?

Я бы порекомендовал вам попробовать этот процесс из нескольких дополнительных выводов, если у вас есть к ним доступ. Может быть, еще один Windows Server 2003? Посмотрите, изолирована ли проблема от этого единственного сервера, или если это происходит где угодно, не являясь вашей рабочей станцией разработки.

Если вы открыты для его установки, я бы рекомендовал инструмент для профилирования, чтобы помочь вам определить раздел вашего приложения, который работает медленно на сервере. Redgate ANTS Profiler - это незаменимый профайлер кода, и у них есть 30- (хотя цена разумная, и я настоятельно рекомендую любой из их инструментов).

Смежные вопросы