У меня в руках 3 файловых сервера Windows XP (их единственная цель - их общий SMB-ресурс), работающих в офисе с примерно 50 пользователями. Рабочая нагрузка - это только офисное использование: они используют ее для хранения и совместного использования баз данных Access и файлов XLS, а также используют файлы через общий сетевой ресурс.
Копирование XLS-файла размером 700 Кб с одного из серверов на рабочую станцию практически мгновенно, но загрузка его с удаленного общего ресурса с помощью Excel занимает больше минуты. Этот же файл загружается за несколько секунд, если с локального диска.
Я не знаю, что делает доступ к файлу таким медленным при использовании его по сети, я подозреваю, что это какая-то причуда удаленного доступа к файлу Windows (возможно, аутентификация?), И я надеюсь, что можно будет изменить какой-нибудь простой флаг на серверы, чтобы ускорить работу до разумной скорости. Я сделал снимки экрана использования сети при загрузке вышеупомянутого файла XLS. Можете ли вы распознать этот шаблон и, возможно, дать мне некоторое представление о том, в чем проблема?
На первом изображении есть два запуска Excel, загружающих удаленный файл, для завершения каждого из которых требуется более одной минуты. Верхний и нижний графики взяты из одного и того же, но я только позже обнаружил опцию диспетчера задач, позволяющую различать загрузку (красный) и загрузку (желтый), поэтому я сделал 2 разных снимка экрана (объединенные ниже). Оба запуска заняли более одной минуты, возможно, более 2 минут.
На втором изображении есть 3-й и 4-й прогоны. На этот раз они работали значительно быстрее, чем первый, но все же слишком медленно для терпимого использования. И то, и другое заняло более 1 минуты, но в 4-м прогоне мне пришло в голову правильно измерить время, и я обнаружил, что это заняло 1 минуту 42 секунды. Это был самый быстрый из них. На этот раз я сделал только один снимок экрана размеченной версии.
Во всех запусках я заметил начальный пик, примерно через 8 секунд после запуска, затем использование сети упало до очень низкого уровня, затем, через несколько секунд, есть еще один пик, самая большая концентрированная активность, затем длительная время почти нулевой активности, когда наконец Excel показывает файл. Есть еще один пик, который начинается при показе файла и длится несколько секунд. Смещение между началом и концом прогона и активностью на графике, по-видимому, вызвано задержкой отображения данных в диспетчере задач. Я не знаю, когда файл действительно загружен. Я также не могу объяснить, почему зеленый график показывает небольшую активность между пиками, а красный / желтый график ничего не показывает. Но самым интригующим из всех является минутная пауза между вторым и третьим пиками, когда я понятия не имею о том, что происходит, и, конечно, мог бы быть намного быстрее.
Может ли кто-нибудь, имеющий опыт работы с сетями Windows, дать экспертное предположение о том, в чем проблема с этой настройкой (кроме операционной системы десятилетней давности)? Вы узнаете эти графические шаблоны? Можете это объяснить? Есть какие-нибудь подсказки, как улучшить производительность?
Если «медлительность» происходит только в Excel, я бы, вероятно, присмотрелся к XML-файлу и убедился, что у интерпретатора в Excel нет проблем с синтаксическим анализом XML. Возможно, он имеет неправильный формат или есть проблемы с чтением. Попробуйте открыть файл в других приложениях, таких как Блокнот и т. Д., И посмотрите, сохраняется ли проблема с медленностью. FWIW, XP не является хорошей платформой для обмена файлами с таким количеством (50) пользователей, поскольку она ограничена 10 подключениями клиентов. Вы могли столкнуться с некоторыми проблемами конкуренции с другими клиентами, пытающимися прочитать XML-файл. Я не думаю, что ваша проблема заключается в размере файла, а в том, что excel делает с файлом после его открытия. Но это только моя мысль. Попробуйте сделать дамп файла CSV и открыть его в Excel и посмотрите, сколько времени это займет.