A podcast featuring panelists of engineers from Netflix, Twitch, & Atlassian talking over drinks about all things software engineering.
…
continue reading
תוכן מסופק על ידי Jeremy Jung. כל תוכן הפודקאסטים כולל פרקים, גרפיקה ותיאורי פודקאסטים מועלים ומסופקים ישירות על ידי Jeremy Jung או שותף פלטפורמת הפודקאסט שלהם. אם אתה מאמין שמישהו משתמש ביצירה שלך המוגנת בזכויות יוצרים ללא רשותך, אתה יכול לעקוב אחר התהליך המתואר כאן https://he.player.fm/legal.
Player FM - אפליקציית פודקאסט
התחל במצב לא מקוון עם האפליקציה Player FM !
התחל במצב לא מקוון עם האפליקציה Player FM !
Rebuilding Fathom Analytics on Serverless Infrastructure with Jack Ellis
MP3•בית הפרקים
Manage episode 261315578 series 2668668
תוכן מסופק על ידי Jeremy Jung. כל תוכן הפודקאסטים כולל פרקים, גרפיקה ותיאורי פודקאסטים מועלים ומסופקים ישירות על ידי Jeremy Jung או שותף פלטפורמת הפודקאסט שלהם. אם אתה מאמין שמישהו משתמש ביצירה שלך המוגנת בזכויות יוצרים ללא רשותך, אתה יכול לעקוב אחר התהליך המתואר כאן https://he.player.fm/legal.
Jack Ellis
Fathom Analytics
- Fathom Analytics (SAAS version, Affiliate link with $10 discount)
- Fathom Lite (Open-source, original Golang version)
- We rebuilt Fathom Analytics from the ground up and moved to Laravel Vapor
- How we built a GDPR compliant website analytics platform without using cookies
Laravel
- Laravel (PHP web framework)
- Laravel Vapor (Serverless provisioning and deployment tool)
Hosting Providers
- Digital Ocean (Host for Open-source version)
- Heroku (Host for 1st rewrite)
- AWS (Host for 2nd rewrite)
AWS Services Used
- ElastiCache (Redis)
- Elastic Load Balancing (Handles web requests and triggers Lambda functions)
- Relational Database Service (MySQL)
- Simple Queue Service (Message Queue)
- Lambda (Run functions without managing a server)
Other Links
- Things you should never do (Post Jack mentions on never rewriting software)
Timestamps
- [00:00:58] What's Fathom Analytics and how is it different from Google Analytics?
- [00:03:35] When was the project started?
- [00:06:00] Limiting what we know about our users
- [00:08:11] Tracking unique page views without cookies
- [00:11:50] The original Open Source Golang version of Fathom
- [00:14:06] The case for rewriting Fathom
- [00:17:46] The process of rewriting Fathom
- [00:20:49] Migrating from individual SQLite instances to multitenant MySQL
- [00:24:10] Working with DNS Caching, running the old and new application simultaneously while migrating
- [00:26:40] Moving from Digital Ocean, to Heroku, to AWS (using Laravel Vapor)
- [00:34:07] What's Laravel Vapor? (Provisioning and deployment tool for AWS serverless offerings)
- [00:37:06] Comparing how Fathom used Heroku vs AWS (Heroku Redis -> ElasticCache + SQS, Web/Worker Dynos -> SQS + Lambda functions)
- [00:40:25] Moving from Heroku Web/Worker dynos to Lambda functions
- [00:42:25] Using Elastic Load Balancer instead of API Gateway
- [00:44:01] Tracking load, downtime, maintaining availability
- [00:51:22] Walkthrough of what happens when a user visits a site running Fathom
- [00:52:50] Dealing with the AWS lambda cold start problem
- [00:54:04] Why serverless was a good fit and when to use it
Theme music is 12:30 AM by Crystal Cola.
56 פרקים
MP3•בית הפרקים
Manage episode 261315578 series 2668668
תוכן מסופק על ידי Jeremy Jung. כל תוכן הפודקאסטים כולל פרקים, גרפיקה ותיאורי פודקאסטים מועלים ומסופקים ישירות על ידי Jeremy Jung או שותף פלטפורמת הפודקאסט שלהם. אם אתה מאמין שמישהו משתמש ביצירה שלך המוגנת בזכויות יוצרים ללא רשותך, אתה יכול לעקוב אחר התהליך המתואר כאן https://he.player.fm/legal.
Jack Ellis
Fathom Analytics
- Fathom Analytics (SAAS version, Affiliate link with $10 discount)
- Fathom Lite (Open-source, original Golang version)
- We rebuilt Fathom Analytics from the ground up and moved to Laravel Vapor
- How we built a GDPR compliant website analytics platform without using cookies
Laravel
- Laravel (PHP web framework)
- Laravel Vapor (Serverless provisioning and deployment tool)
Hosting Providers
- Digital Ocean (Host for Open-source version)
- Heroku (Host for 1st rewrite)
- AWS (Host for 2nd rewrite)
AWS Services Used
- ElastiCache (Redis)
- Elastic Load Balancing (Handles web requests and triggers Lambda functions)
- Relational Database Service (MySQL)
- Simple Queue Service (Message Queue)
- Lambda (Run functions without managing a server)
Other Links
- Things you should never do (Post Jack mentions on never rewriting software)
Timestamps
- [00:00:58] What's Fathom Analytics and how is it different from Google Analytics?
- [00:03:35] When was the project started?
- [00:06:00] Limiting what we know about our users
- [00:08:11] Tracking unique page views without cookies
- [00:11:50] The original Open Source Golang version of Fathom
- [00:14:06] The case for rewriting Fathom
- [00:17:46] The process of rewriting Fathom
- [00:20:49] Migrating from individual SQLite instances to multitenant MySQL
- [00:24:10] Working with DNS Caching, running the old and new application simultaneously while migrating
- [00:26:40] Moving from Digital Ocean, to Heroku, to AWS (using Laravel Vapor)
- [00:34:07] What's Laravel Vapor? (Provisioning and deployment tool for AWS serverless offerings)
- [00:37:06] Comparing how Fathom used Heroku vs AWS (Heroku Redis -> ElasticCache + SQS, Web/Worker Dynos -> SQS + Lambda functions)
- [00:40:25] Moving from Heroku Web/Worker dynos to Lambda functions
- [00:42:25] Using Elastic Load Balancer instead of API Gateway
- [00:44:01] Tracking load, downtime, maintaining availability
- [00:51:22] Walkthrough of what happens when a user visits a site running Fathom
- [00:52:50] Dealing with the AWS lambda cold start problem
- [00:54:04] Why serverless was a good fit and when to use it
Theme music is 12:30 AM by Crystal Cola.
56 פרקים
כל הפרקים
×ברוכים הבאים אל Player FM!
Player FM סורק את האינטרנט עבור פודקאסטים באיכות גבוהה בשבילכם כדי שתהנו מהם כרגע. זה יישום הפודקאסט הטוב ביותר והוא עובד על אנדרואיד, iPhone ואינטרנט. הירשמו לסנכרון מנויים במכשירים שונים.