☕ Um Café no Bellacosa Mainframe
Gostou do conteúdo? Ajude a manter o café quente, o COBOL compilando e o mainframe acordado. 😄
☕ Pague um café ao Bellacosa

Translate

Mostrar mensagens com a etiqueta FOR. Mostrar todas as mensagens
Mostrar mensagens com a etiqueta FOR. Mostrar todas as mensagens

segunda-feira, 27 de maio de 2024

Resiliência IBM Z – O Coração das Aplicações Resilientes: Como CICS, Db2, MQ e IMS - Parte V

 

Bellacosa Mainframe e a resiliencia ibm z parte v

☕ Um Café no Bellacosa Mainframe

O Holocron da Resiliência IBM Z

Parte V – O Coração das Aplicações Resilientes: Como CICS, Db2, MQ e IMS Mantêm Milhões de Transações Sempre Disponíveis

"Hardware poderoso impressiona. Mas são as aplicações que entregam valor ao negócio. O verdadeiro desafio é garantir que elas continuem funcionando mesmo quando tudo ao redor muda."

Até aqui nossa jornada mostrou que a Resiliência no IBM Z não depende apenas de computadores robustos.

Conhecemos conceitos como RAS, SLA e Disaster Recovery.

Descobrimos como o hardware foi projetado para detectar falhas antes mesmo que elas aconteçam.

Vimos como o Parallel Sysplex permite que vários mainframes trabalhem como um único sistema.

Também aprendemos que o armazenamento IBM Z é inteligente, automatizado e capaz de crescer sem interromper o negócio.

Mas falta responder uma pergunta.

Quem realmente atende o cliente?

Quem responde uma consulta bancária?

Quem realiza uma transferência PIX?

Quem grava um pagamento?

Quem consulta uma apólice de seguro?

Quem processa uma compra no cartão de crédito?

A resposta está no conjunto de tecnologias conhecido como middleware.

São elas que transformam toda aquela infraestrutura invisível em serviços utilizados diariamente por milhões de pessoas.

Os conceitos desta parte abrangem IBM MQ, IBM Db2 for z/OS, CICS, CICS Transaction Server (CICS TS), z/OS Workload Manager Health API, Automatic Restart Manager (ARM), CICSplex, TOR, AOR, DOR, FOR, IMS, IMS DB, Transaction Manager, HALDB, Fast Database Recovery (FDBR) e IMS Database Recovery Control (DBRC). Esses componentes aparecem na seção final do glossário IBM Z Resiliency.


O Que é Middleware?

Imagine uma cidade.

Existe energia elétrica.

Existe abastecimento de água.

Existe internet.

Existe transporte.

Tudo isso representa a infraestrutura.

Mas quem realmente atende o cidadão?

Os hospitais.

Os bancos.

Os supermercados.

As escolas.

No IBM Z acontece exatamente a mesma coisa.

Hardware, Storage e Sysplex representam a infraestrutura.

CICS, Db2, MQ e IMS representam os serviços utilizados pelo negócio.

É ali que mora a aplicação COBOL.


CICS – O Grande Atendente do Mainframe

Poucas tecnologias marcaram tanto a história da computação quanto o Customer Information Control System, mais conhecido como CICS.

Imagine uma agência bancária.

Cada cliente chega ao caixa.

Faz uma solicitação.

Recebe uma resposta.

Sai.

O próximo cliente é atendido.

O CICS faz exatamente isso.

Milhares de usuários enviam requisições simultaneamente.

O CICS organiza tudo.

Distribui recursos.

Executa programas COBOL.

Gerencia transações.

Controla segurança.

Coordena acesso aos dados.

Sem ele, grande parte das aplicações online simplesmente não existiria.


CICS Transaction Server

O CICS TS representa a evolução moderna do CICS.

Hoje ele suporta:

  • APIs REST;

  • JSON;

  • Web Services;

  • Java;

  • Eventos;

  • Integração com Cloud;

  • Containers e Channels;

  • Threadsafe;

  • OpenTelemetry;

  • Segurança moderna.

Muita gente imagina que o CICS ficou preso aos terminais verdes.

Na realidade ele conversa diariamente com aplicativos Android, iPhones, internet banking, caixas eletrônicos e sistemas distribuídos.

O COBOL continua executando.

A tecnologia ao redor evoluiu.


Db2 for z/OS – O Guardião dos Dados

Toda empresa possui seu patrimônio.

No banco...

São as contas.

Na seguradora...

São as apólices.

Na companhia aérea...

São as reservas.

Quem protege essas informações?

O Db2.

Ele garante:

  • consistência;

  • concorrência;

  • recuperação;

  • integridade;

  • desempenho.

Quando dois milhões de pessoas consultam saldo simultaneamente, o Db2 coordena milhares de operações concorrentes sem comprometer a integridade dos dados.


IBM MQ – O Carteiro que Nunca Dorme

