watch.interface vs. cache.newinformer vs. cache.newsharedIndexinformer: diferenças e quando usar
kubernes oferece várias abordagens para monitoramento e resposta para recursos para recursos. Estes incluem:
- watch.interface.resultchan (): Este método permite monitorar as alterações em um recurso assinando um resultado. Este canal fornece eventos adicionados/modificados/excluídos para o recurso, fornecendo atualizações em tempo real em seu estado. Isso configura um informante que aciona os retornos de chamada de Onadd ()/OnUpDate ()/ondElete () no manipulador quando ocorrem alterações de recursos. Ele fornece os estados "antes" e "depois" do recurso, tornando -o útil para lidar com transições de estado. Eles introduzem um SharedInformerFactory, que consolida conexões com o servidor da API e compartilha recursos entre vários informantes. Além disso, o cache.newsharedIndexinformer adiciona indexação ao cache de dados para recuperação eficiente de grandes conjuntos de dados. Em geral, os informantes (cache.newinformer ()) são preferidos no relógio bruto.interface para a maioria dos casos de uso. Eles fornecem um nível mais alto de abstração e automatizam tarefas como eventos de filtragem e fila. SharedIndexInformers (cache.newsharedIndexInformer ()) são particularmente úteis para lidar com grandes conjuntos de dados, pois aprimoram a pesquisa e a recuperação. Isso garante compartilhamento de recursos, manuseio eficiente de grandes conjuntos de dados e uma visão consistente do estado do cluster.