Translate

Mostrar mensagens com a etiqueta Integração Mainframe. Mostrar todas as mensagens
Mostrar mensagens com a etiqueta Integração Mainframe. Mostrar todas as mensagens

quinta-feira, 12 de maio de 2022

O Arquivo Secreto do JSON : Os Recursos Avançados do Enterprise COBOL que Quase Ninguém Aprende...

 

Bellacosa Mainframe e o arquivo secreto do json

☕ Um Café no Bellacosa Mainframe

O Arquivo Secreto do JSON

Os Recursos Avançados do Enterprise COBOL que Quase Ninguém Aprende... Mas que Movem Bilhões de Transações Todos os Dias

"Existem programadores que sabem escrever COBOL. Existem programadores que sabem integrar COBOL ao mundo moderno. A diferença entre eles pode ser apenas uma instrução chamada JSON PARSE."


Prólogo — A Porta Número 3270

Era quase meia-noite.

As luzes do CPD permaneciam acesas como sempre.

O z16 processava milhões de transações silenciosamente. Em algum lugar daquele prédio, centenas de aplicações CICS conversavam entre si, acessando DB2, VSAM, MQ e dezenas de microsserviços espalhados pela nuvem.

Na tela verde do terminal 3270, um jovem Programador Padawan acabara de receber sua primeira missão.

Integrar um programa COBOL com uma API REST.

A documentação dizia apenas:

"Receber um JSON."

Somente isso.

Nenhuma explicação.

Nenhum diagrama.

Nenhuma pista.

Foi naquele momento que ele descobriu que o maior mistério do Mainframe moderno não era o COBOL.

Era o JSON.

Pegue seu café.

Hoje vamos abrir um dos arquivos mais secretos do Enterprise COBOL.


Quando o IBM Z Aprendeu um Novo Idioma

Durante décadas o Mainframe falava uma linguagem extremamente organizada.

Cada campo possuía tamanho fixo.

Cada byte tinha uma posição.

Cada registro obedecia um layout rígido.

Exemplo:

Cliente........30 bytes
Conta..........10 bytes
Saldo..........09 bytes

Nada podia sair do lugar.

Era como uma biblioteca onde todos os livros ocupavam exatamente a mesma prateleira.

Então surgiu a Internet.

Depois vieram smartphones.

Cloud.

Microsserviços.

Open Banking.

PIX.

Aplicativos.

Inteligência Artificial.

Todos falavam uma língua completamente diferente.

JSON.

Ao invés de posições fixas...

Possuíam nomes.

Ao invés de layouts...

Possuíam objetos.

Ao invés de registros...

Possuíam documentos.

Durante algum tempo muitos acreditaram que COBOL jamais conversaria naturalmente com esse novo mundo.

Estavam completamente enganados.


O Nascimento do JSON PARSE

A IBM resolveu o problema adicionando dois comandos revolucionários ao Enterprise COBOL:

JSON PARSE

e

JSON GENERATE

Essas duas instruções mudaram completamente a forma como aplicações COBOL se integram ao restante do mercado.

Hoje um programa escrito há quarenta anos pode conversar com uma aplicação Android, um sistema em Java, um microsserviço em Go, uma aplicação Python ou um modelo de Inteligência Artificial.

Sem precisar reinventar a roda.


O Grande Tradutor Invisível

Imagine um tradutor simultâneo.

Uma pessoa fala japonês.

Outra fala português.

O tradutor escuta.

Converte.

Entrega a mensagem.

É exatamente isso que o parser faz.

Ele recebe:

{
   "nome":"Maria",
   "idade":30
}

e transforma automaticamente em:

05 WS-NOME.
05 WS-IDADE.

Nenhuma linha extra de código.

Nenhum parser artesanal.

Nenhuma rotina gigantesca.


O Que Acontece Dentro do Enterprise COBOL?

Pouca gente sabe.

Mas internamente o compilador cria uma estrutura extremamente sofisticada.

Quando encontra:

JSON PARSE

ele gera código capaz de:

✔ analisar caractere por caractere;

✔ identificar objetos;

✔ validar aspas;

✔ converter números;

✔ interpretar arrays;

✔ localizar campos;

✔ detectar erros;

✔ copiar os valores para a Working-Storage.

Tudo isso acontece em microssegundos.


JSON PARSE WITH DETAIL

Aqui começamos a entrar na parte que muitos programadores nunca utilizam.

Imagine receber um JSON com erro.

Sem WITH DETAIL.

Você sabe apenas que falhou.

Com:

JSON PARSE WS-JSON

INTO WS-DADOS

WITH DETAIL

ON EXCEPTION

DISPLAY "ERRO"

END-JSON

o compilador produz informações muito mais ricas sobre o ponto exato da falha.

Isso facilita enormemente o diagnóstico em produção.

Em grandes bancos, localizar rapidamente o campo inválido pode significar minutos em vez de horas de investigação.

☕ Curiosidade Bellacosa: muitos incidentes de integração não são causados pelo COBOL, mas por mudanças discretas em contratos JSON feitos por equipes externas sem comunicação adequada.


NAME OF — Quando Dois Mundos Usam Nomes Diferentes

Imagine o seguinte cenário.

API:

customerName

COBOL:

CLIENTE-NOME

Os nomes não coincidem.

Em vez de alterar um copybook utilizado por dezenas de programas, o Enterprise COBOL permite realizar o mapeamento de nomes com recursos como NAME OF, preservando a estrutura interna da aplicação.

Isso é extremamente útil quando uma API segue convenções como camelCase e o ambiente Mainframe utiliza nomes tradicionais em maiúsculas.


SUPPRESS — O Segredo dos JSONs Elegantes

Imagine um cadastro.

Telefone

Email

Fax

Todos vazios.

Sem SUPPRESS.

{
   "telefone":"",
   "email":"",
   "fax":""
}

Com SUPPRESS.

{
}

Ou apenas:

{
   "nome":"Luke"
}

Arquivos menores.

Menos tráfego.

Mais desempenho.

Menor consumo de banda.

Em ambientes de alta escala, alguns poucos bytes economizados por mensagem representam milhões de bytes ao longo do dia.


COUNT IN — Descobrindo Quantos Objetos Foram Processados

Imagine receber uma lista de clientes.

[
...
]

Como saber quantos registros realmente foram convertidos?

Entra em cena:

COUNT IN

Ele informa quantos elementos foram efetivamente processados.

Extremamente útil para:

  • auditoria;

  • logs;

  • validação;

  • conferência de cargas;

  • integração batch.


CONVERTING — O Pequeno Mágico

Nem sempre dois sistemas utilizam os mesmos valores.

API:

true

COBOL:

"S"

Outro sistema:

1

Outro:

"ATIVO"

O recurso CONVERTING permite realizar essas transformações de forma controlada, reduzindo código repetitivo e centralizando regras de conversão.


Arrays Complexos — O Labirinto do Minotauro

É aqui que muitos iniciantes se perdem.

Observe:

Clientes

↓

Telefones

↓

Endereços

↓

Documentos

Objetos dentro de objetos.

Arrays dentro de arrays.

No COBOL isso é representado através de grupos e OCCURS.

CLIENTE

↓

ENDERECOS OCCURS

↓

TELEFONES OCCURS

O parser percorre cada nível da estrutura, preenchendo automaticamente as tabelas.

É como explorar um enorme arquivo de fichas organizado em gavetas, pastas e divisórias.


OCCURS DEPENDING ON

Nem sempre sabemos quantos registros existirão.

Hoje chegam cinco clientes.

Amanhã cinquenta.

Depois mil.

O OCCURS DEPENDING ON permite estruturas variáveis, mas exige atenção redobrada: o contador deve refletir corretamente a quantidade de elementos, caso contrário leituras incompletas ou acessos inválidos podem ocorrer.


O Fantasma do UTF-8

Existe um fantasma que assombra integrações.

Seu nome:

UTF-8.

O Mainframe tradicional trabalha naturalmente em EBCDIC.

Grande parte da Internet utiliza UTF-8.

Quando a conversão é esquecida...

acentos desaparecem.

Caracteres ficam ilegíveis.

Nomes tornam-se símbolos estranhos.

Antes de culpar o JSON, verifique sempre a codificação.

Esse detalhe já consumiu incontáveis horas de troubleshooting em ambientes corporativos.


O Castelo do z/OS Connect

Agora imagine o seguinte cenário.

Aplicativo.

Internet.

API REST.

z/OS Connect.

CICS.

COBOL.

DB2.

Esse é um dos caminhos mais comuns atualmente.

O z/OS Connect funciona como um diplomata.

Ele recebe JSON.

Traduz.

Entrega ao programa COBOL.

Depois faz exatamente o caminho inverso.

O desenvolvedor trabalha na lógica de negócio enquanto a infraestrutura cuida do protocolo.


CICS e JSON

Durante muito tempo o CICS falava principalmente COMMAREA.

Hoje ele também conversa utilizando:

CHANNEL.

CONTAINER.

JSON.

Isso permitiu criar aplicações muito maiores do que os antigos limites impostos por COMMAREA.

Além disso, o modelo de canais facilita integrações complexas e transporte de documentos maiores.


APIs REST — O Novo Correio do Mainframe

As APIs REST funcionam como um serviço postal moderno.

GET.

Buscar.

POST.

Criar.

PUT.

Atualizar.

DELETE.

Excluir.

O JSON é a carta.

O HTTP é o carteiro.

O COBOL continua sendo o especialista que decide o que fazer quando a carta chega.


O Caminho de Uma Transação

Imagine um PIX.

Aplicativo.

API.

Gateway.

