Invalidação de cache do launchpad
Invalidação de cache do launchpad é o conjunto de reports e passos que limpa os caches do SAP Fiori launchpad, principalmente o cache UI2 no servidor, com /UI2/INVALIDATE_GLOBAL_CACHES, e os recursos no navegador, com /UI2/INVALIDATE_CLIENT_CACHES. A invalidação de cache do launchpad é uma correção pontual para conteúdo desatualizado após transportes, upgrades ou support packages, e não um primeiro passo de rotina.
Resumo
- Tipo
- Procedimento de administração (reports e transações ABAP)
- Camada
- Conteúdo, navegação e acesso
- Cache UI2 no servidor
- Report /UI2/INVALIDATE_GLOBAL_CACHES; transação /UI2/INVAL_CACHES
- Caches do cliente
- Programa /UI2/INVALIDATE_CLIENT_CACHES, para todos os usuários ou um usuário
- Evita apps desatualizados
- /UI5/APP_INDEX_CALCULATE agendado (tokens de cache buster)
- Quem executa
- Administradores de basis e do launchpad
- Aplica-se a
- SAP S/4HANA on-premise e Private Edition (front-end server ABAP)
Camada: Conteúdo, navegação e acessoOnde se encaixa ▾
Camada: Conteúdo, navegação e acesso
Abrir o mapa de arquitetura →Quais caches o SAP Fiori launchpad usa?
Três caches podem guardar conteúdo desatualizado do launchpad:
- Cache UI2 no servidor, no front-end server, para os próprios serviços do launchpad, como montagem de páginas e personalização. O sistema o invalida automaticamente quando muda uma configuração de tile ou de catálogo, uma role PFCG, um conteúdo da LPD_CUST ou um app SAPUI5.
- Cache do navegador, para recursos SAPUI5, código dos apps, target mappings e metadados OData. Os tokens de cache buster nas URLs dos recursos fazem o navegador recarregar apenas o que mudou no servidor.
- Cache de metadados do SAP Gateway, para os modelos dos serviços OData, limpo separadamente com /IWFND/CACHE_CLEANUP e /IWBEP/CACHE_CLEANUP.
Saber qual dos três guarda os dados desatualizados define qual passo de invalidação de cache do launchpad é necessário.
Quando limpar os caches do launchpad?
A posição da SAP é que a invalidação manual do cache UI2 normalmente não deveria ser necessária, porque as alterações a disparam automaticamente. Limpar caches se justifica quando:
- um catálogo ou app transportado não aparece, embora as roles e o conteúdo estejam corretos;
- foi aplicado um support package, uma nota SAPUI5 ou um upgrade de release;
- os usuários veem o comportamento antigo de um app após uma implantação, e o índice de aplicações SAPUI5 não foi recalculado.
Não limpe caches por reflexo a cada tile ausente. Um catálogo ausente na role ou um target mapping sem o tipo de dispositivo do usuário produz o mesmo sintoma, e a /UI2/FLIA encontra esses casos em minutos. A invalidação de cache do launchpad corrige dados desatualizados, não conteúdo errado.
Como limpar os caches do launchpad passo a passo?
Depois que a Alder Manufacturing importa um support package no seu front-end server:
- Execute o /UI5/APP_INDEX_CALCULATE, ou confirme que o job agendado foi executado, para que os tokens de cache buster reflitam as novas versões dos apps.
- Execute o /UI2/INVALIDATE_GLOBAL_CACHES na SE38, ou a transação /UI2/INVAL_CACHES, para invalidar todos os caches UI2.
- Se necessário, execute o /UI2/INVALIDATE_CLIENT_CACHES na SE38, para todos os usuários ou um usuário. Invalidar os caches de outros usuários exige a role SAP_UI2_ADMIN_700.
- Execute o /UI2/DELETE_CACHE_AFTER_IMP após a importação, se o guia de upgrade do seu release o listar.
- Limpe o cache de metadados do SAP Gateway se os serviços OData tiverem mudado.
- Peça aos usuários afetados que recarreguem a página, ou limpe o cache do navegador se os sintomas persistirem.
Cada invalidação de cache do cliente é registrada no log de aplicação (SLG1). Seguir essa ordem torna a invalidação de cache do launchpad previsível, em vez de tentativa e erro.
O que o /UI2/INVALIDATE_CLIENT_CACHES faz de fato?
O /UI2/INVALIDATE_CLIENT_CACHES renova o token global de cache buster. Desde que a SAP introduziu o cache busting específico por aplicação, os apps SAP Fiori no repositório SAPUI5 recebem tokens próprios a partir do índice de aplicações SAPUI5, e o navegador recarrega um app apenas quando ele mudou. O token global ainda cobre:
- dados das próprias requisições OData do launchpad, como target mappings e personalização;
- recursos SAPUI5 clássicos que não são componentes, por exemplo algumas implementações de tiles customizados;
- apps ausentes de um índice de aplicações incompleto.
Por isso, a SAP descreve a execução do /UI2/INVALIDATE_CLIENT_CACHES como necessária apenas em casos excepcionais. Com um índice de aplicações agendado regularmente, o /UI2/INVALIDATE_CLIENT_CACHES raramente é necessário.
Cache UI2 vs. cache do cliente vs. cache de metadados do Gateway: qual é a diferença?
| Cache UI2 no servidor | Cache do cliente (navegador) | Cache de metadados do SAP Gateway | |
|---|---|---|---|
| Guarda | Dados dos serviços do launchpad no front-end server | Recursos SAPUI5, target mappings, metadados OData | Modelos de serviço e de anotações OData |
| Limpo com | /UI2/INVALIDATE_GLOBAL_CACHES ou /UI2/INVAL_CACHES | /UI2/INVALIDATE_CLIENT_CACHES; recarregar o navegador | /IWFND/CACHE_CLEANUP, /IWBEP/CACHE_CLEANUP |
| Atualizado automaticamente por | Alterações em roles, catálogos, LPD_CUST, apps | Tokens de cache buster | Handshake de timestamp do modelo |
| Gatilho típico para limpar | Conteúdo transportado não visível | Versão antiga do app após a implantação | Modelo de serviço ou anotações alterados |
Cada cache tem sua própria limpeza; limpar o cache errado deixa os dados desatualizados no lugar.
Perguntas frequentes
O /UI2/INVALIDATE_GLOBAL_CACHES é uma transação ou um report?
O /UI2/INVALIDATE_GLOBAL_CACHES é um report ABAP, iniciado na SE38. A SAP também documenta a transação /UI2/INVAL_CACHES para invalidar todos os caches UI2. Executar qualquer um dos dois no front-end server limpa os caches do launchpad no servidor, não o cache do navegador.
Limpar o cache desconecta os usuários ou apaga a personalização?
Não há descrição de logout. A invalidação força o launchpad a reconstruir os dados em cache a partir do servidor, por isso a próxima inicialização pode ser mais lenta. Os caches do cliente guardam dados do launchpad, como target mappings e dados de personalização vindos de requisições OData, então o launchpad solicita esses dados novamente ao servidor.
Por que os usuários ainda veem o tile antigo depois que limpei os caches?
Provavelmente o próprio conteúdo está errado, e não desatualizado. Verifique se o catálogo está na role do usuário, se o target mapping aceita o tipo de dispositivo e se uma camada de customizing não esconde o novo conteúdo de configuração. A /UI2/FLIA mostra qual conteúdo o launchpad de fato resolve.
Como ver por que o cache UI2 foi invalidado?
O Cache Statistics Utility, transação /UI2/CSU, mostra com que frequência os dados são lidos do cache e por que o cache foi invalidado. Ele ajuda quando os usuários relatam inicializações lentas do launchpad após invalidações frequentes.
Fontes
- SAP Help Portal: Resolving Caching Problems and Invalidating Client Caches
- SAP Help Portal: Server-Side Cache (SAP Fiori launchpad)
- SAP Help Portal: Cache Buster for SAP Fiori Launchpad and SAP Fiori Apps
- SAP Help Portal: New App in Catalog Does Not Appear on the SAP Fiori Launchpad (SAP S/4HANA)
- Aplica-se a
- SAP S/4HANA on-premise · SAP S/4HANA Cloud Private Edition
- Última revisão