Quais são as diferenças materiais entre os novos Sites da Web do Azure e as Funções da Web tradicionais do Azure para um aplicativo ASP.NET MVC? Que motivo eu escolheria um "site" em vez de um "papel da web" ou vice-versa?
Vamos supor que eu precisaria de capacidade igual em ambos os casos (por exemplo, 2 pequenas instâncias). Os preços parecem comparáveis, exceto pelo fato de haver um desconto temporário de 33% nos sites enquanto eles estão no período de visualização.
Existem coisas que posso fazer com um "site" que são difíceis ou impossíveis com um papel na web? Por exemplo, torna-se fácil colocar vários sites em um único conjunto de VMs usando "sites"? Perco alguma coisa com um "site" versus um "papel da web"? Capacidade de ajustar o IIS? Capacidade de usar o serviço de cache localmente?
fonte
Respostas:
As Funções da Web oferecem vários recursos além dos Aplicativos da Web (anteriormente Sites da Web):
Os aplicativos da Web têm vantagens sobre as funções da web:
Com as implementações de abril e setembro de 2014, agora existem alguns recursos comuns aos aplicativos da Web e funções da Web (e funções de trabalho), incluindo:
Aqui está uma captura de tela que tirei do formulário de seleção da galeria de sites da Web:
Acho que os Web Apps são uma ótima maneira de começar a funcionar rapidamente, onde você pode passar de recursos compartilhados para recursos reservados. Depois de superar isso, você poderá passar para as Funções da Web e expandir conforme necessário.
fonte
EDIT 2014: Para o que vale a pena, muitas das informações nesta resposta não estão mais corretas - consulte os comentários.
Adicione mais à resposta do @David:
Com os sites do Windows Azure, você não tem controle sobre o IIS ou o servidor Web porque está usando uma fatia de recursos junto com centenas de outros sites na mesma máquina; compartilha recursos como qualquer outro, para que não haja controle sobre o IIS.
A grande diferença entre um site compartilhado e a função da web do Azure é que um site é considerado vinculado ao processo enquanto as funções são vinculadas à VM.
Os sites são armazenados em um compartilhamento de conteúdo acessível a partir de todos os "servidores da web" no farm, para que não haja replicação ou algo do tipo necessário.
Os sites do Windows Azure não podem ter seu próprio nome de host. Em vez disso, eles devem usar apenas o websitename .azurewebsites.net e você pode usar a configuração CNAME no provedor de DNS para rotear sua solicitação exatamente da mesma forma que a função anterior do Windows Azure, quando eles estão sendo executados no modo reservado . A configuração CNAME não é suportada para sites compartilhados.
fonte
Acabei de publicar um post abrangente sobre esse assunto em http://robdmoore.id.au/blog/2012/06/09/windows-azure-web-sites-vs-web-roles/ .
Um trecho da minha conclusão: se você precisar de enormes centros de dados SSL, asiáticos ou do oeste dos EUA, uma configuração não padrão (do IIS, portas, diagnósticos, certificados de segurança ou scripts de inicialização), RDP ou funções de trabalho econômicas ( combinado com sua função na Web), então você precisará seguir as funções na Web por enquanto.
Caso contrário, os sites da Web são uma ótima opção!
fonte
A Função Web do Azure é como um host virtual privado. Você obtém uma VM que atua como seu servidor da Web e é o proprietário dessa instância da VM.
Os Sites do Azure são como um serviço de hospedagem compartilhada elástico. Você implanta seu aplicativo em um servidor Web que não é controlado por você e que também serve servidores de sites de outros usuários. Você pode dimensionar seu site para cima e para baixo (a um custo extra) para torná-lo mais elástico conforme suas necessidades de recursos mudam.
fonte
Há mais um cenário no ar: depois que essas 500 exceções são eliminadas, eles não disseram nada sobre a capacidade dos Sites do Azure de manipular CNAME de caracteres curinga. Vários de nós estão usando o Acelerador de Função da Web do Nate nos Serviços em Nuvem, porque um hack de uma linha fornece recursos de subdomínio curinga no software do Nate. Não podemos mover esses aplicativos de subdomínio curinga até sabermos que os sites do Azure poderão lidar com eles. Se ele nunca for capaz de fazer isso, será considerado positivo no lado do papel na Web da equação. Também é importante notar que, com o preço sendo exatamente o mesmo (após o término do desconto de visualização), não tenho certeza se quero desistir do meu acesso ao RDC e ao Event Viewer (apenas para mencionar duas coisas).
fonte
Sites do Azurepermite que você crie sites altamente escalonáveis rapidamente no Azure. Você pode usar o Portal do Azure ou as ferramentas de linha de comando para configurar um site com idiomas populares como .NET, PHP, Node.js e Python. As estruturas suportadas já estão implantadas e não exigem mais etapas de instalação. A galeria de sites da Azure contém muitos aplicativos de terceiros, como Drupal e WordPress, além de estruturas de desenvolvimento como Django e CakePHP. Após criar um site, você pode migrar um site existente ou criar um site completamente novo. Os sites eliminam a necessidade de gerenciar o hardware físico e também oferecem várias opções de dimensionamento. Você pode passar de um modelo multilocatário compartilhado para um modo padrão em que máquinas dedicadas atendem ao tráfego de entrada. Os sites da Web também permitem a integração com outros serviços do Azure, como Banco de Dados SQL, Barramento de Serviço e Armazenamento. Usando a visualização do SDK do Azure WebJobs, você pode adicionar o processamento em segundo plano. Em resumo, os Sites do Azure facilitam o foco no desenvolvimento de aplicativos, oferecendo suporte a uma ampla variedade de idiomas, aplicativos de código aberto e metodologias de implantação (FTP, Git, Implantação da Web ou TFS). Se você não possui requisitos especializados que exigem serviços em nuvem ou máquinas virtuais, um site do Azure provavelmente é a melhor opção.
Serviços na nuvempermitem criar aplicativos da Web escaláveis e altamente disponíveis em um ambiente rico de plataforma como serviço (PaaS). Ao contrário dos Sites, um serviço de nuvem é criado primeiro em um ambiente de desenvolvimento, como o Visual Studio, antes de ser implantado no Azure. Estruturas, como PHP, exigem etapas ou tarefas de implantação personalizadas que instalam a estrutura na inicialização da função. A principal vantagem dos serviços em nuvem é a capacidade de suportar arquiteturas multicamadas mais complexas. Um único serviço de nuvem pode consistir em uma função da web de front-end e uma ou mais funções de trabalho. Cada camada pode ser dimensionada independentemente. Há também um nível aumentado de controle sobre sua infraestrutura de aplicativos da web. Por exemplo, você pode usar a área de trabalho remota nas máquinas que estão executando as instâncias de função.
Máquinas virtuaispermitem executar aplicativos da Web em máquinas virtuais no Azure. Esse recurso também é conhecido como IaaS (Infraestrutura como Serviço). Crie novas máquinas Windows Server ou Linux através do portal ou faça upload de uma imagem de máquina virtual existente. As máquinas virtuais oferecem a você o maior controle sobre o sistema operacional, a configuração e os softwares e serviços instalados. Essa é uma boa opção para migrar rapidamente aplicativos Web locais complexos para a nuvem, porque as máquinas podem ser movidas como um todo. Com redes virtuais, você também pode conectar essas máquinas virtuais a redes corporativas locais. Assim como nos serviços em nuvem, você tem acesso remoto a essas máquinas e a capacidade de executar alterações na configuração no nível administrativo. No entanto, ao contrário de Sites e Serviços em Nuvem, você deve gerenciar completamente as imagens da máquina virtual e a arquitetura do aplicativo no nível da infraestrutura. Um exemplo básico é que você deve aplicar seus próprios patches no sistema operacional.
Consulte a comparação atualizada e abrangente deste link: http://azure.microsoft.com/en-us/documentation/articles/choose-web-site-cloud-service-vm/
fonte
Sites, Trabalhadores da Web e Máquinas Virtuais do Azure são três abordagens de computação diferentes disponíveis no Windows Azure. Eles diferem no nível de controle e responsabilidades:
Não existe uma melhor opção, pois depende do nível de controle necessário, dos recursos necessários e do que você deseja manter para manter o material do Azure. E é um grande tópico ..
Consulte estes artigos para obter mais informações e fazer escolhas mais informadas:
Tudo se resume a uma troca entre facilidade de uso e recursos.
fonte
Mais duas coisas que achei foram o custo de obter SSL para um site de domínio personalizado e configurações de multilocatário.
Para o site, você precisa pagar mensalmente em cima da instância padrão (instância pequena é a opção mais barata). Isso significa que, para obter https de domínio personalizado, custaria ~ 70 / mês para instância pequena, mais ~ 41 / mês para SSL, compatível com todos os navegadores.
Para o WebRole, você pode obter a instância XS e adicionar seu próprio SSL gratuitamente, o que significa ~ $ 15 por mês e você tem um domínio personalizado com SSL.
Para sites com vários inquilinos, confira CName curinga dinâmica do Azure com vários inquilinos
fonte
Uma função da web é uma máquina virtual que hospeda vários sites
fonte
Essa é uma pergunta comum e eu gostaria de fornecer um trecho do msdn.
Acesso a serviços como armazenamento em cache, barramento de serviço, armazenamento, banco de dados do SQL Azure - Site: Sim WebRole: Sim
Suporte para ASP.NET, ASP clássico, Node.js, PHP - Site da Web: Sim WebRole: Sim
Conteúdo compartilhado e configuração - Site: Sim WebRole: Não
Implantar código com GIT, FTP - Site: Sim WebRole: Não
Implantação quase instantânea - Site da Web: Sim Função da Web: Não
Site da Web integrado de suporte ao MySQL como serviço: Sim WebRole: Sim
Vários ambientes de implantação (produção e armazenamento temporário) -WebSite: Não WebRole: Sim
Isolamento da rede-WebSite: Não WebRole: Sim
Acesso remoto da área de trabalho a servidores-Site da Web: Não Função da Web: Sim
Capacidade de executar programas com permissões elevadas-WebSite: Não WebRole: Sim
Capacidade de definir / executar tarefas de inicialização-WebSite: Não WebRole: Sim
Capacidade de usar estruturas ou bibliotecas não suportadas-WebSite: Não WebRole: Sim
Suporte para o Site de Rede do Windows Azure Connect / Web do Windows Azure: Não Função da Web: Sim
Para obter mais detalhes, visite este link: http://blogs.msdn.com/b/silverlining/archive/2012/06/27/windows-azure-websites-web-roles-and-vms-when-to -use-what.aspx
fonte