Challenge 1: Designing an image resize API
You decide to create an API for other developers to use where you can resize images for them.
Developers would pass to your API the url of their image (hosted somewhere on the internet by them), and specify the new hight of the image, as well as what file format they want the resized image to be.
Using the principles and process outlined in the earlier video, please answer the following 5 questions for EACH of the micro-service you would design:
- What language/framework would you use to this?
- Why did you pick that particular language/framework?
- Where you would store the data? Would you have relational, non-relational, or something else? If you're going to have a relational or non-relational database, create the database table diagram (using Excel spreadsheet or using tools such as MySQL workbench to create a full Entity Relation Diagram), upload to Github and share a link to your Github repo that has either a PDF or an image of your database diagram.
- Would you use Github flow or Git flow for managing your source code?
- (Optional if you have multiple apps/services) What tools would you use to manage your multiple apps/containers?
Please do an in-depth dive into these 5 questions and provide your thoughtful rseponse below.