Hi Folks There's a concept I'm trying to wrap my brain around. It's similar to MVC, separating responsibilities between the display and model/controller layers. In terms of coding, I know how to make that happen. However, in terms of server architecture, I do not.
For the purposes of semantics, please assume "server" refers to either a physical box and/or software service, application, container, etc. Let's say we have a database server and Tomcat application server. The web application uses JSP. The app is configured to connect to the DB. With this configuration, all the communication with the DB and page rendering occurs within the Tomcat application. Now let's say that we want the Tomcat application to only do rendering. It connects to a different server, X, and no longer to the DB. The X server connects to the DB. Requests and data flow between the Tomcat app and the X server. What is X? Is it a web service? Application behind a web socket? What platforms support those? Is that what the whole SOAP, xml, and JSON stuff is for? And why do it? Are there any benefits to such an architecture? Scaling maybe? Support for rendering different output types (HTML vs Something Else)? Theoretically I'm thinking that maybe the different servers could live inside different security zones, but I don't know if that's a valid requirement. Thanks for your time and patience. :-) -- Cris Berneburg CACI Lead Software Engineer