z/OS Connect.

CICS.

JSON PARSE.

COBOL.

DB2.

JSON GENERATE.

Resposta.

Tudo isso pode acontecer em poucos milissegundos.

Enquanto você termina de piscar os olhos, milhares de mensagens semelhantes atravessaram esse caminho.


Segurança Nunca É Opcional

Nem todo JSON recebido deve ser considerado confiável.

Boas práticas incluem:

  • validar tamanho do payload;

  • tratar exceções com ON EXCEPTION;

  • inicializar estruturas antes do parse;

  • rejeitar campos inesperados quando necessário;

  • proteger informações sensíveis;

  • evitar registrar senhas, tokens ou números completos de cartões em logs.

Segurança começa antes mesmo da primeira linha de lógica de negócio.


Performance — O Mito do JSON Lento

Existe quem diga que JSON é lento.

Depende.

O parser nativo do Enterprise COBOL foi otimizado para esse trabalho.

Na maioria dos casos, o gargalo não está no processamento do JSON, mas na comunicação de rede, no acesso ao banco de dados ou em integrações externas.

Um bom desenho de aplicação, buffers bem dimensionados e estruturas adequadas fazem enorme diferença.


Armadilhas Que Todo Padawan Enfrenta

  • Buffer pequeno para armazenar o JSON.

  • Campos numéricos recebendo texto.

  • Datas em formatos diferentes.

  • Arrays maiores do que o OCCURS previsto.

  • Objetos opcionais não tratados.

  • Mudanças silenciosas em contratos de API.

  • Esquecimento da conversão EBCDIC ↔ UTF-8.

  • Logs excessivos em produção.

Reconhecer essas armadilhas cedo economiza muitas madrugadas de plantão.


O Checklist do Mestre Jedi do JSON

Antes de colocar uma aplicação em produção, pergunte:

  • O JSON foi validado?

  • Há tratamento ON EXCEPTION?

  • Os buffers suportam o maior payload esperado?

  • Os campos opcionais foram considerados?

  • A codificação está correta?

  • O contrato da API está documentado?

  • Os logs preservam a privacidade dos dados?

  • O desempenho foi testado com volumes reais?

Se todas as respostas forem "sim", você está muito mais próximo de uma implantação tranquila.


☕ Easter Egg Bellacosa

Nas antigas revistas de mistério noir dos anos 1950, sempre existia um personagem discreto que parecia apenas observar a história. No final, descobria-se que ele era a peça-chave de toda a investigação.

No universo do Mainframe moderno, o JSON desempenha um papel semelhante.

Ele raramente aparece nas manchetes. Quase ninguém comenta sobre ele em reuniões executivas. Porém, é esse "mensageiro silencioso" que leva ordens, saldos, cadastros, pagamentos, consultas e confirmações entre sistemas espalhados pelo planeta.

Da próxima vez que você abrir um aplicativo bancário e visualizar um saldo em segundos, lembre-se: em algum lugar do caminho, um programa COBOL pode ter recebido um JSON, transformado aquela mensagem em estruturas internas, consultado um banco de dados e respondido antes mesmo que você terminasse de tocar a tela do celular.


Conclusão — O Verdadeiro Mistério Nunca Foi o JSON

Quando os primeiros programadores COBOL surgiram, ninguém imaginava que décadas depois seus programas conversariam com smartphones, APIs REST, aplicações em nuvem e modelos de Inteligência Artificial.

Mas a essência permaneceu exatamente a mesma.

Receber dados.

Validar.

Processar.

Garantir integridade.

Responder com segurança.

O JSON não substituiu o COBOL.

Ele apenas abriu uma nova porta.

E, como todo bom investigador das antigas histórias noir descobriria, o segredo nunca esteve na porta.

O segredo sempre esteve em compreender o que existe do outro lado.

O Programador Padawan que domina JSON PARSE, JSON GENERATE, WITH DETAIL, NAME OF, SUPPRESS, COUNT IN, CONVERTING, arrays complexos e integrações com CICS e z/OS Connect deixa de ser apenas um mantenedor de sistemas legados. Ele se torna um tradutor entre dois mundos: a robustez do IBM Z e a velocidade do ecossistema digital moderno.

Enquanto bilhões de transações continuarem atravessando o planeta todos os dias, haverá espaço para profissionais capazes de unir tradição e inovação. E talvez esse seja o maior mistério do Mainframe: a tecnologia mais antiga em produção continua encontrando novas maneiras de conversar com o futuro.

segunda-feira, 29 de julho de 2019

☕🔥 APIs NO IBM MAINFRAME — O MUNDO MODERNO DESCOBRIU AGORA O QUE O z/OS JÁ FAZIA HÁ DÉCADAS

 

Bellacosa Mainframe e o uso de APIs em Mainframe

☕🔥 APIs NO IBM MAINFRAME — O MUNDO MODERNO DESCOBRIU AGORA O QUE O z/OS JÁ FAZIA HÁ DÉCADAS

Hoje o mercado fala sem parar sobre:

  • APIs

  • REST

  • GraphQL

  • gRPC

  • Event Streaming

  • Webhooks

  • Tempo real

  • Microsserviços

E muita gente imagina que isso nasceu:

  • na nuvem

  • no Kubernetes

  • no Node.js

  • no mundo cloud-native

Mas existe uma realidade histórica quase escondida:

O Mainframe sempre foi uma máquina de integração.

Muito antes do termo “API Economy” virar moda…

o IBM Mainframe já fazia:

  • comunicação distribuída

  • transações remotas

  • integração entre sistemas

  • troca de mensagens

  • processamento assíncrono

  • request/reply

  • eventos

  • streaming de dados

E talvez essa seja a parte mais impressionante:

🔥 O z/OS não apenas sobreviveu à era das APIs…
ele virou um dos pilares dela.


☕ O QUE MUITA GENTE NÃO ENTENDE SOBRE APIs

API não é “modinha web”.

API é:

contrato de comunicação.

O formato muda.

A tecnologia muda.

Mas a ideia é a mesma desde os anos 70:

  • um sistema solicita algo

  • outro sistema responde

  • existe um protocolo

  • existe um padrão

  • existe governança

E o Mainframe foi pioneiro nisso.


☕🔥 GRAPHQL NO MAINFRAME — A VOLTA DO “PEDIR SOMENTE O NECESSÁRIO”

GraphQL virou tendência porque resolve um problema clássico:

👉 excesso de dados.

O cliente pede exatamente o que quer.


☕ Mas olha a ironia…

O Mainframe já tinha essa mentalidade há décadas.


Exemplo clássico no CICS + COBOL

Uma transação antiga:

EXEC CICS LINK
     PROGRAM('CLI0001')
     COMMAREA(WS-AREA)
END-EXEC

A COMMAREA levava apenas:

  • campos específicos

  • estruturas necessárias

  • dados filtrados

Não havia desperdício.


☕ GraphQL + z/OS Connect

Hoje o Mainframe moderno usa:

  • z/OS Connect

  • API Connect

  • Db2 REST Services

para expor:

  • COBOL

  • CICS

  • IMS

  • DB2

como APIs modernas.


Exemplo real

Um app mobile pode pedir:

cliente {
  nome
  saldo
}

E o Mainframe responde apenas isso.

Sem payload gigante.


☕🔥 gRPC — O “NOVO RPC” QUE O MAINFRAME JÁ CONHECIA

Quando o mercado descobriu gRPC…

o profissional mainframe veterano provavelmente sorriu.

Porque:

👉 gRPC é basicamente a evolução moderna do RPC.

E RPC já existia no universo IBM há MUITO tempo.


☕ O que é gRPC?

Comunicação:

  • rápida

  • binária

  • eficiente

  • orientada a contratos

usando Protocol Buffers.


☕ O Mainframe fazia isso como?

APPC/LU6.2

Comunicação transacional remota.


DPL (Distributed Program Link)

Programa chama outro remotamente:

EXEC CICS LINK
     SYSID('PRD1')
END-EXEC

Isso é praticamente:

🔥 “gRPC raiz”.


☕ MQ também antecipou isso

Mensagens compactas.

Baixa latência.

Integração confiável.

Comunicação assíncrona.


☕🔥 SOAP — O REINADO ABSOLUTO DO MAINFRAME CORPORATIVO

Antes do REST dominar o mundo…

SOAP era rei absoluto.

E o Mainframe foi um dos maiores ambientes SOAP do planeta.


☕ Por quê?

Porque SOAP entrega algo que o mundo financeiro AMA:

  • contratos rígidos

  • padronização

  • WS-Security

  • governança

  • transações confiáveis

  • XML estruturado


☕ CICS Web Services

O CICS consegue expor programas COBOL como SOAP services.


Fluxo clássico

SOAP Request
     ↓
CICS Pipeline
     ↓
COBOL
     ↓
DB2 / VSAM
     ↓
SOAP Response

☕ O que pouca gente sabe

Grande parte:

  • bancos

  • seguradoras

  • governos

AINDA usam SOAP no Mainframe.

E sinceramente?

🔥 Em sistemas críticos, SOAP ainda é extremamente poderoso.


☕🔥 REST — O MAINFRAME APRENDEU A FALAR “INTERNET”

REST virou padrão porque simplifica integração.

HTTP + JSON.

Simples.

Leve.

Universal.


☕ E o Mainframe?

O Mainframe se reinventou brutalmente aqui.


☕ Hoje temos:

z/OS Connect

Transforma:

  • COBOL

  • IMS

  • CICS

em APIs REST modernas.


☕ Exemplo

Aplicação mobile faz:

GET /clientes/1001