Imagine uma empresa gigantesca.

Nem todos os departamentos trabalham no mesmo horário.

Mesmo assim as mensagens precisam chegar.

O IBM MQ resolve exatamente esse problema.

Ele entrega mensagens com segurança.

Mesmo que o destinatário esteja temporariamente indisponível.

Isso desacopla aplicações.

Aumenta a disponibilidade.

Facilita integrações.

É por isso que tantas arquiteturas modernas utilizam filas.


Quando Tudo Acontece ao Mesmo Tempo

Imagine um PIX.

Em poucos segundos acontecem dezenas de operações.

O aplicativo envia a solicitação.

O CICS recebe a transação.

O COBOL valida regras de negócio.

O Db2 consulta contas.

O MQ envia notificações.

Outro sistema recebe a mensagem.

Tudo precisa acontecer praticamente em tempo real.

Se qualquer componente falhar...

Toda a experiência do cliente será afetada.

É por isso que a Resiliência é tão importante.


CICSplex – Um CICS Nunca Vem Sozinho

Assim como existe o Parallel Sysplex...

Também existe o CICSplex.

Ele reúne diversos ambientes CICS trabalhando em conjunto.

Para o usuário...

Existe apenas um sistema.

Na realidade podem existir dezenas de regiões distribuindo carga automaticamente.


TOR – Terminal Owning Region

Imagine a recepção de um grande hospital.

Ela recebe os pacientes.

Mas não realiza cirurgias.

O TOR funciona assim.

Ele recebe as conexões dos usuários.

Depois encaminha cada solicitação para outra região responsável pelo processamento.


AOR – Application Owning Region

Agora chegamos ao verdadeiro coração da aplicação.

É na AOR que executam os programas COBOL.

Toda lógica de negócio vive aqui.

Quanto mais regiões AOR existirem...

Maior poderá ser a capacidade de processamento.


FOR – File Owning Region

Algumas aplicações acessam milhares de arquivos VSAM.

Em vez de cada região abrir esses arquivos individualmente...

Existe a FOR.

Ela centraliza esse acesso.

Reduz conflitos.

Melhora desempenho.

Simplifica administração.


DOR – Data Owning Region

A DOR segue filosofia semelhante.

Ela concentra determinados recursos de dados compartilhados entre diversas aplicações.

Essa separação facilita manutenção e escalabilidade.


WLM Health API

Lembra do Workload Manager?

Agora imagine que o próprio middleware possa informar ao WLM seu estado de saúde.

É exatamente essa a função da Health API.

O WLM deixa de observar apenas consumo de CPU.

Ele passa a considerar também a qualidade do serviço entregue pelas aplicações.


Automatic Restart Manager

Na Parte III conhecemos o ARM.

Agora podemos entender seu impacto real.

Se uma região CICS terminar inesperadamente...

O ARM pode reiniciá-la automaticamente.

Sem operadores.

Sem intervenção humana.

Sem perda significativa de disponibilidade.


IMS – O Veterano Que Continua Jovem

Muito antes da internet existir...

O IMS já processava milhões de transações.

Hoje continua fazendo exatamente isso.

O Information Management System permanece como um dos ambientes transacionais mais rápidos do mundo.

Muitas aplicações financeiras ainda dependem dele diariamente.


IMS DB

O banco de dados IMS possui características próprias.

Sua organização hierárquica oferece desempenho extremamente elevado para determinadas cargas de trabalho.

Quando corretamente modelado, consegue responder consultas com velocidade impressionante.


Transaction Manager

O IMS TM coordena o processamento online.

Recebe requisições.

Controla filas.

Executa programas.

Gerencia recuperação.

Mantém a integridade das transações.

É o equivalente, dentro do universo IMS, ao papel desempenhado pelo CICS em inúmeras aplicações.


HALDB – Crescendo Sem Limites

Com o passar dos anos, algumas bases IMS tornaram-se gigantescas.

O High Availability Large Database foi criado para resolver esse desafio.

Ele divide grandes bancos de dados em partições.

Assim é possível:

  • aumentar capacidade;

  • reduzir tempo de manutenção;

  • melhorar disponibilidade;

  • facilitar reorganizações.

Tudo isso mantendo o sistema online.


Fast Database Recovery

Imagine um acidente.

Quanto mais rápido a recuperação...

Menor o impacto.

O FDBR acelera a recuperação das bases IMS após falhas.

Isso reduz significativamente o RTO.


IMS Database Recovery Control

Toda recuperação precisa ser coordenada.

O DBRC registra informações fundamentais sobre backups, logs e processos de recuperação.

Ele garante que as bases sejam restauradas corretamente.

Sem perda de consistência.


O Que um Programador COBOL Deve Aprender?

Muitos iniciantes acreditam que basta dominar a linguagem COBOL.

Na prática...

O código representa apenas uma parte da aplicação.

