-2

I am confused about which architecture I should choose.

I have to work with three 3rd part APIs. But each of the three has only 5 get APIS.

And we have a plan to move to serverless deployment. (https://aws.amazon.com/fargate)

My question is which architecture is best for this.

Monolith:

All three 3rd party APIs are very small. So there is no more complexity. So Can I choose Monolith? Can I implement all 3rd party APIs inside one project?

If I choose Monolith, is this suitable for serverless deployment? In the future, we are planning to move serverless.

ArchRanger
  • 69
  • 1
  • 8
hanushi
  • 1,169
  • 2
  • 12
  • 27

2 Answers2

1

It depends

So there are various ways of looking at this, but in the end, it depends is the best answer, let me put in perspective some of the things which you must consider before you decide on a single solution:

  1. Why are you moving to a serverless deployment in the future? Is it because you don't want to be bothered about managing your workload or is it because you have a highly varying traffic to your API service?
  2. Do the 3 APIs serve the same purpose? If no then is it expected that they will face the same amount of traffic at the same time or do they have variable rates of traffic across the 3?
  3. Do you plan on updating them continuously in the future? All 3 at the same time? Or do you plan on doing it one by one?
  4. How often are you going to update them?
  5. Are these API calls compute intensive?

This list can go on, but answering these questions will help you choose better.

  • 1. I don't want to be bothered about managing your workload 2. not same purpose. 3. no not continuously updating. They are very small. updating also very simple 4. may be once three months 5. API 1 - Weather related API 2 - Time related API 3 - Google map – hanushi Sep 26 '22 at 09:16
  • From what I know so far, I think using a monolithic architecture for the time being will suit you the best. – Varad Karpe Sep 26 '22 at 09:44
0

It depends on the size and complexity of the project and the usage statistics. Microservices scale better and they are easier to maintain. Though you can start with monolith and if the project grows to a certain size you can refactor or redesign it to have microservices.

inf3rno
  • 24,976
  • 11
  • 115
  • 197