E no backend:

  • COBOL executa

  • DB2 consulta

  • CICS processa

O usuário nem percebe que existe um z/OS por trás.


☕ O REST ajudou o Mainframe a sobreviver

Essa talvez seja uma das maiores viradas históricas do IBM Z.

REST permitiu:

  • integração com cloud

  • apps mobile

  • fintechs

  • Open Banking

  • microsserviços

  • APIs públicas


☕🔥 WEBHOOKS — O MAINFRAME SEMPRE VIVEU DE EVENTOS

Webhook é:

“me avise quando algo acontecer”.


☕ Parece moderno…

Mas o Mainframe já vivia disso.


☕ Exemplos clássicos

WTO/WTOR

Mensagens do sistema disparam ações.


Automation

NetView e System Automation executam workflows baseados em eventos.


MQ Triggering

Fila recebe mensagem → programa inicia automaticamente.

Isso é Webhook conceitualmente.


☕ Exemplo real

Pagamento aprovado:

MQ Message
   ↓
Trigger
   ↓
COBOL Batch
   ↓
Atualização DB2
   ↓
Notificação externa

Event-driven desde antes do termo existir.


☕🔥 SSE (SERVER-SENT EVENTS) — O MAINFRAME SEMPRE AMOU STREAMING

SSE mantém conexão aberta enviando eventos contínuos.

Hoje isso aparece em:

  • dashboards

  • monitoring

  • fintechs

  • trading

  • observabilidade


☕ Mas o Mainframe já fazia streaming há décadas

SMF

Fluxo contínuo de eventos do sistema.


RMF

Monitoramento em tempo real.


OMEGAMON

Streaming operacional contínuo.


☕ Ambientes financeiros usam isso intensamente

Bolsa de valores.

Cartões.

PIX.

Fraude.

Monitoramento de transações.

Tudo depende de fluxo contínuo.


☕🔥 O GRANDE CHOQUE CULTURAL

O mercado moderno acha que inventou:

  • integração

  • APIs

  • eventos

  • streaming

  • observabilidade

Mas o Mainframe já enfrentava esses problemas:

  • nos anos 70

  • nos anos 80

  • nos anos 90

em escala absurda.


☕ O QUE MUDA É O FORMATO

Ontem:

  • SNA

  • APPC

  • MQ

  • CICS LINK

  • COMMAREA

Hoje:

  • REST

  • GraphQL

  • gRPC

  • Kafka

  • Webhooks

Mas a essência continua a mesma:

🔥 sistemas precisam conversar de forma confiável.


☕🔥 O MAIOR MITO SOBRE O MAINFRAME

“Mainframe não conversa com sistemas modernos.”

Isso está completamente errado.

Hoje o IBM Z conversa com:

  • AWS

  • Azure

  • Kubernetes

  • OpenShift

  • APIs REST

  • Kafka

  • aplicações mobile

  • IA generativa

E faz isso mantendo:

  • segurança absurda

  • disponibilidade 24x7

  • integridade transacional

  • throughput gigantesco


☕🔥 A VERDADE QUE O MERCADO COMEÇA A REDESCOBRIR

Quanto mais o mundo moderno cresce…

mais ele percebe a importância de:

  • resiliência

  • observabilidade

  • governança

  • transação confiável

  • mensageria robusta

  • integração desacoplada

E adivinha?

👉 Esses sempre foram pilares do Mainframe.


☕🔥 CONCLUSÃO — O MAINFRAME NÃO FICOU PARA TRÁS

Ele apenas:

evoluiu antes dos outros.

REST, GraphQL, gRPC e Webhooks não substituíram o Mainframe.

Eles se conectaram a ele.

Porque no fim das contas…

🔥 quase todo sistema moderno ainda acaba conversando com um IBM Z em algum momento da vida.


sexta-feira, 17 de agosto de 2018

O Mistério da Porta Invisível : Quando um Programador COBOL Descobre que Seu Programa Conversa com um Celular sem Nunca Ter Saído do CICS

 

Bellacosa Mainframe e o misterio da porta invisivel

☕ Um Café no Bellacosa Mainframe

O Mistério da Porta Invisível

Quando um Programador COBOL Descobre que Seu Programa Conversa com um Celular sem Nunca Ter Saído do CICS

"Naquela noite chuvosa, os logs estavam silenciosos. Nenhum ABEND. Nenhuma mensagem DFHAC2001. Apenas um estranho pacote HTTP atravessando a rede em direção ao velho mainframe. Algo impossível estava prestes a acontecer..."


Prólogo

O Caso da Máquina que Nunca Aprendeu a Envelhecer

Existe uma velha lenda nos CPDs.

Ela diz que existe uma máquina construída antes da chegada da Internet que, décadas depois, continua respondendo milhões de requisições vindas de smartphones.

Ela nunca viu um navegador moderno.

Nunca executou Android.

Jamais instalou iOS.

Mesmo assim...

Responde diariamente a aplicativos bancários, sistemas de companhias aéreas, plataformas de saúde, seguradoras e bolsas de valores.

Essa máquina atende por um nome conhecido.

IBM Z.

E o grande investigador dessa história é um personagem chamado...

CICS.

Hoje vamos investigar como um programa COBOL escrito talvez antes do seu nascimento consegue conversar com aplicações em nuvem utilizando REST, SOAP, JSON, XML, HTTPS e APIs modernas.

Prepare seu café.

O mistério começa agora.


Capítulo 1

A Cidade Perdida chamada CICS

Imagine uma gigantesca cidade.

Nela existem milhares de edifícios.

Cada prédio possui uma função específica.

Uns recebem visitantes.

Outros executam trabalhos.

Alguns guardam documentos secretos.

Outros armazenam dinheiro.

Essa cidade é o CICS.

Cada prédio representa um programa COBOL.

Milhares deles.

Funcionando simultaneamente.

Sem acidentes.

Sem congestionamentos.

Sem parar.

Enquanto servidores modernos podem precisar ser reiniciados para atualizações, um ambiente CICS pode permanecer em operação por períodos extremamente longos, processando um fluxo contínuo de transações críticas.


O verdadeiro trabalho do CICS

Muitos iniciantes acreditam que o CICS é apenas um ambiente onde o COBOL roda.

Na realidade...

Ele é muito mais.

Ele administra:

  • milhares de usuários

  • memória

  • arquivos

  • filas

  • comunicação

  • segurança

  • recuperação

  • sincronização

  • transações

É praticamente um sistema operacional especializado em transações.


Capítulo 2

O nascimento do problema

Década de 1980.

Tudo era simples.

Terminal 3270

↓

CICS

↓

COBOL

↓

VSAM

Todo mundo falava a mesma língua.

Não existiam aplicativos.

Não existiam APIs.

Não existia JSON.

Tudo era verde.

Tudo era 3270.

Então veio a Internet.

Depois surgiram:

  • Java

  • .NET

  • Smartphones

  • Cloud

  • APIs

  • Microsserviços

De repente surgiu uma pergunta assustadora.

"Como um programa COBOL pode conversar com um celular?"


Capítulo 3

O idioma secreto chamado HTTP

Os aplicativos modernos falam uma língua.

HTTP.

Já o COBOL conversa utilizando estruturas internas como COMMAREA ou Channels.

São idiomas diferentes.

É como colocar Sherlock Holmes para conversar com um samurai do Japão Feudal.

Os dois são inteligentes.

Mas precisam de um tradutor.

Esse tradutor existe.

Ele mora dentro do CICS.


Capítulo 4

A Porta Invisível

Essa porta possui um nome elegante.

CICS Web Services.

Ela funciona como um diplomata.

Quando chega uma mensagem REST:

GET /saldo/12345

Ela traduz para algo que o COBOL entende.

Depois faz o caminho contrário.

Programa COBOL

↓

COMMAREA

↓

Resposta

↓

JSON

↓

HTTP

↓

Celular

O programa COBOL sequer percebe que está atendendo um smartphone.

Para ele...

É apenas mais uma solicitação.

Essa abstração é um dos maiores trunfos do CICS: preservar a lógica de negócio enquanto adapta a forma de comunicação.


Capítulo 5

Os dois detetives: REST e SOAP

Aqui encontramos dois investigadores rivais.

REST

Jovem.

Ágil.

Minimalista.

Prefere JSON.

Exemplo:

{
  "cliente": "Maria",
  "saldo": 18950.44
}

É o queridinho das APIs modernas.


SOAP

Mais velho.

Elegante.

Extremamente organizado.

Utiliza XML.

<Envelope>

<Body>

<GetBalance>

<Account>12345</Account>

</GetBalance>

</Body>

</Envelope>

Embora muitos o considerem "antigo", ele continua sendo amplamente utilizado em integrações corporativas que exigem contratos rígidos, segurança avançada e interoperabilidade.


Curiosidade Noir

REST é como um repórter investigativo.

Faz perguntas curtas.

Recebe respostas rápidas.

SOAP parece um advogado.

Toda conversa vem acompanhada de documentos, assinaturas e formalidades.

Nenhum é melhor.

Cada um resolve um tipo diferente de problema.


Capítulo 6

A viagem de um pacote

Vamos seguir uma requisição.

Cliente

↓

Aplicativo

↓

Internet

↓

HTTPS

↓

Firewall

↓

API Gateway

↓

CICS

↓

Programa COBOL

↓

DB2

↓

Resposta

Tudo isso pode ocorrer em poucos milissegundos.

Enquanto você pisca.

O dinheiro já foi consultado.


Capítulo 7

O tradutor invisível

O COBOL trabalha com registros.

01 CLIENTE.

   05 ID.

   05 NOME.

   05 SALDO.