Um profissional IBM Z moderno precisa compreender:

  • como o CICS gerencia transações;

  • como o Db2 protege dados;

  • como o MQ integra sistemas;

  • como o IMS processa grandes volumes;

  • como a infraestrutura garante disponibilidade.

Quanto maior essa visão...

Maior será sua capacidade de construir aplicações resilientes.


O Legado do IBM Z

Existe um motivo pelo qual bancos processam bilhões de transações utilizando tecnologias criadas há décadas.

Elas nunca pararam de evoluir.

O CICS conversa com APIs REST.

O Db2 trabalha com analytics e inteligência artificial.

O MQ conecta aplicações distribuídas.

O IMS continua ampliando desempenho e disponibilidade.

Nada permaneceu parado no tempo.

O legado do IBM Z não é tecnologia antiga.

É tecnologia que amadureceu continuamente sem abandonar aquilo que sempre fez melhor: processar transações críticas com confiabilidade, desempenho e resiliência.

No próximo capítulo do Holocron da Resiliência IBM Z, concluiremos nossa jornada explorando IBM Copy Services Manager (CSM), Metro Mirror, Global Mirror, XRC, Zero Data Loss (ZDL), Coupling Data Sets (CDS), Business Continuity Plan (BCP) e as estratégias que permitem proteger informações mesmo diante de desastres de grande escala, fechando o ciclo completo da Resiliência no IBM Z.


terça-feira, 10 de abril de 2018

O Mistério das Regiões Invisíveis : Como o MRO Transformou o CICS em uma Cidade Secreta Onde Cada Região Guarda um Segredo

 

Bellacosa Mainframe e o misterio das regioes invisiveis

☕ Um Café no Bellacosa Mainframe

O Mistério das Regiões Invisíveis

Como o MRO Transformou o CICS em uma Cidade Secreta Onde Cada Região Guarda um Segredo

"Naquela manhã, o operador jurava que a transação havia desaparecido. O terminal permaneceu em silêncio por menos de um segundo. Quando a resposta voltou, parecia mágica. Mas não era magia. Era engenharia. E como todo bom mistério, existiam corredores invisíveis, mensageiros silenciosos e guardiões que ninguém via..."


Prólogo — O Caso do Banco que Nunca Dormia

Imagine entrar em uma agência bancária às oito horas da manhã.

Ao mesmo tempo em que você consulta seu saldo:

  • milhares de pessoas pagam boletos;

  • empresas enviam folhas de pagamento;

  • cartões são autorizados;

  • caixas eletrônicos distribuem dinheiro;

  • aplicativos móveis fazem PIX;

  • APIs atendem fintechs;

  • internet banking consulta investimentos.

Tudo isso acontece em menos de um segundo.

Quem faz esse milagre?

Muitos responderiam:

"O CICS."

Mas essa resposta está incompleta.

A verdadeira resposta é muito mais interessante.

O CICS não trabalha sozinho.

Ele coordena uma pequena cidade.

Uma cidade composta por especialistas.

Cada edifício possui uma função.

Cada habitante conhece exatamente seu trabalho.

E todos se comunicam através de túneis invisíveis.

Esse sistema secreto atende por um nome:

MRO — Multi-Region Operation.

Hoje vamos abrir a porta desse mundo escondido.

Pegue seu café.

A investigação começou.


Capítulo 1 — Quando Um Único CICS Não Era Mais Suficiente

No início da computação corporativa era comum existir apenas uma única região CICS.

Ela fazia tudo.

Recebia usuários.

Executava COBOL.

Acessava VSAM.

Conversava com DB2.

Controlava impressoras.

Respondia terminais.

Era uma verdadeira central de operações.

Visualmente:

Usuários
     │
     ▼
+----------------+
|    CICS        |
| Tudo acontece  |
| aqui           |
+----------------+
     │
     ▼
Arquivos / DB2

Parecia perfeito.

Até que chegaram milhões de usuários.

Foi como transformar uma pequena delegacia em uma capital inteira.

A fila aumentou.

A CPU começou a sofrer.

Os tempos de resposta cresceram.

E surgiu uma pergunta:

"E se dividíssemos as responsabilidades?"

Essa simples ideia mudaria a história do CICS.


Capítulo 2 — O Nascimento da Cidade Secreta

A IBM percebeu algo extremamente elegante.

Nem todo mundo precisava fazer tudo.

Assim como uma cidade possui:

  • prefeitura;

  • hospital;

  • biblioteca;

  • fórum;

  • correios;

o CICS também poderia criar especialistas.

Nascia o conceito de Multi-Region Operation.

Agora existiam regiões especializadas.

Cada uma extremamente eficiente.

Não era mais um prédio gigantesco.

Era uma metrópole inteira.


Capítulo 3 — Conheça os Três Grandes Personagens

