2009-02-08 1 views
3

На наших рабочих станциях работает 64-разрядная версия Vista, а производственные серверы для наших веб-приложений ASP.NET MVC - это 64-разрядные серверы Server 2008. Однако наш сервер сборки, на котором запущен TeamCity, является 32-разрядным сервером Server 2008. Мы будем брать эти сборки и развертывать их на 64-битных производственных серверах. Приложения написаны на C#. Должен ли я беспокоиться о выполнении сборок в 32-битной среде? Нужно ли обновлять наш сервер сборки?32-разрядный сервер сборки и 64-разрядный сервер производства для веб-приложений .NET

ответ

7

Технически, не должно быть никаких проблем, поскольку компилятор будет генерировать только код IL, который не зависит от платформы.

Приложение .NET будет работать в среде x64 CLR в рабочей среде. Во время выполнения JIT-компилятор будет генерировать x64-код.

+0

Спасибо. Я думал, что это так, но я хотел быть уверенным. –

+0

Даже если вы создаете зависящий от платформы код (от C или C++), можно разумно ожидать, что кросс-компилятор x64, работающий на x86, будет генерировать тот же код, что и родной компилятор x64. – bk1e

+0

Конечно! База кода компилятора, как правило, одинакова для всех платформ, скомпилированных для компиляции. –

-2

По моему опыту, скомпилирование приложения с 32-разрядной машиной и его развертывание в 64-разрядном режиме заставит приложение работать медленно. Тем не менее, для веб-приложений могут быть разные.