O celular trabalha com JSON.

{
"id":100
}

Quem converte?

O CICS.

Ele transforma estruturas COBOL em mensagens compreensíveis para aplicações modernas e realiza o caminho inverso quando recebe uma requisição.


Capítulo 8

Onde entram Db2 e VSAM?

Muita gente acredita que a API consulta diretamente o banco.

Não.

Quem faz isso é o programa COBOL.

Fluxo:

REST

↓

CICS

↓

COBOL

↓

EXEC SQL

↓

DB2

Ou

REST

↓

CICS

↓

COBOL

↓

READ

↓

VSAM

O Web Service não substitui a lógica de negócio.

Ele apenas abre uma nova porta de entrada.


Capítulo 9

O Guardião chamado Pipeline

Nos bastidores existe outro personagem.

O Pipeline.

Ele verifica:

  • formato da mensagem

  • conversões

  • validações

  • transformações

  • roteamento

  • preparação da resposta

Imagine uma esteira de fábrica.

Cada estação executa uma tarefa antes que a mensagem chegue ao programa COBOL.


Capítulo 10

Segurança: o Castelo Nunca Dorme

Abrir uma API para a Internet não significa deixar a porta escancarada.

Um ambiente corporativo normalmente utiliza camadas como:

  • HTTPS/TLS para criptografia.

  • RACF para autenticação e autorização.

  • Certificados digitais.

  • API Gateways.

  • OAuth ou JWT, quando apropriado.

  • Auditoria via SMF.

  • Firewalls e balanceadores de carga.

A aplicação COBOL continua concentrada nas regras de negócio; a infraestrutura cuida da proteção da comunicação e do acesso.


Capítulo 11

Modernização sem Destruição

Durante muitos anos acreditou-se que seria necessário jogar fora milhões de linhas de COBOL.

Felizmente...

O mercado descobriu algo importante.

O problema não era o COBOL.

Era a forma de acessá-lo.

Hoje fazemos exatamente o contrário.

Mantemos:

  • COBOL

  • CICS

  • Db2

  • VSAM

E apenas trocamos a fachada.

A casa continua firme.

A porta ficou moderna.


Capítulo 12

O casamento com a Cloud

Uma API publicada pelo CICS pode ser consumida por:

  • Azure

  • AWS

  • Google Cloud

  • Kubernetes

  • OpenShift

  • Microsserviços

  • Aplicativos Android

  • Aplicativos iPhone

  • Inteligência Artificial

  • Agentes autônomos

O mainframe deixa de ser uma "ilha" e passa a integrar um ecossistema distribuído.


Capítulo 13

O Papel do z/OS Connect EE

Em muitas empresas, existe um aliado do CICS chamado z/OS Connect Enterprise Edition.

Ele facilita a publicação de APIs REST, realiza transformações entre JSON e estruturas do CICS, gera documentação OpenAPI e simplifica a integração com plataformas de gerenciamento de APIs.

Pense nele como um elegante recepcionista de um hotel cinco estrelas: ele recebe os visitantes, organiza a documentação e encaminha cada um ao departamento correto — que continua sendo o programa COBOL no CICS.


Passo a passo

Como nasce uma API CICS

  1. Identificar o programa COBOL que já executa a regra de negócio.

  2. Definir quais dados serão recebidos e devolvidos.

  3. Criar ou configurar o Web Service/REST endpoint.

  4. Mapear JSON ou XML para COMMAREA ou Channels.

  5. Configurar Pipeline e recursos do CICS.

  6. Publicar a API.

  7. Testar com ferramentas como Postman ou aplicações cliente.

  8. Monitorar desempenho, segurança e auditoria.

O grande diferencial é que, em muitos casos, a lógica COBOL permanece praticamente inalterada.


Curiosidades do Arquivo Bellacosa 🕵️

🗂 Arquivo Nº 3270

O primeiro navegador do bancário foi um terminal 3270. Ele não exibia imagens nem animações, mas oferecia respostas extremamente rápidas e confiáveis.

🗂 Arquivo Nº DFH

Grande parte dos módulos internos do CICS começa com o prefixo DFH, uma tradição histórica da IBM que aparece em mensagens, componentes e utilitários.

🗂 Arquivo Nº COMMAREA

Antes dos Channels e Containers, a COMMAREA era o principal meio de troca de dados entre programas CICS. Ela ainda é amplamente utilizada em aplicações legadas.

🗂 Arquivo Nº REST

Uma API REST pode estar chamando um programa COBOL escrito há décadas, e o desenvolvedor do aplicativo móvel talvez nunca saiba disso.


Dicas para quem está começando

✔ Aprenda primeiro como funciona uma transação CICS.

✔ Entenda bem COMMAREA e, em seguida, estude Channels e Containers.

✔ Domine JSON e XML; você os verá com frequência em integrações.

✔ Conheça o básico de HTTP: métodos GET, POST, PUT e DELETE, além de códigos de status.

✔ Estude Db2 e VSAM, pois são as principais fontes de dados das aplicações CICS.

✔ Familiarize-se com conceitos de segurança, como TLS, certificados e RACF.

✔ Aprenda a usar ferramentas de teste de APIs, como Postman ou curl.

✔ Entenda que modernização não significa abandonar o legado, mas conectá-lo ao mundo atual.


Perguntas clássicas de entrevista

Por que utilizar CICS Web Services?

Porque eles permitem reutilizar aplicações COBOL consolidadas, expondo-as como APIs modernas sem a necessidade de reescrever toda a lógica de negócio.

REST substitui SOAP?

Não. REST e SOAP atendem necessidades diferentes e convivem em muitas organizações.

O programa COBOL precisa saber que está sendo chamado por um celular?

Normalmente, não. O CICS e sua infraestrutura de integração fazem a tradução entre o protocolo Web e a interface esperada pela aplicação.

O CICS acessa diretamente o Db2?

Quem executa a lógica de acesso normalmente é o programa COBOL, utilizando SQL para Db2 ou comandos CICS para VSAM e outros recursos.


O Easter Egg ☕

Se você observou toda a nossa jornada da série Mainframe Learning with AI, percebeu que existe uma sequência quase detectivesca:

  • TOR foi o porteiro que recebeu os visitantes.

  • AOR era o investigador que resolvia os casos.

  • FOR guardava os arquivos secretos.

  • MRO construiu as estradas entre regiões.

  • ISC atravessou fronteiras entre sistemas.

  • TCP/IP abriu a comunicação com o mundo exterior.

  • Web Services finalmente abriu a porta principal para a Internet.

Cada capítulo parecia isolado. Mas, reunidos, formam um único grande mapa da arquitetura CICS moderna.

Como toda boa revista noir dos anos 1950, o maior mistério nunca esteve escondido na última página.

Ele sempre esteve diante dos nossos olhos.

O velho programa COBOL que muitos julgavam ultrapassado jamais esteve preso ao passado. Ele apenas aguardava que alguém encontrasse a porta certa para conversar com o futuro. E essa porta atende pelo nome de CICS Web Services.

quarta-feira, 11 de julho de 2018

O Caso da Porta Invisível : Quando um Programador COBOL Descobre que Seu Sistema de 40 Anos Está Conversando com Aplicativos de Celular

 

Bellacosa Mainframe e o caso da porta invisivel 

☕ Um Café no Bellacosa Mainframe

O Caso da Porta Invisível

Quando um Programador COBOL Descobre que Seu Sistema de 40 Anos Está Conversando com Aplicativos de Celular

"Naquela madrugada chuvosa, enquanto a luz verde do terminal 3270 iluminava fracamente a sala do CPD, uma pergunta ecoava entre os corredores silenciosos do datacenter: como um programa COBOL escrito quando a Internet sequer existia consegue responder, em poucos milissegundos, à consulta de saldo feita por um smartphone do outro lado do planeta?"

Peguei minha xícara de café, observei as luzes do IBM Z piscando como estrelas artificiais e sorri. O mistério estava apenas começando.

Hoje investigaremos uma das maiores mágicas da computação moderna.

Ou melhor...

Uma das maiores ilusões.

Porque nada ali é magia.

É engenharia.

E ela atende pelo nome de CICS Web Services.


Capítulo 1 — O Fantasma que Nunca Saiu do Mainframe

Existe um boato que circula pela Internet há quase vinte anos.

Dizem que o COBOL morreu.

Curiosamente...

Toda vez que alguém consulta o saldo bancário, compra uma passagem aérea, paga um boleto, faz um PIX, reserva um hotel ou utiliza um cartão de crédito...

Lá está ele.

Respirando.

Processando.

Calculando.

Respondendo.

A verdade é que o COBOL nunca precisou aparecer.

Ele apenas trabalha.

Enquanto linguagens modernas brigam por popularidade, frameworks entram e saem de moda e novas arquiteturas surgem a cada ano, milhões de linhas de COBOL continuam executando regras de negócio escritas décadas atrás.

O problema nunca foi o COBOL.

O problema sempre foi a porta de entrada.


Capítulo 2 — O Antigo Castelo

Imagine um enorme castelo medieval.

Dentro dele vivem milhares de escribas.

Eles conhecem absolutamente todas as regras do reino.

Quem pode receber dinheiro.

Quem pode sacar.

Quem está inadimplente.

Quem pode fazer um empréstimo.

Quem possui limite.

Esses escribas representam os programas COBOL.

Durante muitos anos, quem desejava conversar com eles precisava entrar pela porta principal.

Essa porta chamava-se:

Terminal 3270.

Mais tarde surgiram outras entradas.

MQ.

APPC.

Sockets.

CTG.

LU6.2.

