Our company already use adobe managed services for our contents. We have 1 author n 2 publishers instances and are hosted in adobe managed AWS. We have few REST API's exposed for other applications through author instance. This design have been implemented by adobe common services team. Existing design has 2 major flaws. With increased api calls, author instance performance has gone down. Also, it's not scalable. Additionally, new design should be able to alert consumer if there is any change in the actual asset during/after publish. Please advise best solution for the above problem. If you can share architecture solution diagram for the above solution, that'll be really great.
Could you please provide some more information for the below questions:
What is the nature of the REST API that is exposed for other applications via author? What it actually does?
Is it exposing assets for any external domain?
Ideally the REST API should have been exposed from the publish instance over an ALB which will distribute the load in between the app servers(i.e. 2 publish instance). Author instance should only be used to author, update and manage the content for the website and should not be directly exposed to outside.
I am not sure ehy third party consumer API are fecthing date from Author.
It should be on the publisher to improve performance(configured for end user load but not for author and multiple instance), I think if you move your API to publish then it may work from a performance point of view.
The alert you can set up based on the launcher(jcr or sling even + email service).