Recap and Feedback
In the ninth and final part of the course, we briefly looked into setting up a machine learning model in a container and using it in a web application. We also discussed the possibility of using machine learning models from a third-party service.
In the final parts of the overarching project, you implemented a machine learning API and the client-side functionality for using the machine learning API.
This is the end of the course. At this point, you’ve formed a good understanding of the basics of designing and building scalable web applications, and should be able to apply the concepts and techniques learned in this course to your own projects. More specifically, you’ve learned of:
-
Scalability fundamentals including what scalability means, existing scalability laws, the scale cube, and of architectural patterns for scaling applications.
-
Scalability aspects relating to data including approaches to consistency and data distribution, the role of schema design, indexing and query optimization, and how caching can help with scaling.
-
Server-side scalability patterns including the role of HTTP, caching, traffic distribution and load balancing, and how to scale applications using microservices.
-
Client-side scalability patterns including measuring performance on the client, contemporary frameworks, and what sorts of techniques can be applied to improve client-side performance.
-
Structuring client-side functionality and communication including separating the presentation layer from structured content, managing application state on the client, and what approaches there are for client-server communication.
-
Forming an overview of the application and securing it including what sorts of data can be collected from applications and how to restrict access to the application.
-
Scaling the application using containers and orchestration including how to use containers for scaling applications, how to use orchestration tools like Kubernetes for managing containers, and how to use metrics and autoscaling for scaling applications.
-
Cloud services and serverless computing including how to use cloud services for scaling applications, how to use serverless computing for scaling applications, and how to use cloud-native tools for scaling applications.
-
Using machine learning models in web applications including how to train a machine learning model, how to set up a machine learning model in a container and use it in a web application, and how to use machine learning models from a third-party service.
We hope you enjoyed the course and found it useful!
Now, please, provide feedback on this final part of the course by filling out the feedback form below.