Cada uma exigia uma chave diferente.

Era como um castelo cheio de entradas secretas.

Até que alguém teve uma ideia genial.

"E se fizermos uma porta universal?"

Nasciam os Web Services.


Capítulo 3 — A Porta Invisível

A beleza dos CICS Web Services está justamente no fato de que eles quase não alteram o castelo.

Eles não reescrevem o COBOL.

Não mudam o Db2.

Não substituem o VSAM.

Eles apenas constroem uma nova entrada.

Uma entrada que fala a língua do mundo moderno.

Enquanto o aplicativo do banco acredita estar conversando com uma API sofisticada...

Na realidade existe um programa COBOL executando:

EXEC SQL
SELECT SALDO
INTO :WS-SALDO
FROM CONTAS
WHERE NUMERO = :WS-CONTA
END-EXEC.

Nada mudou.

Mudou apenas quem bate à porta.


Capítulo 4 — O Tradutor Universal

Imagine dois diplomatas.

Um fala apenas português.

Outro apenas japonês.

Sem intérprete, ambos passam horas sorrindo sem entender absolutamente nada.

O CICS Web Service funciona exatamente como esse intérprete.

Ele recebe:

JSON

↓

XML

↓

HTTP

↓

REST

↓

SOAP

E traduz tudo para algo que o programa COBOL compreende.

Da mesma forma, quando o COBOL responde usando uma COMMAREA ou um CHANNEL, o CICS converte a resposta novamente para JSON ou XML.

É como se houvesse um tradutor simultâneo trabalhando o tempo inteiro.


Capítulo 5 — O Caminho Percorrido por uma Consulta de Saldo

Vamos acompanhar uma simples consulta de saldo.

Você abre o aplicativo.

Digita sua senha.

Pressiona "Consultar Saldo".

A partir desse instante começa uma viagem fascinante.

Celular

↓

Internet

↓

HTTPS

↓

Firewall

↓

API Gateway

↓

Load Balancer

↓

Servidor HTTP

↓

CICS

↓

Programa COBOL

↓

Db2

↓

Resposta

↓

Celular

Tudo isso costuma acontecer em menos de um segundo.

Na maioria das vezes, em poucos milissegundos.

O usuário nunca imagina que seu smartphone acabou de conversar com um computador cuja arquitetura tem raízes na década de 1960.


Capítulo 6 — REST e SOAP: Dois Detetives, Dois Métodos

Se este fosse um romance policial, REST e SOAP seriam investigadores completamente diferentes.

Inspetor REST

Chega de camisa dobrada.

Pouca burocracia.

Fala pouco.

Resolve rápido.

Transporta informações em JSON.

Adorado por desenvolvedores Web.

Exemplo:

GET /api/clientes/12345

Resposta:

{
 "saldo":2450.75
}

Simples.

Elegante.

Rápido.


Detetive SOAP

Sempre de terno.

Gravata impecável.

Maleta cheia de documentos.

Tudo precisa estar assinado.

Validado.

Carimbado.

Registrado.

Utiliza XML.

Possui contratos (WSDL).

É extremamente rigoroso.

Por isso continua muito presente em bancos, seguradoras, governos e grandes empresas.


Curiosidade Bellacosa nº 1

SOAP costuma ser criticado por ser "pesado".

Entretanto, em ambientes financeiros, sua estrutura rígida é justamente uma vantagem.

A previsibilidade reduz erros de integração.


Capítulo 7 — Os Personagens Secretos do CICS

Quando alguém fala apenas "CICS Web Services", parece algo simples.

Mas existe uma verdadeira equipe trabalhando nos bastidores.

Entre eles:

PIPELINE

Imagine uma esteira industrial.

Cada estação faz uma tarefa.

Validação.

Conversão.

Segurança.

Encaminhamento.

Resposta.

Tudo organizado.


URIMAP

É o GPS.

Quando chega uma URL:

/api/saldo

Ele sabe exatamente qual programa deve ser chamado.


WEBSERVICE

É a ficha técnica.

Define como funciona o serviço.

Quais dados entram.

Quais dados saem.


TCPIPSERVICE

É quem abre a porta da rede.

Sem ele...

Ninguém entra.


WSBIND

Aqui mora um dos maiores segredos.

Ele conhece o idioma dos dois lados.

XML.

JSON.

COMMAREA.

CHANNEL.

CONTAINERS.

Ele sabe exatamente como converter cada campo.


Easter Egg nº 1 🥚

Os nomes DFHLS2WS e DFHWS2LS parecem códigos secretos encontrados em um filme de espionagem.

Na verdade, escondem uma lógica elegante:

LS → Language Structure

WS → Web Service

Logo:

Language Structure → Web Service

e

Web Service → Language Structure

Depois que você percebe isso, nunca mais esquece.


Capítulo 8 — DFHLS2WS: O Alquimista

Imagine entregar um copybook COBOL.

01 CLIENTE.

   05 NOME.

   05 SALDO.

Poucos instantes depois aparecem:

  • WSDL

  • WSBIND

Quase como um passe de mágica.

Na realidade é o utilitário DFHLS2WS trabalhando.

Ele pega uma estrutura COBOL e cria toda a descrição necessária para transformá-la em Web Service.


Capítulo 9 — DFHWS2LS: O Caminho Inverso

Agora imagine que outra equipe desenvolveu um Web Service.

Você recebe apenas o WSDL.

Como escrever o copybook?

Simples.

O DFHWS2LS faz isso automaticamente.

É como um tradutor que trabalha nos dois sentidos.


Curiosidade Bellacosa nº 2

Esses utilitários economizam centenas de horas de desenvolvimento manual.

Antes deles, muitos mapeamentos XML eram escritos praticamente "na mão".

Hoje isso é automatizado.


Capítulo 10 — COMMAREA ou CHANNEL?

Aqui está uma dúvida clássica de entrevistas.

COMMAREA foi durante décadas a forma padrão de troca de dados.

Ela funciona.

Muito bem.

Mas possui um limite famoso.

32 KB.

Quando as integrações começaram a crescer, surgiu uma necessidade.

Mais espaço.

Mais flexibilidade.

Nasciam:

CHANNEL

+

CONTAINERS

Cada Container funciona como uma pequena caixa.

Você pode possuir dezenas delas.

Cada uma armazenando informações diferentes.

Muito mais elegante.


Capítulo 11 — Segurança: O Porteiro Nunca Dorme

Outro mito bastante comum.

"Se o CICS virou Web Service, qualquer pessoa consegue acessá-lo."

Errado.

Na verdade, normalmente o caminho possui diversas camadas.

HTTPS

↓

TLS

↓

Firewall

↓

API Gateway

↓

RACF

↓

SAF

↓

CICS

↓

Programa

Ou seja...

Mesmo que alguém encontre a URL correta...

Ainda terá de atravessar diversos mecanismos de autenticação e autorização.


Easter Egg nº 2 🥚

Observe os filmes noir dos anos 1950.

Quase sempre existe um porteiro discreto.

Poucos prestam atenção nele.

Mas absolutamente ninguém entra sem passar por ele.

No IBM Z esse porteiro atende por vários nomes:

RACF.

SAF.

TLS.

API Gateway.

Todos silenciosos.

Todos eficientes.


Capítulo 12 — O Grande Equívoco da Modernização

Muitas pessoas acreditam que modernizar significa apagar tudo.

Nada poderia estar mais distante da realidade.

Imagine um prédio histórico.

Você troca:

  • elevadores

  • iluminação

  • rede elétrica

  • ar-condicionado

Mas preserva sua estrutura.

É exatamente isso que acontece no CICS.

O COBOL permanece.

As regras continuam.

O que muda é a forma de acesso.


Capítulo 13 — O Aplicativo Nunca Saberá

Quando um aplicativo Android faz uma chamada REST:

GET /saldo

Ele imagina estar conversando com uma API escrita em Java.

Talvez Node.js.

Quem sabe Python.

Na verdade...

Existe uma enorme possibilidade de existir um programa COBOL executando no final da cadeia.

Essa é uma das maiores demonstrações da longevidade da engenharia de software.


Capítulo 14 — O Verdadeiro Valor Está nas Regras de Negócio

Código pode ser reescrito.

Interfaces podem ser substituídas.

Protocolos evoluem.

Mas regras de negócio acumuladas durante quarenta anos representam um patrimônio imenso.

Ali estão milhares de decisões tomadas por especialistas do mercado financeiro, seguros, saúde, governo e logística.

Os CICS Web Services preservam esse conhecimento.

Eles não reinventam a lógica.

Eles a tornam acessível ao mundo moderno.


Dicas para o Programador COBOL Iniciante

✔ Aprenda primeiro o fluxo tradicional do CICS antes de estudar Web Services.

✔ Domine COMMAREA e depois CHANNEL/CONTAINER.

✔ Entenda HTTP, HTTPS e métodos REST.

✔ Saiba a diferença entre JSON e XML.

✔ Estude o papel de WSDL e WSBIND.

✔ Pratique a leitura de copybooks e compreenda como eles representam contratos de dados.

✔ Familiarize-se com utilitários como DFHLS2WS e DFHWS2LS.

✔ Conheça conceitos de segurança como TLS, RACF, autenticação e autorização.

✔ Entenda que a performance de uma API raramente depende apenas do protocolo; consultas Db2, acesso a VSAM e regras de negócio geralmente têm impacto muito maior.

✔ Nunca pense no COBOL como uma tecnologia isolada. Hoje ele faz parte de arquiteturas distribuídas, APIs, microsserviços e soluções em nuvem.


