Установить Office на серверы ASP.NET IIS: плюсы и минусы? - PullRequest
0 голосов
/ 18 ноября 2010

Во-первых, маленький голос в моей голове кричит, что это плохая идея, и это не должно быть сделано, но моя прагматичная сторона спрашивает: «Как плохо это может быть?»

СуровыйДело в том, что большая часть повседневной работы моей компании происходит в том или ином инструменте MS Office.Данные экспортируются из наших пользовательских инструментов как * .tab, * .csv, обрабатываются в Excel и импортируются обратно с различной степенью успеха.

Большинство этих пользовательских инструментов - веб-приложения ASP.NET MVC, удобство использованияможет быть улучшено за счет большей функциональной совместимости с Office.

Я много лет сражался, говоря, что Office на веб-сервере - ужасная идея.В последнее время я думал, что повышенное удобство использования перевешивает потенциальные риски.

Я схожу с ума?

Ответы [ 5 ]

3 голосов
/ 18 ноября 2010

Вы не говорите, какую версию MS Office вы используете на своем рабочем месте или какой тип взаимодействия вам нужен.

Если вы хотите создавать документы Office «на лету» непосредственно из веб-приложения, то при использовании Office 2007 или 2010 форматы документов по умолчанию (.docx, .xlsx) основаны на Open XML SDK . Это означает, что можно генерировать документы динамически, не устанавливая MS Office на веб-сервере.

Если вы используете Office 2003 или более раннюю версию, установка MS Office на сервере обычно считается плохой практикой - это неподдерживаемая конфигурация.

Эта статья Microsoft описывает многие возможные проблемы, с которыми вы можете столкнуться, если решите пойти по этому пути.

3 голосов
/ 18 ноября 2010

Microsoft Office не предназначен для работы на сервере, который может быть многопоточной средой с высокой степенью распределения. Это клиентское приложение, которое, кстати, в основном неуправляемый код. Поэтому его установка и использование с веб-сервера могут скрыть потенциальные проблемы: утечка дескрипторов, объекты GDI, маршалинг между управляемой / неуправляемой памятью, объектами STA COM и т. Д. Я бы порекомендовал вам использовать только инструменты, предназначенные для серверная среда.

0 голосов
/ 19 ноября 2010

Я видел эту работу в средах с очень низкой нагрузкой ... но как только нагрузка увеличивается, проблемы начинают нарастать.Microsoft даже задокументировала это, как ясно показывает статья Джаззы.Обратите внимание, что эта статья появилась совсем недавно (июль / 2010).

Проблемы, которые я видел, - это утечки памяти, случаи, когда Word / Excel не застревал в памяти, странные проблемы с реестром и т. Д.

Еще одна вещь, которую следует учитывать, - Microsoft не поддержит вас, если вы позвоните им по вопросам, связанным с Office в серверной среде.

Опять же, если у вас всего несколько пользователей, это может быть не так.изначально проблема для вас, но будьте готовы к масштабным проблемам.

0 голосов
/ 18 ноября 2010

Если вы не хотите устанавливать полный пакет Office, то можете просто установить основные сборки взаимодействия Microsoft Office?

http://msdn.microsoft.com/en-us/library/aa159923(office.11).aspx

0 голосов
/ 18 ноября 2010

Вы можете создавать хорошие офисные документы, не устанавливая офис на веб-сервере.Опции включают SpreadsheetML , компоненты из aspose.net и даже просто изменение расширения файла и типа содержимого в ответах html на сам дурак офис.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...