Browsing tag

Queueable

Apex assíncrono – Queueable – Parte 2

Dando continuidade a série de posts sobre Apex Assíncrono, hoje falaremos sobre as classes Queueable, podemos dizer que as Queueable são uma evolução dos métodos futuros, pois nos permite ter controle da fila de execução. Se você não leu o post sobre métodos futuros, sugiro que de uma pausa nessa leitura, e de uma olhada nesse post. O que são classes Queueable? Podemos dizer que as classes Queueable são uma evolução dos métodos futuros, pois além de nos permitir realizar a execução de trabalhos do Apex assíncronos, também nos da um limite maior de governança da sua org, permitindo por exemplo a execução de mais SOQL dentro de uma mesma execução de processo do Apex, além de um limite de heap maior, e assim como os métodos futuros, as classes Queueable são executadas assim que a plataforma Salesforce considera que existem recursos livres para execução. Quando você adiciona uma classe Queueable a fila de execução, você recebe um ID único, isso nos permite obter um controle maior da fila de processos, permitindo obter o status do processo na fila, esses dados ficam no objeto AsyncApexJob, e com base no Id que recebemos podemos fazer uma consulta SOQL para obter mais […]

Apex assíncrono – Future Methods – Parte 1

Apex assíncronos, são eles: Future Methods, Queueable, Batch e Scheduled, este post será uma série dividida em 4 posts, e vamos começar falando dos Future Methods (Métodos futuros), quando usar, exemplos práticos, e cobertura de classe de testes. O que é um Future Methods? O Apex oferece várias maneiras de executar seu código Apex de forma assíncrona, uma delas são os Future Methods, e por ele ser assíncrono, você simplesmente não pode controlar quando o mesmo será executado, ele é controlado pela plataforma Salesforce, é a plataforma que escolhe o melhor momento para a execução de um trecho de código do Apex em um Future Method e essa execução são levadas em consideração a disponibilidades de recurso disponíveis na sua org no momento de solicitação de execução. Um dos grandes benefício de usar Future Methods é que alguns limites de governança são maiores, como por exemplo o limites de consulta SOQL e limites de tamanho de heap. Quando usar um Future Methods? Quando você tem um processo demorado e precisa prevenir atrasos em sua transação Apex Quando você realiza chamada a serviços da Web externos (Por exemplo uma consulta a base de CEP de um serviço REST) Para segregar operações DML […]