Se o MRO fosse um filme noir dos anos 1950, existiriam três protagonistas.

TOR

O Porteiro.

O Concierge.

O Recepcionista.

Nunca resolve o problema.

Mas sabe exatamente para quem enviar.

Ele recebe o visitante e pergunta:

"Em que posso ajudar?"

Depois encaminha a pessoa ao especialista correto.

Jamais executa o trabalho pesado.

Sua missão é apenas direcionar.


AOR

O Detetive.

Aqui mora o cérebro.

É onde vivem os programas COBOL.

Onde estão:

  • EXEC CICS

  • EXEC SQL

  • CALL

  • LINK

  • XCTL

É nessa região que a lógica de negócio acontece.

Quando alguém consulta saldo...

Quem calcula?

O AOR.

Quem faz validações?

O AOR.

Quem chama programas?

O AOR.

Ele é o verdadeiro investigador do caso.


FOR

O Arquivista.

Imagine um enorme cofre.

Centenas de estantes.

Milhões de documentos.

O FOR é responsável por guardar tudo.

VSAM.

KSDS.

RRDS.

ESDS.

Nada entra.

Nada sai.

Sem passar por ele.


Capítulo 4 — Os Túneis Invisíveis

Agora surge a pergunta.

Como essas regiões conversam?

Resposta:

IRC — Interregion Communication.

O IRC é o correio secreto da cidade.

Imagine túneis subterrâneos ligando todos os prédios.

As pessoas caminham por eles sem serem vistas.

No CICS acontece exatamente isso.

TOR
 │
 │ IRC
 ▼
AOR
 │
 │ IRC
 ▼
FOR

O usuário nunca percebe.

Para ele existe apenas uma resposta.

Mas internamente houve uma verdadeira viagem.


Capítulo 5 — A Jornada de uma Consulta de Saldo

Vamos acompanhar uma única transação.

Você abre o aplicativo do banco.

Digita sua senha.

Pressiona:

Consultar Saldo

O que acontece?

Passo 1

O pedido chega ao TOR.

O TOR olha a fila.

Existem oito AOR disponíveis.

Qual está mais livre?

Escolhe uma.


Passo 2

Via MRO.

O pedido atravessa o IRC.

Chega ao AOR.


Passo 3

O programa COBOL inicia.

Ele verifica:

  • agência;

  • conta;

  • autenticação;

  • permissões.


Passo 4

Agora precisa acessar o cadastro.

Quem possui os arquivos?

O FOR.

Nova viagem.


Passo 5

O FOR abre o VSAM.

Localiza o cliente.

Retorna:

Saldo:

R$ 8.435,91


Passo 6

O COBOL monta a tela.


Passo 7

O TOR devolve a resposta.

Tudo isso pode ocorrer em poucos milissegundos.

Parece magia.

Mas é apenas uma arquitetura brilhantemente organizada.


Capítulo 6 — O Grande Segredo da Escalabilidade

Imagine uma loja.

Existem apenas dois caixas.

Forma-se fila.

O gerente faz o quê?

Contrata mais caixas.

O mesmo ocorre com o CICS.

Hoje:

TOR

↓

AOR1
AOR2

Amanhã:

TOR

↓

AOR1
AOR2
AOR3
AOR4
AOR5

Nenhuma linha do COBOL precisou mudar.

Esse é um dos maiores poderes do MRO.

Escalar sem reescrever aplicações.

Décadas antes da computação em nuvem.


Capítulo 7 — Alta Disponibilidade

Imagine um AOR travando.

Antigamente...

Tudo parava.

Hoje:

TOR

↓

AOR1

AOR2

AOR3 (OFF)

AOR4

AOR5

As novas transações seguem para as demais regiões.

O cliente sequer percebe.

Essa capacidade é um dos motivos pelos quais bancos conseguem funcionar praticamente vinte e quatro horas por dia.


Capítulo 8 — MRO Não é ISC

Essa confusão aparece em praticamente toda entrevista técnica.

Vamos resolver isso de uma vez.

MRO

Mesmo z/OS.

Mesmo computador.

Mesma LPAR.

Regiões diferentes.


ISC

Outro computador.

Outra LPAR.

Outro ambiente.

Outra máquina.

Em outras palavras:

MRO trabalha "dentro da cidade".

ISC comunica cidades diferentes.

Uma excelente forma de memorizar.


Capítulo 9 — O CICS Antecipou os Microsserviços?

Curiosamente...

Muito antes da palavra "microsserviços" existir...

O CICS já fazia algo parecido.

Observe.

Cada região possui uma responsabilidade.

TOR:

Entrada.

AOR:

Processamento.

FOR:

Persistência.

Separação.

Especialização.

Baixo acoplamento.

Balanceamento.

Escalabilidade.

Isso soa familiar?

Sim.

Muitas ideias atribuídas às arquiteturas modernas já estavam presentes no mundo mainframe há décadas, embora implementadas de maneira diferente e com objetivos próprios.


