Vídeo: Curso Spring Boot aula 03: Criando e configurando um banco de dados MySQL 2024
O Oracle 12c percebe que m aplicações de camada superior são o padrão atual da indústria e compor múltiplas web, aplicativos e banco de dados Servidores que fornecem conteúdo para thin clients com apresentação através de um navegador web. Já se perguntou o que está por trás dos bastidores quando você faz logon em um aplicativo da web para compras on-line ou bancário?
O nível do cliente é meramente um navegador da Web acessando um servidor web. Mostrar o conteúdo para o usuário é o principal objetivo do cliente nesta arquitetura; nenhum processamento real ocorre nesta camada dentro do navegador. A apresentação ocorre com mais frequência através do HTML (HyperText Markup Language), mas também pode ser dentro de um applet Java ou um componente ActiveX e usar JavaScript para formatação e conteúdo mais dinâmico.
A comunicação do navegador para o servidor web ocorre via HTTP (HyperText Transfer Protocol) ou HTTPS para dados seguros (criptografados). Os servidores da Web funcionam de forma conceitual como ouvintes da Web; eles recebem pedidos de navegadores e retornam conjuntos de resultados formatados com pouco processamento por conta própria. Uma vez no servidor web, o pedido do navegador é analisado e enviado ao servidor de aplicativos apropriado para processamento.
O componente do servidor de aplicativos pode estar no mesmo servidor físico que o servidor da Web, ou pode estar em outro servidor físico. De longe, o servidor web mais comum é o Apache, ou um de seus derivados comerciais, com mais de 50% da participação de mercado de acordo com a Netcraft.
No nível do servidor da aplicação, a solicitação do usuário é processada usando a lógica do aplicativo relevante. Um método muito comum é usar um servidor de aplicativos Java, como Tomcat, Orion ou Glassfish. Nesse caso, a lógica do programa é executada dentro de uma Máquina Java Virtual (JVM), que atua como o ambiente de tempo de execução para o código do programa.
Outra ferramenta popular é o Oracle Fusion Middleware (OFM). Dentro do OFM, o programa pode ser executado como Oracle Forms, Reports, Discoverer ou mesmo Java via Oracle Containers para J2EE (OC4J). Independentemente do produto, é dentro do componente do servidor de aplicativos que a lógica do aplicativo é executada.
Durante o processamento no servidor do aplicativo, é comum ter acesso ao banco de dados para consultar, criar, atualizar ou excluir dados. O servidor do aplicativo se comunica com o servidor do banco de dados através de protocolos, como JDBC ou Oracle Net, para acessar os dados. Durante esse período, o servidor de aplicativos está acessando o banco de dados em nome do usuário que faz o pedido do aplicativo.
Em vez de se conectar como um usuário distinto nomeado, como JSMITH, o servidor de aplicativos se conecta usando uma conta web genérica (como WEB_USER). Várias conexões simultâneas do servidor de aplicativos para o banco de dados formam um pool de conexão que permite que qualquer conexão de banco de dados acesse dados para uma solicitação. O pool de conexão é um benefício de desempenho porque apenas algumas conexões de banco de dados podem atender milhares de pedidos em nome de muitos usuários.
Quando logado na instância do banco de dados, o usuário genérico consulta ou executa o DML em nome do servidor de aplicativos, que está processando uma solicitação de usuário real. O usuário da rede compartilhada não possui propriedade do esquema no banco de dados; tem apenas as permissões necessárias para acessar ou atualizar dados em nome do servidor de aplicativos.
Durante esse período, as funções, permissões e concessões de banco de dados normais são usadas. Além disso, a lógica do programa de banco de dados implementada em PL / SQL via procedimentos, funções e pacotes geralmente é executada.
Depois que o conjunto de resultados de dados é gerado na camada de banco de dados, ele é passado para o servidor de aplicativos para mais processamento. Em seguida, os resultados são retransmitidos através do servidor web e em toda a rede para apresentação ao usuário através do navegador da Web.
Parece complicado com todos os vários componentes? Você pode pensar primeiro no início, mas existem bons motivos para quebrar o sistema em componentes da Web, de aplicativos e de banco de dados:
-
Você pode usar componentes de diferentes fornecedores em uma configuração de "melhor raça". Por exemplo, você pode usar uma instância de servidor web Apache gratuita, juntamente com o Tomcat ou o Glassfish para um componente de servidor de aplicativos barato. Em seguida, atribua isso ao poder do banco de dados Oracle, e você possui um sistema sólido a custos mais baixos!
-
À medida que mais usuários acessam on-line, você pode adicionar mais instâncias de web, aplicativo ou servidor de banco de dados para aumentar seu poder de processamento. Em vez de comprar servidores maiores, basta comprar servidores menores.
-
Depois de ter uma série de servidores múltiplos, você ganha tolerância a falhas. Isso é chamado de clustering. Se um servidor da Web falhar ou o servidor do aplicativo precisa de manutenção, nenhum problema - os servidores redundantes vão pegar a carga de trabalho.
Espero que esses benefícios mostrem porque as arquiteturas de sistemas de várias camadas são o padrão da indústria e superaram os sistemas cliente-servidor.