Content linked to presentation "Go Serverless with Salesforce Platform Events using AWS Lambda" first presented at London's calling in March 2020.
- Records changes in Salesforce
- Event is being published to Platform Event or CDC topic
- AWS subscribes to Salesforce event and forwards it to SNS Event
- Serverless Lambda function executes for every new event and processes data: a) Connect to other AWS Services b) Process Large volumes of data c) Callouts to other external systems d) Multi Programming Language
- Identify objects/records which require external processing
- Set up automation to fire events a) (High-Volumne) Platform Event + Automation c) Change Data Capture (CDC)
- Set up Connected App to allow external connection / subscription
- Create AWS Account
- Create SNS Topic
- Create AWS Lambda Subscriber function (via CometD to Event Bus) to republish to AWS SNS Topic (review /aws-src/sfdcCometdSubscriber)
- Move Lambda Dependencies (node / npm) into a Lambda Layer (review and upload /aws-src/nforce-layer)
- Add AWS Lambda Execute access to Role
- Use Lambda Layers to handle Libraries (i.e. store ‘nForce’ - a nodeJS Salesforce)
- Store SF Authentication in Env Vars
- Schedule Lambda Subscriber Function every 15min
- Go Serverless: Subscribe to AWS SNS Topic using Lambda (review /aws-src/sfdcProcessComprehend)
- Lambda to handle Serverless processing
- AWS SDK: unofficial by Community https://github.com/bigassforce/aws-sdk
- nForce: NodeJS Library for Salesforce https://github.com/kevinohara80/nforce
- AWS for SF Integration Developers https://aws.amazon.com/featured-partners/Salesforce/Developers