Web Application Architecture: 1 or n API

Background: I am thinking of organizing web applications. I separate the front (website for the browser) from the back (API): 2 applications, 2 repositories, 2 hosting. The front will call the API for almost everyone.

So, if I have two separate domain services with my API (example: learning context and booking context) without a direct link between them, should I build 2 APIs (with 2 repositories, 2 build processes, etc.)? Is it good practice to create an API nfor your needs nor one “big” API? I am talking about a substantial web application with trafic.

(I hope this question will not be closed as not constructive ... I think this is a real question for a specific case, sorry if not. This question and some others about architecture were not closed, so there is hope for mine)

+4
source share
1 answer

It all depends on the application you are working on, its business needs, priorities, etc. Usually you have several options:

  • Stay with one monolithic application
  • Stay with one monolithic application, but separate the domain model from individual modules / packs / libraries.
  • Create a distributed architecture (e.g., service oriented architecture (SOA) or event-driven architecture (EDA))

. , . , .

, . , , / ( ). QA , CI. , Continuous Integration/Delivery/Deployment, .

repo/build API,

,

, . , .

(QA, dev) , . , .

API, dev- , .

(SOA/EDA)

SOA . : dev, QA, . . . QA , . (API) , . , .

, . , : / , , , .. ( , API ), - ( , , ).

API, " " ( , , / ).


, , . , , , API , . , API . / (, ).

, , .

Best!

+1

All Articles