Microsoft устранил проблему, замедлявшую работу Office 365 Onedrive в Linux

23.03.2017 06:47

Компания Microsoft устранила проблему в сервисе Office 365 Onedrive for Business, которая существенно понижала качество работы пользователей Linux с облачным хранилищем. Примечательно, что компания была уведомлена пользователями о проблеме в ноябре прошлого года, но исправление внесено только после получения широкой огласки и волны недовольства в социальных сетях.

Суть проблемы была в том, что при обращении к сервису Onedrive из любого браузера (неважно Firefox или Chrome), в идентификаторе (User Agent) которого присутствует слово Linux, страница открывалась очень медленно, потребляя значительные системные ресурсы. Если же ту же самую страницу открыть из то го же самого браузера, но убрав "Linux" из строки User Agent, то открытие страницы производилось мгновенно. В том числе можно было взять Windows-браузер и, воспользовавшись дополнением для изменения User Agent, прописать идентификатор, специфичный для Linux, и получить огромное замедление работы, или взять любой Linux-браузер, заменить и отдаваемому серверу идентификаторе слово "Linux" на "Windows" и избавиться от проблемы с производительностью. Причём нагрузка создавалась значительная: загружалось около 100 Мб данных, примерно на две минуты браузер на 100% нагружал CPU, а интерфейс не отвечал на запросы.

Разработчики сервиса OneDrive из Microsoft извинилась перед пользователями и сообщили, что проблема была вызвана ошибкой в коде упреждающей загрузки компонентов (StaticLoad.aspx). Для предварительной загрузки ресурсов на платформах iOS, Chrome OS, macOS и Windows использовался штатный браузерный механизм для загрузки ссылок до обращения к ним. Для Linux осуществлялся откат на запасной, менее эффективный, вариант кода для загрузки ресурсов. Для решения проблемы инженеры Microsoft временно отключили упреждающую загрузку и намерены обновить реализацию StaticLoad.aspx, предварительно протестировав её в Linux.