Capítulo 10 — Como um Programador COBOL Deve Pensar

Um erro comum do iniciante é imaginar:

"Meu programa roda no CICS."

Na verdade...

Seu programa normalmente roda:

No AOR.

Quem recebeu o usuário foi outro.

Quem abriu o VSAM foi outro.

Quem fez o roteamento foi outro.

Seu COBOL é apenas uma peça da investigação.

Quanto antes compreender isso...

Mais fácil será entender:

  • performance;

  • dumps;

  • rastreamento;

  • problemas de produção;

  • roteamento.


Capítulo 11 — Onde Entram os Comandos EXEC CICS?

Quando o COBOL executa:

EXEC CICS READ FILE('CLIENTE')
END-EXEC.

Você imagina:

"CICS abriu o arquivo."

Na realidade, dependendo da arquitetura, a solicitação pode viajar:

Programa COBOL

AOR

MRO

FOR

VSAM

FOR

AOR

Programa COBOL

Essa viagem inteira acontece antes da próxima instrução COBOL ser executada.

É por isso que compreender arquitetura é tão importante quanto aprender sintaxe.


Capítulo 12 — Dicas de Ouro para Quem Está Começando

✔ Não memorize apenas siglas. Entenda a responsabilidade de cada região.

✔ Sempre desenhe o fluxo de uma transação antes de estudar comandos.

✔ Aprenda primeiro TOR, depois AOR, depois FOR e só então MRO.

✔ Quando estudar desempenho, pergunte sempre: "Em qual região estou?"

✔ Ao analisar um problema de produção, descubra primeiro onde a transação foi roteada.

✔ Entender MRO ajuda a interpretar logs, SMF, rastreamentos e ferramentas de monitoramento com muito mais clareza.


Curiosidades do CPD

☕ Alguns ambientes bancários possuem dezenas de AORs trabalhando simultaneamente.

☕ O usuário nunca sabe por qual região passou.

☕ Uma mesma transação pode ser atendida por AORs diferentes ao longo do dia.

☕ Em ambientes grandes, o número de regiões CICS pode ultrapassar uma centena, cada uma com funções específicas.

☕ Muitas arquiteturas modernas de alta disponibilidade adotam princípios semelhantes aos usados pelo CICS desde os anos 1980.


Easter Eggs do Bellacosa Mainframe 🕵️

🔎 Easter Egg #1 — O Porteiro Invisível

Assim como Alfred organizava discretamente a Mansão Wayne enquanto Batman enfrentava os vilões, o TOR raramente recebe os holofotes. Ele apenas garante que cada visitante encontre o caminho certo.


🔎 Easter Egg #2 — A Cidade Subterrânea

Os túneis do IRC lembram passagens secretas de romances policiais clássicos. O cidadão comum nunca os vê, mas toda a cidade depende deles.


🔎 Easter Egg #3 — O Arquivista

O FOR faz lembrar os grandes arquivos de bibliotecas históricas: silencioso, organizado e indispensável. Sem ele, encontrar um único registro entre milhões seria um pesadelo.


🔎 Easter Egg #4 — A Ponte para o Futuro

Quando ouvir alguém dizer que microsserviços inventaram a separação de responsabilidades, sorria. O CICS já demonstrava esse princípio décadas antes, em um contexto completamente diferente, provando que boas ideias atravessam gerações.


Perguntas de Entrevista

O que significa MRO?

Multi-Region Operation.


Qual seu objetivo?

Permitir comunicação entre regiões CICS executando no mesmo z/OS.


Quem recebe usuários?

TOR.


Quem executa COBOL?

AOR.


Quem controla VSAM?

FOR.


Quem liga tudo?

IRC através do MRO.


MRO funciona entre máquinas diferentes?

Não.

Para isso normalmente utiliza-se ISC.


Conclusão — O Mistério Resolvido

Durante décadas, milhares de profissionais observaram apenas a superfície do CICS. Viam uma tela 3270 responder em menos de um segundo e imaginavam existir apenas um grande programa fazendo todo o trabalho. A realidade é muito mais fascinante.

Por trás de cada transação existe uma verdadeira cidade invisível: porteiros que recebem visitantes, investigadores que resolvem problemas, arquivistas que protegem informações e mensageiros que percorrem túneis secretos levando pedidos e respostas em velocidade impressionante. Essa organização permitiu que o CICS acompanhasse a evolução da computação por gerações, mantendo confiabilidade, desempenho e disponibilidade em ambientes que processam milhões de transações diariamente.

Para quem está iniciando em COBOL, compreender o MRO é um divisor de águas. A partir desse momento, o CICS deixa de ser uma "caixa-preta" e passa a ser um organismo vivo, formado por regiões especializadas que cooperam de maneira elegante. Você não verá apenas comandos EXEC CICS; enxergará o caminho percorrido por cada solicitação, entenderá por que a arquitetura foi desenhada dessa forma e perceberá que muitos conceitos considerados modernos já eram praticados no universo IBM Z muito antes de se tornarem tendências.

