É ok apenas copiar arquivos DLL necessários para um servidor em vez de instalar dependências?

3

Eu implantei o aplicativo ASP NET MVC 3 no servidor (win2008 / iis7.5). De alguma forma eu decidi não instalar o pacote MVC 3 e devexpress (necessário para o aplicativo). Em vez disso, copiei dlls de mvc e devexpress da minha máquina de desenvolvedor para a pasta bin do aplicativo implementado. Tudo funciona bem. Embora possa haver algumas complicações na manutenção no futuro, gostaria de saber se essa abordagem é aceitável e influencia o desempenho?

    
por Den 02.04.2014 / 07:37

3 respostas

2

Desculpe, não concordo com o meu pôster anterior. Aplicações Web precisam poder ser instaladas em vários ambientes, isso pode ser seu próprio servidor, ou pode ser um webhoster.

Em um Webhoster, por exemplo, você não tem acesso para "instalar" essas ferramentas corretamente, portanto, é perfeitamente adequado implantar esses assemblies na pasta bin.

Por favor, encontre algumas informações específicas para MVC3 e DevExpress aqui:

Implantação do MVC no SO
Implementação do DevExpress a partir do DX

Quanto ao DevExpress, ele ainda é contra o EULA:

When you deploy a web project that uses web controls provided by DevExpress, you should copy the corresponding assembly files that implement the functionality you use onto a target machine (server). Note that you cannot use our installation for this purpose, since it includes Design libraries that cannot be distributed according to the terms of our EULA. Thus you need to manually deploy the necessary assembly files onto the target server.

    
por 02.04.2014 / 14:54
2

Instale as coisas corretamente!

Pessoas fazendo coisas assim é a razão pela qual eu tenho alguns servidores antigos que não podem ser reconstruídos, não posso ser migrado para outro servidor, não posso fazer nada além de rezar para que nunca quebre. Se você instalá-lo corretamente, eu posso olhar em adicionar / remover programas e ver: "Oh, ele precisa de X e Y instalado". Se você copiar aleatoriamente arquivos DLL, não posso fazer isso.

Ele também pode quebrar as atualizações de segurança, já que o Windows não sabe o que está instalado.

Basicamente, fazer isso transforma o servidor em um completo pesadelo para manter. Use os arquivos de instalação apropriados e crie programas de instalação para seus programas também.

    
por 02.04.2014 / 08:03
2

Como administrador de sistemas, que precisa lidar com problemas de manutenção e de ciclo de vida, eu diria que não, isso não é aceitável, já que, como você nota, pode haver complicações ...

As ferramentas de desenvolvimento do Windows têm ferramentas de empacotamento, não? Eu não entendo porque você não os usaria.

Quanto ao desempenho, você terá que testar isso sozinho.

    
por 02.04.2014 / 07:52