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

quinta-feira, 22 de janeiro de 2026

🍔💾 Essential z/OS Performance Tuning Workshop achando os vilões

 

Bellacosa Mainframe apresenta caçando os vilões em zos performance tuning

🍔💾 Essential z/OS Performance Tuning Workshop achando os vilões

Versão técnica: RMF, SMF e a arte de não tunar errado

O Essential z/OS Performance Tuning Workshop separa, logo de cara, dois tipos de profissionais:

  1. Quem acha que faz performance tuning

  2. Quem sabe onde olhar primeiro

Essa versão é para o segundo grupo — ou para quem quer migrar do 1️⃣ para o 2️⃣ sem trauma.


🎯 Regra zero do workshop

Nunca comece pelo parâmetro. Comece pela observação.

Antes de qualquer ALTER, DEFINE ou SET:

  • Qual workload?

  • Qual período?

  • O que mudou?

  • Existe baseline?

Sem isso, tuning vira superstição técnica.


🧠 CPU: o falso vilão

Onde olhar no RMF

RMF CPU Activity Report (Postprocessor)

Campos clássicos:

  • % Busy

  • % LPAR Utilization

  • % Logical Processor Dispatch

  • % IFA / zIIP / zAAP (quando aplicável)

Interpretação que o workshop ensina

  • CPU alta com response time estável → sistema saudável

  • CPU média com response time degradando → gargalo fora da CPU

  • CPU baixa + atraso → WLM ou I/O

📌 Easter egg técnico:
Se o LPAR Delay cresce, não é falta de tuning — é falta de peso ou política errada.


⚙️ WLM: tuning começa aqui, não no SYS1.PARMLIB

RMF Workload Activity Report

Campos críticos:

  • Service Class Period

  • Velocity

  • Average Response Time

  • Delay Reasons

Exemplo típico visto no workshop:

Service Class: ONLINE_HI Velocity Goal: 50 Achieved Velocity: 12 Delay: I/O 65%, Enqueue 20%

👉 Conclusão correta:

  • Não adianta subir prioridade

  • Não adianta mexer em CPU

  • O gargalo não é WLM, é dependência externa

💡 Lição central:

WLM não resolve gargalo físico. Ele apenas escolhe quem sofre primeiro.


📊 RMF Monitor III: o “agora dói aqui”

Uso correto (e erro comum)

Monitor III serve para:

  • Incidente ativo

  • Observação em tempo real

  • Confirmação de suspeita

Não serve para:

  • Análise histórica

  • Decisão estrutural

  • Justificativa pós-morte

Campos típicos:

  • Address Space Delay

  • Device Response Time

  • Enqueue Waits

📌 Erro clássico:
Usar Monitor III como prova definitiva em reunião de causa raiz.


🗃️ SMF: onde a discussão acaba

SMF 30 – Address Space Accounting

Usado para responder:

  • Quem consumiu CPU?

  • Quanto?

  • Em qual período?

Exemplo prático:

SMF30: CPU Time: baixo Elapsed Time: alto

👉 Indício claro:

  • Espera externa

  • I/O

  • Lock

  • Dependência de outro job


SMF 70 / 72 – CPU e WLM

SMF 72 é o coração do tuning orientado a SLA.

Campos essenciais:

  • Service Class Performance Index

  • Delay Breakdown

  • Period Transitions

📌 Easter egg de workshop:
Performance Index < 1.0 não é vitória se o response time continua ruim.


SMF 74 – I/O e Storage

Onde muitos problemas se revelam.

Campos observados:

  • Device Response Time

  • Pending Time

  • Channel Utilization

Exemplo clássico:

  • CPU “sobrando”

  • Response time alto

  • 3390 com Pending elevado

👉 Solução raramente é tuning de parâmetro.
Normalmente é layout, cache, storage tier ou concorrência mal planejada.


⚠️ Casos clássicos discutidos no workshop

🔥 “O batch atrasou tudo”

RMF mostra:

  • Batch em baixa prioridade

  • Online atrasando

SMF revela:

  • Batch segurando enqueue crítico

  • Online esperando lock

👉 Ajuste correto:

  • Revisar serialização

  • Reavaliar janela batch

  • Não subir prioridade às cegas


🔥 “Depois da mudança ficou lento”

Primeira pergunta ensinada no workshop:

Qual foi o último change?

Sem resposta clara:

  • tuning suspenso

  • investigação começa

📌 Lição dura:

Performance tuning não corrige change mal feito.
Ele só mascara — até piorar.


🚀 O que o workshop realmente forma