Curiosidades que Impressionam em Entrevistas

  • Muitos aplicativos bancários utilizam APIs REST que terminam em programas COBOL executando em CICS.

  • O mesmo programa COBOL pode atender simultaneamente terminais 3270, filas MQ e Web Services.

  • SOAP continua sendo amplamente utilizado em integrações corporativas críticas devido aos seus contratos formais e padrões de segurança.

  • O uso de APIs permitiu que aplicações escritas há décadas participassem de iniciativas como Open Banking, Open Finance e ecossistemas digitais sem a necessidade de reescrita completa.

  • Em muitos ambientes, um único IBM Z processa milhares de requisições simultâneas com tempos de resposta medidos em milissegundos.


O Arquivo Confidencial Bellacosa 📁

Os velhos investigadores das revistas pulp dos anos 1950 costumavam encerrar seus casos dizendo que "o verdadeiro culpado nunca era quem parecia ser".

Neste caso, o culpado também não é.

Durante anos, disseram que o COBOL era o obstáculo para a inovação. No entanto, a investigação revela outro cenário: o COBOL nunca impediu a transformação digital. O verdadeiro desafio sempre foi criar uma ponte segura entre um patrimônio tecnológico consolidado e as novas formas de consumo de serviços.

Essa ponte recebeu muitos nomes ao longo da história, mas no universo do CICS ela se materializa nos Web Services. Eles permitem que um programa escrito há décadas continue executando exatamente a mesma lógica de negócio, enquanto atende aplicativos móveis, portais Web, plataformas em nuvem e arquiteturas baseadas em APIs.

Da próxima vez que você consultar o saldo pelo celular, comprar uma passagem aérea ou realizar uma transferência bancária, lembre-se deste caso. Em algum lugar, atrás de uma API elegante, de um JSON aparentemente simples e de uma interface moderna, talvez exista um veterano programa COBOL respondendo com a precisão de sempre.

E, se você escutar atentamente o suave zumbido do datacenter em uma madrugada silenciosa, talvez perceba que o maior mistério nunca foi descobrir como o mainframe conversa com o mundo moderno.

O verdadeiro mistério é que ele faz isso tão bem que quase ninguém percebe que ele continua lá, trabalhando incansavelmente, como um detetive das sombras que resolve milhões de casos por dia sem jamais assinar o próprio nome.

quarta-feira, 25 de abril de 2018

☕🔥 API PROTOCOLS NO IBM MAINFRAME — ENQUANTO O MUNDO DISCUTIA “MICROSSERVIÇOS”, O z/OS JÁ PROCESSAVA O PLANETA EM TEMPO REAL

Bellacosa Mainframe e uma visão das api protocols


☕🔥 API PROTOCOLS NO IBM MAINFRAME — ENQUANTO O MUNDO DISCUTIA “MICROSSERVIÇOS”, O z/OS JÁ PROCESSAVA O PLANETA EM TEMPO REAL

Existe uma frase que resume perfeitamente a história da integração corporativa:

“Toda tecnologia moderna acaba redescobrindo algo que o Mainframe já fazia.”

Hoje o mercado vive cercado de siglas:

  • REST

  • GraphQL

  • SOAP

  • gRPC

  • MQTT

  • WebSockets

  • SSE

  • EDA

  • AMQP

  • Webhooks

E muita gente acredita que isso nasceu:

  • na cloud

  • no Kubernetes

  • nas startups

  • no mundo DevOps

Mas existe uma verdade quase chocante:

🔥 O IBM Mainframe já dominava integração distribuída quando muita dessas tecnologias nem existia.


☕ O MAINFRAME NUNCA FOI “ISOLADO”

Esse talvez seja o maior mito da computação.

Muita gente imagina o Mainframe como:

  • terminal verde

  • sistema fechado

  • ambiente monolítico

  • tecnologia presa ao passado

Só que historicamente o Mainframe SEMPRE foi:

✅ distribuído
✅ integrado
✅ orientado a mensagens
✅ orientado a eventos
✅ transacional
✅ resiliente

Na prática:

👉 o Mainframe foi um dos primeiros grandes “hubs de APIs” corporativas do mundo.


☕🔥 REST — O MAINFRAME APRENDEU A FALAR A LÍNGUA DA INTERNET

REST virou padrão mundial porque simplifica comunicação.

HTTP + JSON.

Simples.

Universal.


☕ Mas veja a ironia…

O Mainframe já fazia integração transacional décadas antes.


☕ Hoje o z/OS usa REST via:

  • z/OS Connect

  • CICS REST APIs

  • Db2 REST Services

  • API Connect

  • OpenShift APIs


☕ Exemplo real

Aplicativo mobile:

GET /contas/1001

☕ O que acontece por trás?

REST API
   ↓
z/OS Connect
   ↓
CICS
   ↓
COBOL
   ↓
DB2

Tudo em milissegundos.


☕ O usuário nem percebe

Ele acha que está falando com:

  • cloud

  • microservice

  • fintech moderna

Mas no fundo:

🔥 existe um COBOL no z/OS processando bilhões com segurança absurda.


☕🔥 GRAPHQL — O MAINFRAME SEMPRE DETESTOU DESPERDÍCIO

GraphQL nasceu para resolver:

  • excesso de dados

  • APIs gigantes

  • múltiplas consultas


☕ O conceito é moderno…

Mas a mentalidade é antiga no Mainframe.


☕ COMMAREA no CICS já fazia isso

EXEC CICS LINK
     PROGRAM('CLI001')
     COMMAREA(WS-AREA)
END-EXEC

Somente os campos necessários eram enviados.

Nada de payload gigantesco.


☕ Hoje com GraphQL + DB2

Apps conseguem pedir:

cliente {
   nome
   saldo
}

E o Mainframe retorna exatamente isso.


☕🔥 SOAP — O IMPÉRIO CORPORATIVO QUE O MAINFRAME AJUDOU A CONSTRUIR

Antes do REST…

SOAP era rei absoluto.

E honestamente?

🔥 Em ambientes críticos ele ainda é extremamente forte.


☕ Por quê?

Porque SOAP entrega:

  • contratos rígidos

  • segurança avançada

  • WS-Security

  • governança

  • auditoria

  • confiabilidade


☕ O Mainframe amava isso

Porque bancos e governos PRECISAM disso.


☕ CICS Web Services

Transforma COBOL em serviço SOAP.


☕ Fluxo clássico

SOAP Request
   ↓
CICS Pipeline
   ↓
COBOL
   ↓
DB2
   ↓
SOAP Response

☕ Muitos sistemas financeiros ainda vivem disso

E continuam funcionando perfeitamente.


☕🔥 gRPC — O “RPC MODERNO” QUE O MAINFRAME JÁ CONHECIA

O mercado moderno descobriu:

  • baixa latência

  • comunicação binária

  • chamadas remotas rápidas

e chamou isso de gRPC.


☕ O Mainframe olha e responde:

“Nós já fazíamos isso.”


☕ APPC/LU6.2

Comunicação remota transacional.


☕ DPL (Distributed Program Link)

EXEC CICS LINK
     SYSID('PRD1')
END-EXEC

Programa remoto chamado como se fosse local.

Isso é praticamente:

🔥 gRPC ancestral.


☕🔥 WEBSOCKET — O MAINFRAME SEMPRE GOSTOU DE CONEXÃO PERSISTENTE

WebSocket permite:

  • comunicação bidirecional

  • conexão contínua

  • baixa latência


☕ Isso é perfeito para:

  • trading

  • PIX

  • monitoramento

  • dashboards

  • antifraude


☕ E o Mainframe?

Sempre viveu de sessões persistentes.


☕ VTAM e sessões SNA

Mantinham conexões contínuas décadas antes do WebSocket.


☕ Hoje o z/OS usa isso com:

  • APIs realtime

  • Open Banking

  • streaming financeiro

  • integração cloud


☕🔥 WEBHOOKS — O MAINFRAME SEMPRE FOI EVENT-DRIVEN

Webhook significa:

“me avise quando algo acontecer”.


☕ Parece moderno.

Mas o Mainframe vive disso desde os anos 70.


☕ MQ Triggering

Mensagem chega na fila:

MQ
 ↓
Trigger
 ↓
Programa COBOL inicia

Isso é praticamente um webhook corporativo.


☕ WTO/WTOR também

Eventos operacionais disparam ações automáticas.


☕🔥 EDA — EVENT DRIVEN ARCHITECTURE

Agora chegamos numa parte fascinante.

O mercado moderno fala de:

  • Kafka

  • Event Bus

  • Streaming

  • Async Systems

como se fosse novidade absoluta.


☕ Mas o Mainframe sempre viveu de eventos

Exemplos clássicos

  • MQ

  • CICS transient data

  • SMF

  • JES2 messages

  • RACF alerts

  • NetView automation

Tudo baseado em eventos.


☕ O Mainframe é naturalmente orientado a eventos

Porque em sistemas críticos:

🔥 reagir rápido é sobrevivência.


☕🔥 SSE — STREAMING CONTÍNUO NO DNA DO z/OS

Server-Sent Events enviam dados continuamente.


☕ O Mainframe já fazia isso há décadas

OMEGAMON

Streaming operacional contínuo.


RMF

Métricas em tempo real.


SMF

Fluxo permanente de eventos do sistema.


☕ Ambientes financeiros usam isso brutalmente

  • monitoramento

  • fraude

  • observabilidade

  • auditoria

  • analytics em tempo real


☕🔥 MQTT — O MAINFRAME ENCONTROU A IoT

MQTT domina:

  • sensores

  • IoT

  • dispositivos leves


☕ E o Mainframe?

