I've spent months building a platform to support my development of scalable web applications. In this video, I try to share the learning process.
My personal website has a lot behind the scenes that most people cannot interact with. I've written up a few microservices and decided to deploy them on kubernetes. Some may say that what I've done is overkill - but it really does simplify the workflow once its setup (and I don't have to rewrite my codebase in the future!)
The end result:
- Kubernetes cluster on digital ocean.. 3 nodes, a load balancer, and persistent volume
- nginx-ingress controller exposes services to the outside world (all other services are internal)
Microservices:
- jwt authentication server (security)
- hangfire background processing server
- MySQL database
- mailer
- front end
There is still a lot of work to be done. While most services are scalable - the database is not. Currently, our database is a single instance. I think someday I will need to deploy a MySQL cluster to support replication, etc. This was a massive topic to cover in a single video so I could not explain everything, my hope is that people can take what they see and research further.
Technologies Used:
- CPU Intensive Backend: C# with ASP .NET Core
- Simple I/O Intensive Backend: Node js
- Database: MySQL
- Scheduler: Hangfire open source background processing library
- Authentication: JWT backed by Dotnet Identity
- Mailing Service: Sendgrid
- Integrations: KZitem, Github
- Deployment: Docker images w/ Kubernetes
- Front end: Next js / React
Hangfire (background processing): • Learning a new Program...
KZitem Descriptions Updater: • Coding a KZitem Descr...
Next Video: • Hacking the KZitem Al...
Previous Video: • Why I'm not in School
Social
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Website: devoncrawford.io
Twitter: / devoncrawford13
Snapchat: / devoncrawfordyt
Instagram: / devoncrawford_
Github: github.com/devoncrawford
Discord: / discord
Gear
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
- Video Editing Software (Premiere Pro CC): prf.hn/l/BOomWo3
- All Adobe Apps (I use this plan): prf.hn/l/Xv5qk5Q
- Keyboard (Velocifire TKL01): amzn.to/2AQTjJQ
- Monitors (Dell U2518D) : amzn.to/2AQQmco
- Webcam (Logitech C920): amzn.to/2Cw588c
- Desk Microphone (Blue Yeti): amzn.to/2FPFmzi
- DSLR (Canon T7i): amzn.to/2T54mpZ
- Wide Lens (Tokina 11-16mm F2.8): amzn.to/2MlpvcO
Music
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Puar - GEMS W/ sin
Link: / gems-w-sin
bob le head - gapintheclouds [ep] @ 6:52
Link: / gapintheclouds-ep
dis.joint - knock
Link: / knock-3
A L E X - Easy Track (part of Growing Up, Vol.2)
Link: beatsupply.fanlink.to/growing...
Негізгі бет Ғылым және технология Platform for Scalable Web Apps | How I built my website with Kubernetes
Пікірлер: 1,3 М.