Não forma “tuner de parâmetro”.
Forma analista de comportamento do sistema.

Quem sai sabendo:

  • Correlacionar RMF + SMF

  • Defender decisão com dados

  • Evitar tuning destrutivo

  • Criar baseline útil

No CPD, isso vira reputação.


🧠 Frase final  

“RMF mostra o sintoma.
SMF mostra a causa.
WLM executa a decisão — certa ou errada.”

O Essential z/OS Performance Tuning Workshop não ensina atalhos.
Ensina responsabilidade técnica em ambiente onde erro custa caro.


terça-feira, 6 de janeiro de 2026

📘 REPOST: CICS Command Level para padawans

 

CICS Command Level for Padawans


📘 CICS Command Level para padawans

Um guia passo a passo para entender o que é CICS, aprender e planejar um roteiro de estudos com o orquestrador do online em Mainframe.

#ibm #mainframe #cobol #cics #t3270 #vsam #bms #ksds #esds #ceda #ceci #cemt 


Post no Linkedin








1


quinta-feira, 17 de julho de 2025

🖥️ CICS: O Coração do Processamento Online no Mainframe


Bellacosa Mainframe apresenta o CICS para Padawans


🖥️ CICS: O Coração do Processamento Online no Mainframe

4,355 followers

Salve jovem padawan em mais um artigo de nossa jornada, desmitificando o Mainframe, vamos falar sobre um Softwares, que trabalha nas sombras, mas que sem ele, o mundo mainframe não poderia atender aos milhões de usuários, que interagem com os diversos sistemas COBOL e de outras linguagens de Alta Plataforma.

Você já se perguntou como sistemas bancários, de companhias aéreas ou de seguradoras conseguem responder a milhares de transações por segundo com segurança e rapidez? A resposta pode estar em três letrinhas: CICS.

📌 O que é o CICS?

CICS (Customer Information Control System) é um monitor de transações desenvolvido pela IBM na década de 1960. Ele é amplamente utilizado em ambientes mainframe z/OS para controlar e executar aplicações online, especialmente aquelas escritas em COBOL.

Em termos simples: o CICS gerencia aplicações interativas que processam transações simultâneas em tempo real.

📜 Um Pouco da História

🗓️ O CICS foi lançado em 1968, quando a IBM percebeu a necessidade de um sistema que permitisse múltiplos acessos simultâneos ao mesmo programa, sem travar ou perder dados.

🧠 O projeto foi liderado por engenheiros da IBM em Des Moines, Iowa (EUA). A primeira versão era bem mais limitada que o que conhecemos hoje, mas logo se tornou peça-chave nos grandes sistemas corporativos.

📝 Antes dos terminais 3270 e o CICS, toda a informação era gerada em relatórios em papel zebrado e continuo, enormes caixas circulavam entre a Matriz com as Impressoras e as Agências, um verdadeiro inferno de logística, gastando toneladas de papel, o padrão eram relatórios com 255 caracteres e 80 caracteres.

🇧🇷 No Brasil esse tipo de processamento em papel foi bem comum até meados da década de 80 no século passado, quando os primeiros 3270 começaram a expandir-se, devido à reserva de mercado. Vivemos um certo atraso, porém já no final da década, tínhamos as ATMs, o Banco telefônico e os cartões magnéticos, ainda somente com fita, o chip veio surgir uns 10 ou 15 anos depois.

Logotipo Banco do Brasil


A primeira instituição financeira a utilizar o CICS em suas transações bancarias foi o Banco do Brasil, no final dos anos 60.

💡 Por Que o CICS é Tão Importante?

Imagine uma agência bancária nos anos 70 recebendo milhares de clientes por dia. Cada saque, depósito ou consulta de saldo é uma transação que precisa ser registrada, validada e respondida em tempo real. O CICS tornou isso possível com:

  • Alta disponibilidade
  • Baixa latência
  • Suporte a múltiplos usuários
  • Recuperação de falhas
  • Segurança transacional

O CPD Centro de Processamento de Dados do Bradesco

Um IBM 1401 com 4 Kilobytes de memoria.

CPD Centro de Processamento de Dados do Bradesco

Antiga agência da Paulista


Uma agência do Banespa

Sem computadores somente papel e calculadoras

Agencia do extinto Banco Real


Agencia do Banco Real na PUC RIO


Analise de contas e movimentos financeiros antes do cics online


Antes do CICS

Uma era de listagens e mais listagens de papel, atualizados manualmente e posteriormente planilhados em folhas de digitação e enviadas a Matriz ou Centros de Digitação. Eram criadas fitas magnéticas, que eram consolidados no processamento Batch diário e impresso ao final da madrugada, por essa razão as agências bancarias abriam as portas as 10 da manhã. Um processo de logística imenso entrava em ação para levar as informações para cada Agência.

