samedi 20 février 2016

Design: Does it make sense to separate the "application server" from the "web server"?

I'd like to build an "application" that'll be consumed by:

  1. Users who go to a website with their browsers to use it.
  2. Integrators who use HTTPS/REST API to interface with it.
  3. Users who run it on their mobile device with a native app.

Putting load balancing or database issues aside for a moment, my initial thought was to architect it with these high level back-end components:

  1. "Application Server" to support both external API for 3rd API integrators (#2 on the top list) and internal API to be consumed by Mobile applications (#3 on the top list) and a single page web application. Let's call this server "app.mycompany.net"
  2. "Website Server" - to support the my company's public website and serve the AngularJS web application pages that make use of the internal API's in "Application Server" to fetch data back an forth.

My motivation is complete separation of front end from back end work.

Is this a popular way to architect this? Does it make sense?

Aucun commentaire:

Enregistrer un commentaire