E da próxima vez que uma consulta de saldo aparecer instantaneamente na tela, talvez você se lembre desta investigação. Em algum lugar, um TOR abriu a porta, um AOR resolveu o caso, um FOR encontrou a prova escondida em um arquivo VSAM, e o MRO garantiu que todos trabalhassem em perfeita harmonia.

Porque, no fim das contas, o maior mistério do mainframe nunca foi a velocidade.

Foi fazer parecer simples aquilo que, nos bastidores, é uma das mais elegantes obras de engenharia da história da computação.

terça-feira, 13 de março de 2018

O Arquivo Proibido do CICS : O Mistério do Guardião Invisível que Protegia Milhões de Registros

 

Bellacosa Mainframe apresenta o arquivo proibido do cics

☕ Um Café no Bellacosa Mainframe

O Arquivo Proibido do CICS

O Mistério do Guardião Invisível que Protegia Milhões de Registros

Quando um Programador COBOL Descobre que Existe uma Região Inteira Dedicada Apenas a Cuidar dos Arquivos

"Alguns homens guardam cofres. Outros guardam segredos. Mas existe uma entidade silenciosa que guarda algo muito mais valioso: os dados de uma nação inteira."

Era uma noite fria no CPD.

As luzes fluorescentes piscavam sobre quilômetros de cabos, painéis e racks metálicos. O z/OS continuava trabalhando como fazia havia décadas, sem reclamar, sem pedir férias, sem dormir.

No monitor verde de um terminal 3270 surgiu uma mensagem aparentemente comum.

READ CUSTOMER...

Poucos milissegundos depois...

RECORD RETURNED

O programador sorriu.

"Que simples."

Foi então que o velho Analista sorriu discretamente.

— Simples? Meu jovem... você acabou de assistir a uma das maiores ilusões do CICS.

O iniciante não fazia ideia.

Entre aquele READ e a resposta havia acontecido uma verdadeira operação de inteligência digna das revistas policiais noir dos anos 1950.

E no centro dessa conspiração silenciosa existia um personagem que quase ninguém conhece.

Seu nome?

FOR — File-Owning Region.


O erro que todo iniciante comete

Quando aprendemos COBOL, imaginamos algo parecido com isto.

Programa COBOL

↓

EXEC CICS READ

↓

VSAM

↓

Resposta

Parece lógico.

Parece simples.

Parece direto.

Mas em grandes bancos isso raramente acontece.

Na verdade...

o programa quase nunca conversa diretamente com o arquivo.

Quem faz isso é outra região.

Uma espécie de bibliotecário extremamente disciplinado.


Imagine a maior biblioteca do planeta

Imagine uma biblioteca com cem milhões de livros.

Milhares de pessoas entram todos os minutos.

Cada uma quer pegar um livro.

Algumas querem devolvê-lo.

Outras querem alterá-lo.

Outras querem emprestá-lo.

Agora imagine se cada visitante pudesse entrar no depósito principal.

Em poucos minutos haveria caos.

Livros desaparecidos.

Livros duplicados.

Livros rasgados.

Livros no lugar errado.

Agora troque livros por registros bancários.

Você acaba de entender por que o FOR existe.


Afinal, o que é um FOR?

FOR significa

File-Owning Region

É uma região CICS especializada exclusivamente em possuir arquivos.

Ela não executa regras de negócio.

Não calcula juros.

Não processa PIX.

Não atualiza limites.

Ela apenas responde:

"Quer acessar este arquivo? Fale comigo."


Ownership não significa posse...

Significa responsabilidade.

O FOR é responsável por:

✔ abrir arquivos

✔ fechar arquivos

✔ controlar disponibilidade

✔ administrar concorrência

✔ garantir integridade

✔ responder requisições

✔ proteger registros

Pense nele como o zelador-chefe da biblioteca.


O CICSPlex parece uma cidade

Imagine uma cidade.

Na entrada existe um enorme prédio.

Ali trabalham os recepcionistas.

Esse prédio é o TOR.

TOR

↓

Recebe usuários

Depois existe o prédio administrativo.

Ali ficam os departamentos.

São os AORs.

AOR

↓

Executam aplicações

Mas existe outro prédio.

Quase escondido.

Sem visitantes.

Sem filas.

Sem atendimento ao público.

Um enorme arquivo central.

Ali trabalham apenas especialistas.

Esse prédio é o FOR.

FOR

↓

Arquivos

O fluxo verdadeiro

Usuário

↓

TOR

↓

AOR

↓

FOR

↓

VSAM

↓

FOR

↓

AOR

↓

TOR

↓

Usuário

Observe.

