Any Service Any Time
Michael Vogler, CEO of Arizona’s Best Homecare, originally came to Fyresite with an ambitious plan to provide on-demand care for elderly and differently-abled individuals. The initial idea would allow customers to connect to caregivers on demand. However, as the project grew, Fyresite and ZINKN developed it into a fully-fledged all-in-one service app. Now, users can save time by outsourcing tasks to providers.
The Challenge
One of the biggest challenges of the ZINKN app was its size–the spec sheet alone was more than 70 pages. Since tackling the backend infrastructure wouldn’t be easy, Fyresite broke the project into multiple smaller challenges.
For starters, the project needed resilient APIs. Both the customer app and the provider app needed to submit or receive requests and dynamic content, so the backend systems had to be flawless. To construct the best possible solution, Fyresite used AWS.
A Scalable API with Lambda and API Gateway
Each ZINKN user is either giving or receiving a service. Each customer would retrieve dynamic content through a User API. Meanwhile, providers would access content with the Job API. At the fundamental level, each API would connect the user to the database with API Gateway and Lambda, as illustrated in the diagram below.
First, the job owners needed to connect to the cloud. For that purpose, Fyresite turned to Amazon API Gateway. This fully-managed service lets developers create REST and WebSocket APIs, which bridge the user’s device to the rest of the application. The service was most useful to ZINKN because of its scalability. Since Amazon API gateway can handle thousands of API calls at once, ZINKN would have no trouble scaling.
Another major benefit of Amazon API Gateway was the pricing model. Since Amazon only charges by API call, ZINKN only had to pay for the resources that were used. This API Gateway pricing model synergizes especially well with Lambda, which has a similar pay-as-you-go model.
However, the Job API didn’t stop at the Gateway. The next step was to connect the user to the database. For that, Fyresite used Lambda. AWS Lambda is a “serverless” solution for running virtual code in the cloud. When a job owner wants to access information, Lambda triggers. It then retrieves dynamic job data from RDS and returns it to the user. Like the API gateway, Lambda scales continuously based on the size of the workload. If Lambda doesn’t trigger, ZINKN doesn’t have to pay. And if ZINKN receives much more traffic than expected, Lambda can handle it. It synergizes beautifully with both Amazon API gateway and Amazon RDS.
Thanks to these AWS services, ZINKN became a much more robust application. It could scale efficiently and handle whatever the users threw at it.
AWS Services Utilized in project: DynamoDB, Lambda, Cloudfront, S3, Cognito, RDS Aurora, CloudFormation