SAP R / 3 Archiarquitetura
โก Resumo Inteligente
SAP R / 3 ArchiA arquitetura ABAP รฉ um projeto cliente-servidor de trรชs camadas que separa as responsabilidades de apresentaรงรฃo, aplicaรงรฃo e banco de dados. Este artigo explica cada camada, o ABAP e... Java pilha de componentes, o processo de logon orientado pelo dispatcher e os motivos. SAP Escolhi este modelo em camadas.

SAP R / 3 ArchiA arquitetura รฉ a base de quase todos os clรกssicos. SAP Implantaรงรฃo de ERP. As seรงรตes abaixo explicam como as trรชs camadas interagem e como o ABAP e Java As pilhas dividem o trabalho entre o despachante, o servidor de mensagens e o banco de dados.
O que รฉ a SAP R/3?
SAP O R/3 รฉ um sistema empresarial cliente-servidor construรญdo sobre uma plataforma arquitetura de trรชs camadas consistindo em trรชs camadas independentes:
- Apresentaรงรฃo
- Aplicaรงรฃo
- banco de dados
- R รฉ um anagrama para Em tempo real processamento.
- 3 representa o De 3 camadas padrรฃo arquitetรดnico.
Computador do usuรกrio (interface do usuรกrio): Os usuรกrios acessam o SAP sistema atravรฉs de SAP Interface grรกfica do usuรกrio (GUI) ou navegador web. Apenas o cliente front-end รฉ instalado na mรกquina do usuรกrio; os servidores de aplicaรงรฃo e banco de dados sรฃo executados separadamente em hardware dedicado.
Servidores de aplicativos: Os servidores de aplicativos executam a lรณgica de negรณcios. A carga de trabalho รฉ distribuรญda entre vรกrios servidores de aplicativos, permitindo que os usuรกrios recebam respostas mais rapidamente sob alta demanda. Esses servidores geralmente sรฃo executados em infraestrutura remota, em vez de estaรงรตes de trabalho dos usuรกrios.
Servidor de banco de dados: O servidor de banco de dados armazena e recupera dados em resposta a SQL consultas geradas pelo ABAP e Java Aplicaรงรตes. Os serviรงos de banco de dados e de aplicativos podem ser executados na mesma mรกquina ou em hosts fรญsicos separados, dependendo das necessidades de capacidade.
Porque SAP O R/3 utiliza uma arquitetura de 3 camadas?
Separar a apresentaรงรฃo, a lรณgica de negรณcios e o armazenamento em trรชs camadas independentes proporciona SAP O R/3 apresenta quatro vantagens prรกticas em relaรงรฃo aos projetos de camada รบnica ou de duas camadas:
- Escalabilidade independente: Cada camada pode ser dimensionada separadamente. Um gargalo na lรณgica de negรณcios รฉ resolvido adicionando servidores de aplicativos sem alterar o hardware do banco de dados.
- Distribuiรงรฃo da carga de trabalho: O servidor de mensagens distribui a carga das sessรตes recebidas entre os servidores de aplicativos, evitando que um รบnico servidor se torne um ponto รบnico de congestionamento.
- Proteรงรฃo de banco de dados: Os usuรกrios finais nunca se conectam diretamente ao banco de dados. Todas as operaรงรตes de leitura e gravaรงรฃo passam pelos processos de trabalho do servidor de aplicativos, que padronizam as verificaรงรตes de autorizaรงรฃo, o bloqueio e o registro de transaรงรตes.
- Upgrade flexibilidade: O SAP A interface grรกfica do usuรกrio (GUI) pode evoluir (clientes para desktop, navegador ou dispositivos mรณveis via SAPUI5) sem alterar o cรณdigo do aplicativo ou do banco de dados.
Essa separaรงรฃo tambรฉm รฉ o que permite SAP para suportar mรบltiplos back-ends de banco de dados โ incluindo SAP HANA, Oracle, IBM Db2 e Microsoft SQL Server โ sob a mesma base de cรณdigo da aplicaรงรฃo.
SAP R/2 vs SAP R/3: Como o ArchiTextura Evoluรญda
SAP O R/2 era executado em um mainframe e utilizava uma arquitetura de duas camadas, na qual o terminal do usuรกrio se comunicava diretamente com o banco de dados. O R/3, lanรงado em 1992, inseriu uma camada de aplicaรงรฃo dedicada entre o cliente e o banco de dados. Os dois lado a lado:
| Aspecto | SAP R / 2 | SAP R / 3 |
|---|---|---|
| Plataforma | 2 camadas (mainframe + terminal) | 3 camadas (apresentaรงรฃo + aplicaรงรฃo + banco de dados) |
| Hardware | mainframe centralizado | Unix distribuรญdo / Windows Servidores Linux |
| Global | Somente vertical (mainframe maior) | Horizontal (adicionar servidores de aplicativos) |
| Acesso ao banco de dados | Diretamente da sessรฃo do usuรกrio | Mediado por processos de trabalho do servidor de aplicativos |
| Modelo de programaรงรฃo | Somente ABAP/4 | ABAP e Java lado a lado |
As seรงรตes restantes explicam detalhadamente cada uma das trรชs camadas do R/3.
Compreendendo diferentes SAP camadas
Figura 1: Os trรชs SAP Camadas R/3 e o trรกfego que flui entre elas.
Camada de apresentaรงรฃo
O Camada de apresentaรงรฃo contรฉm os componentes de software que compรตem o SAP GUI โ a interface grรกfica do sistema R/3. ร a interface entre o sistema e seus usuรกrios, fornecendo um layout intuitivo para entrada e exibiรงรฃo de dados.
Essa camada encaminha a entrada do usuรกrio para o servidor de aplicativos e renderiza os dados recebidos como resposta. SAP Enquanto a interface grรกfica do usuรกrio (GUI) estiver em execuรงรฃo, ela permanecerรก vinculada ร sessรฃo de terminal do usuรกrio no sistema R/3 durante toda a duraรงรฃo dessa sessรฃo.
Camada de aplicaรงรฃo
O Camada de aplicaรงรฃo consiste em um ou mais servidores de aplicativos e um servidor de mensagensCada servidor de aplicativos executa um conjunto de serviรงos que implementam a lรณgica de negรณcios do R/3. Em teoria, um รบnico servidor de aplicativos รฉ suficiente; na prรกtica, os serviรงos sรฃo distribuรญdos por vรกrios servidores para garantir capacidade e redundรขncia.
O servidor de mensagens coordena a comunicaรงรฃo entre servidores de aplicativos. Ele encaminha solicitaรงรตes, tracO sistema de gerenciamento de aplicaรงรตes KS agrupa os servidores e atribui um servidor apropriado quando um usuรกrio faz login, com base na carga atual. ร isso que torna possรญvel o escalonamento horizontal.
Camada de Banco de Dados
O Camada de Banco de Dados Abriga um sistema de banco de dados central que armazena todos os dados utilizados pelo sistema R/3. A pilha de banco de dados possui dois componentes: o sistema de gerenciamento de banco de dados (SGBD) e o prรณprio banco de dados. SAP envia seu prรณprio SGBD, SAP HANAe tambรฉm suporta todos os principais bancos de dados comerciais (Oracle, IBM Db2, Microsoft SQL Server).
Todos os dados do R/3 โ configuraรงรตes de personalizaรงรฃo, cรณdigo do aplicativo, definiรงรตes de tela, menus, mรณdulos de funรงรฃo e dados de tempo de execuรงรฃo โ residem neste banco de dados. O cรณdigo do programa e os objetos de design ficam em uma seรงรฃo especial chamada... Repositรณrio R/3Esses โobjetos de repositรณrioโ sรฃo o que o ABAP Workbench lรช, grava e transporta entre sistemas.
Compreender os componentes de SAP R/3 3 nรญveis Archiarquitetura
Figura 2: ABAP + Java Arquitetura do sistema mostrando como as duas camadas compartilham a infraestrutura.
Um moderno SAP Uma instรขncia do NetWeaver pode hospedar tanto ABAP quanto... Java Pilhas. Os componentes abaixo mostram como cada pilha lida com seu prรณprio despacho, compartilhando o gateway, o ICM e a ponte JCO para comunicaรงรฃo entre pilhas.
| Componente | CorMonitor | Tipo |
|---|---|---|
| Servidor de mensagens (ABAP) | ABAP | Coordena a comunicaรงรฃo entre despachantes distribuรญdos no Sistema ABAP e distribui a carga entre as instรขncias. |
| Fila do despachante | ABAP | Buffer que retรฉm as solicitaรงรตes recebidas atรฉ que um processo de trabalho fique livre. |
| Expedidor | ABAP | Retira solicitaรงรตes da fila e atribui cada uma ao tipo de processo de trabalho apropriado. |
| Processos de trabalho ABAP | ABAP | Executar etapas de diรกlogo em aplicaรงรตes R/3. Os tipos incluem Diรกlogo, Atualizaรงรฃo, Em Segundo Plano, Spool e Enfileirar. |
| Gateway | Partilhado | Permite a comunicaรงรฃo entre SAP sistemas e entre SAP e sistemas externos via RFC. |
| Tubos de memรณria | Partilhado | Transportar dados entre o Gerenciador de Comunicaรงรฃo da Internet (ICM) e os processos de trabalho ABAP. |
| Servidor de mensagens (Java) | Java | Coordenadas Java despachantes e processos de servidor; permite a comunicaรงรฃo dentro do Java cluster de tempo de execuรงรฃo. |
| Servidor de fila | Java | Gerencia bloqueios lรณgicos definidos por Java Cรณdigo de aplicaรงรฃo em execuรงรฃo dentro de um processo de servidor. |
| Serviรงos Centrais | Java | A especial Java Instรขncia de cluster que gerencia bloqueios e mensagens entre processos. Uma "instรขncia" รฉ um grupo de recursos (memรณria, processos de trabalho, etc.). |
| Java Expedidor | Java | Recebe solicitaรงรตes de clientes e as encaminha para Java processos do servidor. |
| SDM | Java | Gerenciador de Implantaรงรฃo de Software โ instala componentes J2EE no sistema. Java pilha. |
| Java Processos do servidor | Java | Processar um grande nรบmero de solicitaรงรตes simultaneamente usando multithreading. |
| ICM | Partilhado | Gerenciador de Comunicaรงรฃo da Internet โ habilita o trรกfego HTTP, HTTPS e SMTP para SAP Pode ser acessado atravรฉs de um navegador. |
| JCO | ponte | Java Conector โ gerencia a comunicaรงรฃo entre os Java O dispatcher e o dispatcher ABAP, quando ambas as pilhas sรฃo executadas lado a lado. |
Figura 3: Categorias de processos de trabalho ABAP (Diรกlogo, Atualizaรงรฃo, Segundo Plano, Spool, Enfileirar).
Como o SAP O processo de logon funciona?
Figura 4: Fluxo passo a passo do login de um usuรกrio atravรฉs do SAP Camadas de despacho e processos de trabalho do R/3.
Passo 1) O usuรกrio clica no SAP sistema de SAP GUI; a solicitaรงรฃo รฉ encaminhada para o expedidor.
Passo 2) A solicitaรงรฃo chega ao fila de solicitaรงรตesO despachante segue um primeiro a entrar, primeiro a sair regra e atribui a solicitaรงรฃo ao prรณximo processo de trabalho disponรญvel.
Passo 3) Um processo de trabalho do tipo apropriado รฉ atribuรญdo. Um usuรกrio que faz login recebe um processo de trabalho de Diรกlogo; um relatรณrio em segundo plano recebe um processo de trabalho de Segundo Plano; uma instruรงรฃo UPDATE รฉ encaminhada para um processo de trabalho de Atualizaรงรฃo. A aรงรฃo determina o tipo de processo de trabalho.
Passo 4) Assim que o processo de trabalho de Diรกlogo for atribuรญdo, as autorizaรงรตes e configuraรงรตes atuais do usuรกrio serรฃo atualizadas. rolou para a memรณria compartilhada, para que o processo de trabalho possa atuar sobre os dados do usuรกrio. Quando a etapa de diรกlogo termina, esses dados sรฃo desenrolou Para liberar a memรณria para o prรณximo usuรกrio. Uma "etapa de diรกlogo" รฉ a transiรงรฃo de uma tela para outra dentro de uma transaรงรฃo.
Passo 5) O processo de trabalho primeiro procura os dados solicitados no buffer. Encontrรก-los lรก รฉ chamado de busca. acertar e evita uma consulta completa ao banco de dados, melhorando o tempo de resposta. Nรฃo encontrรก-lo aciona um perder e uma leitura de banco de dados. Uma alta taxa de acertos em relaรงรฃo a erros รฉ o maior fator que contribui para SAP desempenho.
Passo 6) Os dados restantes sรฃo consultados no banco de dados e o resultado combinado รฉ enviado de volta para o sistema. SAP Interface grรกfica do usuรกrio (GUI) atravรฉs do despachante.
Passo 7) Os dados da sessรฃo do usuรกrio sรฃo removidos da memรณria compartilhada em um processo final. roll-out, liberando a รกrea de memรณria para a prรณxima solicitaรงรฃo.
O mesmo ciclo de despachante โ fila โ processo de trabalho โ buffer โ distribuiรงรฃo se repete para cada interaรงรฃo do usuรกrio, independentemente de a solicitaรงรฃo se originar de SAP GUI, um navegador via ICM ou um sistema externo atravรฉs do gateway.