O arquivo nunca fala diretamente com o programa.

Sempre existe um intermediário.


O grande segredo: Function Shipping

Aqui aparece um termo muito cobrado em entrevistas.

Function Shipping.

Muitos iniciantes imaginam que o programa COBOL viaja para outra região.

Não.

Quem viaja é apenas o pedido.

Imagine um restaurante.

Você não leva a cozinha até sua mesa.

Você leva apenas o pedido.

O garçom entrega.

A cozinha prepara.

O prato volta.

No CICS acontece exatamente isso.

READ CUSTOMER

↓

FOR

↓

VSAM

↓

Registro

Nada mais.

Nada menos.


Um READ nunca foi apenas um READ

Veja um simples comando.

EXEC CICS
READ FILE('CLIENTE')
RIDFLD(CHAVE)
INTO(REGISTRO)
END-EXEC

Para o programador...

acabou.

Para o CICS...

a aventura apenas começou.

Primeiro ele verifica onde mora aquele arquivo.

Depois identifica seu proprietário.

Depois cria uma requisição.

Depois envia para outra região.

Depois espera resposta.

Depois recebe.

Depois devolve ao programa.

Tudo isso em milissegundos.


Easter Egg nº 1

Existe um velho ditado entre administradores CICS.

"Se um READ demora, culpe primeiro o caminho... não o COBOL."

Muitas vezes o programa está perfeito.

O problema pode estar:

  • no FOR

  • no VSAM

  • na rede entre regiões

  • no lock

  • no disco

  • na contenção

O COBOL frequentemente é inocente.


O banco das três agências

Imagine um banco.

Existem três grandes departamentos.

Agência Digital

Consulta saldo

PIX

Transferências

Cadastro

Atualização de clientes

Todos precisam acessar:

CUSTOMER

Sem FOR...

Cada AOR teria seu próprio acesso.

Resultado?

Mais administração.

Mais risco.

Mais configurações.

Mais problemas.


Com FOR

Tudo muda.

AOR 1

      \

AOR 2 -----> FOR -----> CUSTOMER

      /

AOR 3

Existe apenas um proprietário.

E isso simplifica toda a infraestrutura.


O guardião dos cofres

Imagine o cofre de um banco.

Você não entrega uma chave para cada funcionário.

Existe um responsável.

No CICS é igual.

O FOR guarda as chaves dos arquivos.


O mistério dos Locks

Agora imagine.

Saldo:

R$ 2.000,00

No mesmo segundo...

Um ATM faz saque.

Outro ATM faz depósito.

Outro aplicativo faz PIX.

Quem ganha?

Quem perde?

Sem controle...

o saldo poderia terminar errado.

Com FOR...

READ UPDATE

↓

LOCK

↓

Atualiza

↓

UNLOCK

A ordem é preservada.


Curiosidade

Em ambientes gigantes, dois usuários podem tentar alterar exatamente o mesmo registro no mesmo milissegundo.

É por isso que mecanismos de bloqueio existem.

Sem eles...

o caos seria inevitável.


Easter Egg nº 2

Procure em livros antigos de CICS.

Você encontrará a expressão:

File Ownership

Muito antes da computação distribuída virar moda, o CICS já separava responsabilidades.

Hoje chamamos isso de arquitetura distribuída.

Na década de 1980 isso já existia no Mainframe.


FOR não significa lentidão

Alguns iniciantes pensam:

"Mais uma região? Então fica mais lento."

Nem sempre.

Pense numa rodovia.

Você pode ter uma estrada direta cheia de congestionamentos.

Ou uma estrada um pouco maior, porém organizada.

O tempo final costuma ser menor.

O FOR organiza o trânsito dos dados.


VSAM: o tesouro escondido

A maioria dos FOR administra arquivos VSAM.

Especialmente:

  • KSDS

  • ESDS

  • RRDS

Cada um resolve um tipo diferente de problema.

Um excelente programador COBOL conhece todos eles.


Easter Egg nº 3

Muitos bancos ainda armazenam alguns dos dados mais importantes do país em VSAM.

Quando alguém diz que "o legado morreu", provavelmente acabou de comprar um café usando um cartão cuja autorização passou por um VSAM.


O papel do TOR

O TOR não conhece negócios.

Ele conhece terminais.

Recebe conexões.

Distribui trabalho.

Pense nele como o porteiro de um grande edifício.


O papel do AOR

O AOR pensa.

Calcula.

Executa.

Decide.

Ali vivem os programas COBOL.


O papel do FOR

O FOR protege.

Administra.

Entrega.

Organiza.

Ele é o arquivista.


Analogia completa

Imagine um hospital.

Paciente

↓

Recepção

↓

Médico

↓

Arquivo Médico

↓

Prontuário

Recepção

TOR

Médico

AOR

Arquivo

FOR

Prontuário

VSAM


O iniciante costuma perguntar...

