I have a requirement where I have to do a real time sync with an external database and salesforce. Objects that I need to sync Contacts, its notes and events.
I have used Bulk API previously to push data from external database to salesforce and Batch class with http callout to send data from salesforce to external database. I obviously can't use the above combination as it wont be real time.
Callouts are only allowed on future methods if used in triggers and the maximum number of future method invocations per a 24-hour period is 250,000 or the number of user licenses in my organization multiplied by 200, whichever is greater. I think we can reach the future method invocations limit.
Outbound message seems to be a good option to send data from Salesforce to external database but I am not sure if I can send notes from workflow. If I do use workflow how can I receive data from external database without reaching limits or have less probability of reaching any limits.
Has anyone faced this challenge? How did you overcome it? Do let me know if you need more info.