Asynchronous Apex Batch
Batch Apex is usually used to build complex, long-running processes that run on thousands of records(large data volume till 50 million records), at any specific time. Go through to get concrete understanding.
Use Database.releaseSavepoint and allow HttpCallouts after DML
Making any callout after a DML statement throws CalloutException. In Sprint ’24, Salesforce introduced a new Database.releaseSavepoint method to resolve this explicitly releasing savepoints before making a callout.