Hoje ele processa eventos vindos de:

  • caixas eletrônicos

  • POS

  • sensores industriais

  • dispositivos bancários

  • telemetria


☕ IBM MQ facilita isso

MQTT → MQ → z/OS.


☕ O Mainframe virou cérebro central de IoT corporativa

Sim.

Isso realmente existe.


☕🔥 AMQP — O ESPÍRITO DO MQ ESTAVA NA FRENTE DO TEMPO

AMQP formalizou mensageria aberta.

Mas o IBM MQ já fazia:

  • persistência

  • roteamento

  • filas

  • entrega garantida

  • transação

há muito tempo.


☕ IBM MQ É UMA LENDA CORPORATIVA

Porque resolve algo extremamente difícil:

🔥 comunicação confiável entre sistemas gigantescos.


☕🔥 EDI — O “PROTOCOLO INVISÍVEL” QUE MOVE O COMÉRCIO MUNDIAL

Muita gente jovem nunca ouviu falar em EDI.

Mas ele ainda move:

  • logística

  • indústria

  • bancos

  • supply chain

  • varejo mundial


☕ E onde ele sempre foi fortíssimo?

👉 No Mainframe.


☕ Exemplo

Pedido eletrônico:

Empresa A
   ↓
EDI
   ↓
Mainframe
   ↓
ERP
   ↓
Faturamento

Décadas funcionando.


☕🔥 A GRANDE VERDADE QUE O MERCADO ESTÁ REDESCOBRINDO

Quanto mais o mundo cresce…

mais ele percebe que integração corporativa exige:

  • confiabilidade

  • resiliência

  • auditoria

  • governança

  • throughput

  • segurança

E isso sempre foi território natural do Mainframe.


☕🔥 O FUTURO NÃO É “MAINFRAME vs CLOUD”

Esse pensamento morreu.

O futuro é:

Cloud
  +
APIs
  +
Eventos
  +
Mainframe

☕ O IBM Z virou peça central da arquitetura híbrida

Hoje ele conversa com:

  • Kubernetes

  • OpenShift

  • AWS

  • Azure

  • Kafka

  • APIs REST

  • IA generativa

  • microsserviços

sem abandonar:

🔥 estabilidade absurda.


☕🔥 CONCLUSÃO — O MUNDO MODERNO NÃO SUBSTITUIU O MAINFRAME

Ele apenas:

começou finalmente a conversar com ele da forma correta.

REST, GraphQL, MQTT, gRPC e WebSockets não aposentaram o z/OS.

Na verdade…

🔥 eles transformaram o Mainframe no coração silencioso da integração mundial.


terça-feira, 9 de junho de 2015

☕🔥 LABORATÓRIO PRÁTICO — IBM Integration Bus (Broker) Integrando COBOL/MQ com JSON REST

 

Bellacosa Mainframe e o laboratorio de ibm integration bus (broker)


☕🔥 LABORATÓRIO PRÁTICO — IBM Integration Bus (Broker) Integrando COBOL/MQ com JSON REST

Este laboratório simula um cenário REAL de mercado:

Um sistema COBOL no mainframe envia uma mensagem MQ em formato legado, e o IBM Integration Bus (IIB/ACE) transforma tudo em JSON para APIs modernas.

Você aprenderá:

✅ fluxo completo
✅ MQ Input
✅ transformação EBCDIC/Copybook → JSON
✅ ESQL
✅ Message Flow
✅ deploy
✅ testes
✅ troubleshooting


🎯 CENÁRIO DO LAB

Sistema legado (Mainframe)

Envia:

000123JOAO      0000500

Formato:

  • posição fixa

  • padrão COBOL

  • MQ


Broker/IIB/ACE

Recebe:

  • MQ Queue

Transforma:

  • fixed length

  • copybook lógico

  • JSON

Entrega:

  • API REST

  • ou outra fila MQ


🏗️ ARQUITETURA

COBOL Batch/CICS
       ↓
     IBM MQ
       ↓
 MQINPUT NODE
       ↓
 COMPUTE NODE (ESQL)
       ↓
 JSON OUTPUT
       ↓
HTTP/MQ/API

📦 PASSO 1 — PREPARAR O AMBIENTE

Você precisará:

ComponenteFunção
IBM MQMensageria
IBM ACE/IIBIntegração
ToolkitDesenvolvimento
Queue ManagerFilas
MQ ExplorerAdministração

📌 FILAS DO LAB

Entrada

LAB.INPUT

Saída

LAB.OUTPUT

⚙️ PASSO 2 — CRIAR AS FILAS MQ

Script MQSC

DEFINE QLOCAL(LAB.INPUT)
DEFINE QLOCAL(LAB.OUTPUT)

▶️ EXECUTAR

Linux:

runmqsc QM1 < filas.mqsc

Windows:

runmqsc QM1

Cole os comandos.


🔥 PASSO 3 — CRIAR O PROJETO NO ACE TOOLKIT

Novo Application

File → New → Application

Nome:

LAB_MAINFRAME_JSON

🔥 PASSO 4 — CRIAR MESSAGE FLOW

Novo Message Flow

MF_MAINFRAME_JSON

🧩 PASSO 5 — ADICIONAR NODES

Arraste:

NodeFunção
MQInputReceber MQ
ComputeTransformar
MQOutputEnviar saída

🔗 CONECTAR

MQInput → Compute → MQOutput

⚙️ PASSO 6 — CONFIGURAR MQINPUT

Queue Name

LAB.INPUT

Queue Manager

QM1

⚙️ PASSO 7 — CONFIGURAR MQOUTPUT

Queue

LAB.OUTPUT

🧠 PASSO 8 — CRIAR O ESQL

Compute Node

Clique:

Open ESQL

✨ CÓDIGO COMPLETO

CREATE COMPUTE MODULE MAINFRAME_TO_JSON

CREATE FUNCTION Main() RETURNS BOOLEAN
BEGIN

    DECLARE MSG CHAR;
    
    SET MSG = CAST(InputRoot.BLOB.BLOB AS CHAR CCSID 1208);

    DECLARE CONTA CHAR;
    DECLARE NOME  CHAR;
    DECLARE SALDO CHAR;

    SET CONTA = SUBSTRING(MSG FROM 1 FOR 6);
    SET NOME  = TRIM(SUBSTRING(MSG FROM 7 FOR 10));
    SET SALDO = SUBSTRING(MSG FROM 17 FOR 7);

    CREATE FIELD OutputRoot.JSON.Data;

    SET OutputRoot.JSON.Data.conta = CONTA;
    SET OutputRoot.JSON.Data.nome  = NOME;
    SET OutputRoot.JSON.Data.saldo = CAST(SALDO AS INTEGER);

    RETURN TRUE;

END;

END MODULE;

🧠 O QUE ESSE ESQL FAZ?


📌 PASSO A PASSO DA LÓGICA

1️⃣ Recebe o BLOB MQ

SET MSG = CAST(InputRoot.BLOB.BLOB AS CHAR CCSID 1208);

Converte:

  • bytes MQ

  • para texto


2️⃣ Extrai os campos

Conta

SET CONTA = SUBSTRING(MSG FROM 1 FOR 6);

Pega:

000123

Nome

SET NOME = TRIM(SUBSTRING(MSG FROM 7 FOR 10));

Pega:

JOAO

Saldo

SET SALDO = SUBSTRING(MSG FROM 17 FOR 7);

Pega:

0000500

📌 MONTA JSON

SET OutputRoot.JSON.Data.conta = CONTA;

Cria:

{
  "conta": "000123"
}

🚀 RESULTADO FINAL

Mensagem saída:

{
  "conta": "000123",
  "nome": "JOAO",
  "saldo": 500
}

🔥 PASSO 9 — DEPLOY

Clique direito

Deploy → Integration Server

📦 PASSO 10 — TESTAR

Enviar MQ Message

Use:

amqsput LAB.INPUT QM1

Digite:

000123JOAO      0000500

ENTER
ENTER novamente.


📥 VERIFICAR SAÍDA

amqsget LAB.OUTPUT QM1

🎉 RESULTADO

{
  "conta":"000123",
  "nome":"JOAO",
  "saldo":500
}

🔥 O QUE VOCÊ APRENDEU AQUI?

Você criou:

✅ integração real
✅ transformação legado → moderno
✅ parsing de layout COBOL
✅ transformação JSON
✅ fluxo MQ
✅ ESQL
✅ Message Flow


🧠 CENÁRIOS REAIS DE MERCADO

Esse padrão é MUITO usado para:

LegadoModerno
COBOLAPI REST
VSAMJSON
CICSCloud
MQKafka
DB2Microservices

🚨 PROBLEMAS COMUNS

❌ CCSID errado

Erro clássico:

caracteres estranhos

Solução:

  • validar UTF-8

  • EBCDIC

  • CCSID MQ


❌ Campo deslocado

Exemplo:

JOAO indo para saldo

Problema:

  • posições incorretas


❌ JSON vazio

Problema:

  • OutputRoot errado


❌ MQInput não lê

Verificar:

  • queue manager

  • channel

  • listener

  • permissões


🔥 LAB AVANÇADO (PRÓXIMOS PASSOS)

Você pode evoluir para:

✅ Copybook COBOL real
✅ XMLNSC
✅ SOAP
✅ REST API
✅ Kafka
✅ integração DB2
✅ CICS Web Services
✅ SAP IDoc
✅ HTTPS OAuth2
✅ JWT
✅ transformação XML ↔ JSON


🏆 DESAFIO EXTRA

Transforme este layout:

000123JOAO      00005000000100SP

Em:

