notifyOn do LaserStream permite que uma assinatura de conta gRPC ignore atualizações para contas que uma transação bloqueou para escrita mas nunca escreveu. O mesmo filtro está disponível nos métodos WebSocket accountSubscribe e programSubscribe — veja Filtragem notifyOn sobre WebSocket.
O problema: bloqueios de escrita geram atualizações duplicadas
No Solana, o validador emite uma atualização de conta para cada conta que uma transação bloqueia para escrita — mesmo quando nenhuma instrução realmente escreveu na conta, então seus lamports e dados permanecem inalterados. Para contas movimentadas, isso significa um fluxo constante de notificações duplicadas de “nada mudou” que consomem largura de banda sem trazer novas informações.Modos de filtro
notifyOn aceita um de dois valores:
Dois detalhes que vale a pena saber:
- Uma escrita de dados idênticos ainda conta como escrita e é entregue.
writefiltra apenas toques de bloqueio, não escritas que deixam os mesmos bytes. Na prática, essas escritas de dados idênticos são raras — menos de 5% das atualizações na maioria dos casos. - As atualizações que
writeelimina são duplicatas exatas do estado que você já recebeu. Se você depende de atualizações como um sinal de “esta conta foi bloqueada por uma transação” (por exemplo, rastreamento de atividade), permaneça emlock.
Use no LaserStream gRPC
DefinanotifyOn em um filtro de contas no seu SubscribeRequest:
notify_on: NotifyOn::Write as i32. No nível da rede, este é o campo notify_on de SubscribeRequestFilterAccounts (proto tag 31), com valores enum NOTIFY_ON_LOCK (0, o padrão) e NOTIFY_ON_WRITE (1). Veja a referência de Solicitação de Inscrição para cada campo de filtro de contas.
No gRPC, notifyOn é uma extensão Helius disponível através do Helius LaserStream SDK — clientes Yellowstone padrão não expõem o campo.
Relacionados
Referência de Solicitação de Inscrição
Todo campo de filtro de contas gRPC, incluindo
notifyOn.Filtragem notifyOn (WebSocket)
O mesmo campo
notifyOn em accountSubscribe e programSubscribe.Guia de Assinaturas de Contas
Estratégias de filtragem e exemplos executáveis de monitoramento de contas via gRPC.
Filtragem de Conta de Token (ATA)
Combinando transações que tocam nas contas de token que uma carteira possui.