Al implementar un sitio web / aplicación web, ¿debo colocar la aplicación y la API en el mismo servidor?

Suponiendo que la API en cuestión no es parte del código del sitio web, el problema con ponerlos en diferentes servidores es que si un servidor se vuelve inaccesible (problemas de ruta, un servidor inactivo, etc.), el sitio puede estar allí, pero la API no estará, o la API puede estar allí, pero el código al que llama no estará. Y ese es solo un dolor de cabeza más del que debes preocuparte.

A menos que esté hablando de un sitio tan grande y tan utilizado que incluso un servidor privado con unas pocas CPU de 4 núcleos tendría un problema. Luego contrata a un equipo de programadores para resolver esa parte. (Por ejemplo, CNN tiene problemas a veces, cuando las noticias importantes están llegando y la gente sigue actualizando sus navegadores en cnn.com. Pero contratar a otros 10 programadores experimentados en unas pocas horas no es gran cosa si tienes ese tipo de servidor, y ese tipo de dinero, que lo harás si tienes ese tipo de servidor).

No necesariamente, puede colocarlos en diferentes servidores. Colocarlos en el mismo servidor reduciría el tiempo necesario para recuperar los resultados de la API.