{
  "conta":123,
  "nome":"JOAO",
  "saldo":500,
  "agencia":100,
  "estado":"SP"
}

☕🔥 CONCLUSÃO

Esse laboratório mostra exatamente:

como o IBM Integration Bus/ACE virou a ponte entre o mundo COBOL/mainframe e o universo APIs/cloud.

É literalmente:

✅ legado falando moderno
✅ MQ falando REST
✅ EBCDIC falando JSON
✅ mainframe conectado ao futuro 🚀


terça-feira, 5 de outubro de 2010

🔥☕ JSON: O “COBOL DOS DADOS MODERNOS”? — A Linguagem Invisível Que Dominou APIs, Nuvem e Até o Mainframe ☕🔥

 

Bellacosa Mainframe explica o JSON


🔥☕ JSON: O “COBOL DOS DADOS MODERNOS”? — A Linguagem Invisível Que Dominou APIs, Nuvem e Até o Mainframe ☕🔥

“Enquanto muita gente ainda pensava em arquivos texto… o JSON já estava preparando o planeta para microserviços, APIs e integração global.”


🚀 Introdução — O Formato Que Conquistou o Mundo

Se existe algo que une JavaScript, Python, Java, Node.js, Kubernetes, APIs REST, Open Banking, cloud e até o z/OS… esse algo é o JSON.

Sim…

Aquele bloco aparentemente simples:

{
"cliente": "BELLACOSA",
"conta": 12345,
"saldo": 9999.99
}

Hoje parece trivial.

Mas o impacto do JSON na computação foi monstruoso.

Ele virou:

  • o idioma oficial das APIs,
  • a “cola” da internet moderna,
  • o padrão universal de troca de dados,
  • e uma das maiores revoluções silenciosas da computação corporativa.

E o mais curioso?

O JSON nasceu de forma extremamente simples… quase como um “truque elegante” dentro do JavaScript.


🧠 Quem Criou o JSON?

O JSON foi criado por:

👨 Douglas Crockford

Programador, arquiteto de software e evangelista JavaScript.


📅 Data de Criação

O JSON começou a ganhar forma por volta de:

📌 2001

E foi oficialmente popularizado entre:

📌 2002–2005


🌍 O Problema Que o JSON Resolveu

Antes do JSON, integração era quase sempre baseada em:

  • XML
  • CSV
  • Arquivos posicionais
  • Protocolos binários
  • EDI
  • Mensagens proprietárias

O problema?

Tudo era:

  • pesado,
  • verboso,
  • lento,
  • difícil de ler,
  • difícil de debugar.

Exemplo de XML:

<cliente>
<nome>BELLACOSA</nome>
<saldo>9999.99</saldo>
</cliente>

Agora compare com JSON:

{
"nome": "BELLACOSA",
"saldo": 9999.99
}

Menos ruído.
Mais legibilidade.
Mais velocidade.
Mais simplicidade.

E o mercado enlouqueceu.


⚡ O Grande Segredo do JSON

O JSON nasceu inspirado diretamente nos objetos JavaScript.

Na prática:

var cliente = {
nome: "BELLACOSA",
saldo: 9999.99
}

Douglas Crockford percebeu:

“E se isso virar um formato universal de troca de dados?”

E virou.


🔥 O JSON Explodiu Com as APIs REST

Quando APIs REST começaram a dominar o mercado…

o JSON virou praticamente obrigatório.

Porque:

  • era leve,
  • rápido,
  • fácil de parsear,
  • perfeito para internet,
  • amigável para humanos.

Resultado?

O XML começou a perder espaço rapidamente.


☕ O Mainframe Não Ficou de Fora

Aqui começa a parte interessante para o mundo COBOL.

Muita gente achava:

“Mainframe nunca vai falar JSON.”

Erro histórico.

Hoje o z/OS conversa JSON o tempo inteiro:

  • APIs REST
  • z/OS Connect
  • CICS Web Services
  • MQ
  • Kafka
  • Open Banking
  • Microsserviços
  • Cloud híbrida

O JSON virou peça fundamental da modernização mainframe.


🧠 COBOL + JSON = O Casamento Corporativo Moderno

A IBM percebeu rapidamente:

Se o mainframe quisesse continuar reinando…
precisaria falar JSON nativamente.

E então vieram recursos modernos como:

📌 JSON PARSE

e

📌 JSON GENERATE

no Enterprise COBOL.


🚀 Exemplo COBOL Moderno Com JSON

Gerando JSON

IDENTIFICATION DIVISION.
PROGRAM-ID. GERJSON.

DATA DIVISION.

WORKING-STORAGE SECTION.

01 CLIENTE.
05 NOME PIC X(20) VALUE 'BELLACOSA'.
05 SALDO PIC 9(5)V99 VALUE 99999.99.

01 JSON-SAIDA PIC X(200).

PROCEDURE DIVISION.

JSON GENERATE JSON-SAIDA
FROM CLIENTE

DISPLAY JSON-SAIDA.

STOP RUN.

Saída:

{"NOME":"BELLACOSA","SALDO":99999.99}

🔥 Parsing JSON no COBOL

Recebendo API REST

JSON PARSE JSON-ENTRADA
INTO CLIENTE

Isso foi revolucionário no z/OS.

Porque eliminou:

  • parsers manuais,
  • tratamentos absurdos,
  • lógica artesanal,
  • conversões complexas.

🧠 O Que Tornou o JSON Tão Poderoso?

📌 1. Legibilidade Humana

Até operador consegue entender.


📌 2. Estrutura Hierárquica

Permite:

  • objetos,
  • listas,
  • arrays,
  • árvores complexas.

📌 3. Independência de Linguagem

Funciona em:

  • COBOL
  • Java
  • Python
  • Go
  • Node.js
  • Rust
  • RPG
  • PL/I

📌 4. Perfeito Para APIs

JSON praticamente virou:

“o TCP/IP da integração moderna.”


⚠️ Desvantagens do JSON

Nem tudo são flores.


❌ 1. Sem Tipagem Forte

JSON puro não define:

  • decimal fixo,
  • packed decimal,
  • COMP-3,
  • datas reais.

Isso gera problemas em integrações financeiras.


❌ 2. Overhead de Texto

JSON é texto.

Protocolos binários podem ser mais rápidos.


❌ 3. Segurança

Parsing inseguro pode causar:

  • injection,
  • payload malicioso,
  • consumo excessivo de memória.

❌ 4. Precisão Numérica

Problema clássico:

  • valores financeiros,
  • arredondamentos,
  • IEEE floating point.

O mainframe sofre muito menos disso graças ao decimal packed.


🔥 Curiosidades Históricas

☕ JSON NÃO É Linguagem

Apesar do nome:

JavaScript Object Notation

JSON NÃO é uma linguagem de programação.

É apenas um formato de dados.


☕ O JSON Virou Padrão Oficial

RFC oficial:

📌 RFC 8259


☕ XML Dominava Absolutamente

Antes do JSON:

  • SOAP,
  • WSDL,
  • XML Schema,
  • namespaces,
  • tags gigantescas.

Parecia um ritual mágico corporativo.

JSON chegou como uma motosserra.


💣 Easter Egg Histórico

Douglas Crockford chegou a remover referências perigosas do JavaScript porque:

📌 JSON podia executar código involuntariamente

No começo muita gente fazia:

eval(json)

Isso virou um pesadelo de segurança.

Daí nasceram parsers seguros.


🚀 JSON no Mundo Mainframe Moderno

Hoje o JSON está em todo lugar no z/OS:

TecnologiaUso
z/OS ConnectAPIs REST
CICSWeb Services
IMSIntegração moderna
MQMensageria
KafkaStreaming
Db2 RESTAPIs corporativas
Open BankingPayloads financeiros
Cloud híbridaMicrosserviços



🔥 O JSON Mudou o Papel do Programador COBOL

Antigamente:

  • COBOL manipulava arquivos,
  • VSAM,
  • copybooks,
  • EBCDIC.

Hoje o COBOL moderno:

  • consome APIs,
  • gera REST,
  • fala HTTP,
  • troca JSON,
  • integra cloud,
  • conversa com Kubernetes.

O programador COBOL virou:

engenheiro de integração corporativa.


☕ Comparação Filosófica: JSON vs Copybook COBOL

Curiosamente…

JSON lembra MUITO a ideia dos copybooks.

Veja:

Copybook

01 CLIENTE.
05 NOME PIC X(20).
05 SALDO PIC 9(5)V99.

JSON

{
"NOME": "BELLACOSA",
"SALDO": 99999.99
}

Ambos descrevem estrutura de dados.

A diferença?

O JSON atravessa internet, nuvem e APIs.


🧠 O Verdadeiro Motivo do Sucesso do JSON

Não foi tecnologia.

Foi simplicidade.

O JSON venceu porque:

  • humanos entendem,
  • programadores gostam,
  • APIs adoram,
  • clouds dependem,
  • empresas inteiras padronizaram nele.

💣 Conclusão — O JSON Virou a “Nova Linguagem Universal”

O JSON não matou o COBOL.

Na verdade…

Ele ajudou o COBOL a sobreviver à era cloud.

Hoje o mainframe continua relevante porque aprendeu:

  • REST,
  • APIs,
  • microsserviços,
  • containers,
  • integração moderna,
  • e principalmente…
  • JSON.

E talvez essa seja a maior ironia da computação:

O formato que nasceu no JavaScript acabou ajudando o z/OS a continuar dominando o coração financeiro do planeta.


☕ Frase Final no Estilo Bellacosa Mainframe

“O COBOL continua processando bilhões… mas agora conversa com o mundo em JSON.” 🔥🚀

 

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...