"Por que não colocar tudo dentro do AOR?"

Boa pergunta.

Resposta:

Porque sistemas gigantes precisam crescer.

Imagine cinquenta AORs.

Todos precisando do mesmo cadastro.

Duplicar arquivos?

Duplicar administração?

Duplicar manutenção?

Não faz sentido.


Escalabilidade

Um banco cresce.

Novas aplicações aparecem.

Novos AORs são criados.

Nada muda no FOR.

Todos continuam usando os mesmos arquivos.

Essa separação torna o crescimento muito mais simples.


Alta disponibilidade

Aqui surge outra pergunta interessante.

"E se o FOR parar?"

Excelente pergunta.

Em ambientes corporativos existem estratégias de redundância, recuperação e failover para minimizar indisponibilidades. Dependendo da arquitetura, podem existir múltiplas regiões e mecanismos que permitem restaurar rapidamente o acesso aos arquivos.

Porque perder o FOR significa perder acesso aos arquivos que ele administra.


Como um programador COBOL deve pensar?

Não pense apenas:

EXEC CICS READ

Pense:

"Minha requisição viajará."

Pergunte:

Onde está o arquivo?

Quem é o owner?

Existe FOR?

Existe lock?

Existe contenção?

Esse raciocínio diferencia um programador júnior de um profissional experiente.


Dicas para entrevistas

Se perguntarem:

O que é um FOR?

Responda:

"É uma região CICS responsável por possuir e administrar arquivos compartilhados, permitindo que múltiplos AORs acessem os mesmos recursos por meio de Function Shipping, preservando integridade, escalabilidade e centralização administrativa."

Se perguntarem:

Quem executa o COBOL?

Resposta:

AOR.

Quem recebe o usuário?

TOR.

Quem administra arquivos?

FOR.

Essa tríade aparece com frequência em entrevistas para IBM Z.


Curiosidades que poucos conhecem

  • O FOR reduz a necessidade de múltiplas definições de arquivos em diferentes regiões.

  • Em muitos ambientes, ele trabalha em conjunto com recursos como VSAM RLS para ampliar o compartilhamento seguro dos dados.

  • Grandes instituições financeiras utilizam arquiteturas desse tipo há décadas para suportar milhões de transações diárias.

  • Um simples comando EXEC CICS READ pode envolver diversas camadas de comunicação invisíveis ao programador.


O verdadeiro mistério

O usuário acredita que conversou diretamente com um arquivo.

O programador acredita que o COBOL fez todo o trabalho.

O gerente acredita que tudo aconteceu em uma única máquina.

Mas, nos bastidores, uma coreografia perfeita acontece entre TOR, AOR, FOR, VSAM e o CICS.

É como uma investigação policial em que o detetive resolve o caso, mas nunca percebe que um discreto arquivista encontrou a prova decisiva escondida em uma gaveta esquecida.


Bellacosa Files – Caso Encerrado

Imagine Sherlock Holmes entrando em um CPD.

Watson observa um terminal 3270 e comenta:

— Holmes, o programa encontrou o registro em menos de um segundo. Impressionante.

Holmes sorri, acende seu cachimbo e responde:

— Elementar, meu caro Watson. O programa não encontrou absolutamente nada.

— Como assim?

— Quem encontrou foi o verdadeiro guardião dos arquivos. O programa apenas fez a pergunta certa.

Watson olha para o enorme datacenter, onde dezenas de luzes piscam em silêncio.

Naquele instante, ele percebe que existe um herói invisível trabalhando muito além das telas verdes.

Um herói que nunca aparece nas apresentações comerciais.

Nunca recebe aplausos.

Nunca é visto pelos usuários.

Mas que mantém bancos, companhias aéreas, seguradoras e governos funcionando todos os dias.

Seu nome é FOR — File-Owning Region.

E enquanto houver um VSAM guardando informações valiosas, esse silencioso arquivista continuará protegendo o patrimônio digital do mundo, provando que, no universo IBM Z, os maiores mistérios não estão nos programas COBOL… estão na extraordinária arquitetura que faz tudo funcionar com precisão há décadas.

Vagner Renato Bellacosa, IBM Champion e especialista em IBM Mainframe
IBM Z17 SYSTEM ONLINE
Sobre o autor

Vagner Renato Bellacosa

IBM Champion 2026 • Especialista em IBM Mainframe

Vagner Renato Bellacosa trabalha com IBM Mainframe desde 1988 , é IBM Champion e especialista em COBOL, CICS, Db2, z/OS e IBM Z. Compartilha experiências profissionais, conhecimento técnico, história da computação e práticas do universo mainframe para aproximar novas gerações das tecnologias que sustentam empresas, bancos e governos ao redor do mundo.

IBM Champion IBM Z COBOL CICS Db2 z/OS Mainframe desde 1988
GitHub LinkedIn
Inicializando conteúdo...