As aplicações comunicam com a base de dados através do serviço web IIS numa porta a definir, por exemplo, portas 8080 ou 8081.
O serviço web de cada uma das aplicações comunica com a sua respetiva base de dados através das classes de acesso a dados. A string de conexão para a base de dados deve ser definida no ficheiro "web.config" de cada um dos serviços Web.
Nota: na figura é demonstrada uma clara separação de camadas: dados, serviços, cliente / front-end.
Com esta sugestão, pretende-se apenas demostrar a possibilidade de separar todas as camadas do sistema, sendo também possível a instalação das múltiplas camadas no mesmo computador. Exemplo: servidor com SQL Server e IIS.
Dentro dos tipos de implementação demonstrados existem duas possibilidades típicas, com as suas vantagens e desvantagens.
2.1 Servidor – Cliente (Posto de trabalho)
A instalação da base de dados e serviço Web é feita num computador (servidor) sem a necessidade de grandes requisitos técnicos ao nível do servidor, uma vez que estes são leves e causam pouco impacto noutros recursos.
Instalação de aplicações cliente (Windows Forms) em vários computadores: o computador do posto de trabalho que irá fazer a geração de horários deverá ter capacidades significativas, não só a nível de RAM, CPU, mas também da qualidade da ligação do posto de trabalho ao servidor.
Em caso de atualização de versões, a Bullet Solutions tem acesso ao servidor ou requer aos Serviços de Informática para conduzir o processo de atualização (simplesmente substituir ficheiros e executar scripts na base de dados).
Vantagens:
O processamento é distribuído por vários computadores (clientes) e não sobrecarga o servidor, não havendo por isso a necessidade de alocar um servidor com grandes capacidades de computação.
Melhor experiência de utilização quando software é controlado diretamente a partir de uma aplicação Windows (ao invés de ser utilizada dentro de outras janelas – ver ponto 2.2).
Desvantagens:
instalação (1ª vez) em vários computadores; computadores (cliente) precisam de ter um bom poder de processamento e RAM elevada para a geração dos horários;
Necessidade de uma boa ligação de rede dos postos de trabalho ao servidor (tanto upload como download), uma vez que a quantidade de dados que é transferida entre cliente e servidor é considerável.
2.2 Virtualização e Windows Remote Desktop (RDP) / Acesso Remoto
Instalar todas as camadas no mesmo servidor virtual dedicado exclusivamente a este processo. Todos os utilizadores (e a Bullet Solutions) tem acesso remoto à aplicação por RDP – Windows Remote Desktop (ambiente de trabalho remoto), são lançadas várias instâncias a partir da mesma aplicação.
Requisitos mínimos: 8GB RAM.
Vantagens:
Processo mais rápido de instalação (1ª vez); todo o sistema num único computador dedicado; atualizações mais rápidas e sem entropia;
Não há necessidade de assegurar uma boa ligação de rede dos postos de trabalho ao servidor, uma vez que a troca de dados entre aplicação e base de dados é feita localmente, no servidor.
Desvantagens:
Sobrecarga de computador com vários clientes e necessária licença Microsoft “Terminal Services” para que vários utilizadores possam aceder simultaneamente à aplicação;
Experiência de utilização / trabalho por RDP pode não ser muito confortável do ponto de vista do utilizador, uma vez que está a trabalhar numa janela, dentro de uma janela, sem possibilidade de facilmente transitar entre a aplicação e outras aplicações no seu computador (Excel, Internet, etc.). Provável necessidade de utilização de dois monitores.