Stefan Nicol wrote:
"99 percent of all messages to be constructed and sent in three seconds or less to the IP address of the API server".
Since it's an assignment, not real life project. Yet 3s requirement is reasonable, given you only mentioned outbound (one way).
Is caching a possible solution? Sure why not. But if I were you caching is not a very good solution. Hint: network and data
Stefan Nicol wrote:
If I give a specific H/W profile how can I prove that it will fulfill the performance requirement from above?
You don't whatever profile you say is just an estimate, even in real life when buying servers. Of course your app/DB server may need more CPU and RAM while web server minimal. It is the entire architecture or should I say infrastructure that determine whether the performance will be met. Remember servers/resources can be scalable.