iam new on stackoverflow and this is my first question. Sorry for my typo's or bad gramar, my english is not verry good.
Situation: Iam doing research for a kind API.
We building an system for sending out messages and alerts to end users. Endusers can recieve the messages and alerts on mobilephones over an app (IOS, Android, Windows), over SMS or .........
For this an backend is in development by another team. This backend contains and user interface for add messages or alerts (notifications). This backend contains ALL the notifications. This backend need to push all actual notifications to an API system witch holds only the actual notifications.
This api need to send out an new alert as an push message to the app. Normal messages are not pushed to end devices.
End devices and 3th party users can be ask data (normal messages or alerts) on from the API (with an filter if they are configured) Example: Give me all the messages from the city Heerlen or all messages that contains the word "car".
When there are new messages or alerts inserted in the backend, the backend updates the api data. When the api recieves an new alert, he send out and new push notification for the new alert.
Update--------------------------------------- This all is necessary because the API and the Backend need to be operate separated from eachother. So when the backend goes offline the api will still work. Otherwise when the api goes down the backend still works. END Update---------------------------------------
The api is allways online but don't need to handle a lot of requests. At the moment there is an alert, the api needs to send out 2.000.000 notifications so scalablity is an must! After an alert a lot of requests need to be handled.
Now my questions: - Is there an existing software solution(s) that can be configured or used for my problem? - Can we better build an own solution for this problem, maybe based on an framework? - Are there frameworks that can be used for create an api with this functionality?
THANKS A LOT for understand my bad english, problem and trying to help me ;-)
EDIT---------------------------------------
Maybe this image make my situation a bit better understandable Wished situation image
I think i found some solutions by my self but iam not sure if they can provide my requirements and iam not sure i can use it for my problem.
- Amazon API Gateway
- tyk.io
- WSO2
END EDIT---------------------------------------