I have a 2 Glassfish server and a database server on another host. The frontend is running JSP with some Javascript and the backend is using Hibernate to communicate with the database.
The appserver is very resourse intensive so I want to separate the webserver (JSP, View part) and the backend (EJB, Logic part) into different machines.
How do I do this, more practically? The JSP is relying on the EJB to update the view - so should I introduce a rest-api server between the webserver and the appserver so the can communicate? Is this a good architecture?