Workflow bancario pré-cics


Essa era a logística do processo de impressão.


Formulario continuo zebrado 255 colunas
Folha de impressão zebrada e continua.

Após o CICS e os terminais 3270

O processo ficou muito mais rápido, com a chegada dos discos magnéticos, o arquivo indexado VSAM e os primeiros bancos de dados IMS DL/I Adabas, o processamento de dados ganhou mais velocidade.

Porém, no Brasil havia mais uma barreira a ser vencida, a precaridade das linhas de comunicação telefônicas e em algumas regiões problemas estruturais de falta de eletricidade. Mas ai, são pontos para outra história.

Agencia bancaria online decada de 1990


Uma criação do inventor escocês Shepherd-Barron, o primeiro caixa eletrônico do Mundo foi inaugurado em 27 de junho de 1967 em uma agência do banco Barclays em Enfield, no norte de Londres, um de seis encomendados pelo banco.

Primeiro terminal de autoatendimento ATM


🧾 Um Exemplo de Código COBOL com CICS

Aqui está um exemplo básico de um programa COBOL com comandos CICS que lê dados de uma tela e responde com uma mensagem:

IDENTIFICATION DIVISION.

PROGRAM-ID. HELLOCICS.

DATA DIVISION.

WORKING-STORAGE SECTION.
01 WS-NOME     PIC X(30).
01 WS-MENSAGEM PIC X(80).

PROCEDURE DIVISION.
 
    EXEC CICS
         RECEIVE MAP('TELA001')
         MAPSET('MAPA001')
    END-EXEC

    MOVE 'Ola, ' TO WS-MENSAGEM

    STRING WS-NOME DELIMITED BY SPACE
           ' seja bem-vindo ao CICS!' DELIMITED BY SIZE
      INTO WS-MENSAGEM
    END-STRING

    EXEC CICS SEND MAP('TELA001') MAPSET('MAPA001') FROM(WS-MENSAGEM)
       ERASE
    END-EXEC

    EXEC CICS 
      RETURN 
    END-EXEC.

👉 Este exemplo usa comandos EXEC CICS para interagir com o terminal. Isso permite que o programa leia dados do usuário, processe e envie uma resposta de forma transacional e segura.

Porém, com o podem ter notado, o COBOL não está sozinho, aqui ele usa comando CICS para gerir a comunicação com os terminais, necessita de um Mapa BMS em HLASM para gerar o front-end, o programador ainda necessita compilar o programa. No CICS criar transação, associar a transação ao programa, associar o mapa ao programa, criar o link ao programa e instalar todos os componentes.


🤔 Curiosidades sobre o CICS


🔹 O CICS é usado por mais de 90% dos bancos do mundo para processar transações críticas. 🔹 Estima-se que o CICS processe mais de 30 bilhões de transações por dia globalmente. 🔹 CICS é compatível com linguagens como COBOL, PL/I, C, Java, Node.js e até APIs REST via z/OS Connect. 🔹 O nome original era "Customer Information Control System", mas o significado acabou caindo em desuso — hoje, CICS é só CICS mesmo.


🔗 CICS no Mundo Moderno

Hoje, o CICS evoluiu para suportar arquitetura orientada a serviços, REST APIs, integração com Kafka, MQ, Java EE, entre outros. É um exemplo clássico de tecnologia "legado vivo", que se modernizou sem perder sua robustez.


💬 Conclusão

Então jovem padawans, neste pequeno artigo, conhecemos a origem, a historia, um pequeno exemplo dos diversos componentes. Caso aja maior interação vamos criar mais artigos com uma maior precisão técnica sobre o Online no Mainframe.

Se você trabalha ou pretende trabalhar com mainframe, entender o CICS é essencial. Ele não é apenas uma tecnologia antiga — é uma das engrenagens que fazem o mundo digital girar silenciosamente, 24 horas por dia.

Se quiser saber mais, comente ou me mande mensagem! 📩 Vamos manter o legado vivo e atualizado! 💙💻

#Mainframe #CICS #COBOL #IBM #Tecnologia #TI #Desenvolvimento #Legado #ZOS #Zmainframe #DevMainframe #Modernização

felipe Augusto, Matheus and 1,259 connections are subscribed

2,123 subscribers


CICS no Mainframe: entenda o monitor de transações que sustenta bancos, aéreas e seguradoras, processando milhões de operações online com segurança e alta disponibilidade.