A podcast featuring panelists of engineers from Netflix, Twitch, & Atlassian talking over drinks about all things software engineering.
…
continue reading
Treść dostarczona przez Jeremy Jung. Cała zawartość podcastów, w tym odcinki, grafika i opisy podcastów, jest przesyłana i udostępniana bezpośrednio przez Jeremy Jung lub jego partnera na platformie podcastów. Jeśli uważasz, że ktoś wykorzystuje Twoje dzieło chronione prawem autorskim bez Twojej zgody, możesz postępować zgodnie z procedurą opisaną tutaj https://pl.player.fm/legal.
Player FM - aplikacja do podcastów
Przejdź do trybu offline z Player FM !
Przejdź do trybu offline z Player FM !
Rebuilding Fathom Analytics on Serverless Infrastructure with Jack Ellis
MP3•Źródło odcinka
Manage episode 261315578 series 2668668
Treść dostarczona przez Jeremy Jung. Cała zawartość podcastów, w tym odcinki, grafika i opisy podcastów, jest przesyłana i udostępniana bezpośrednio przez Jeremy Jung lub jego partnera na platformie podcastów. Jeśli uważasz, że ktoś wykorzystuje Twoje dzieło chronione prawem autorskim bez Twojej zgody, możesz postępować zgodnie z procedurą opisaną tutaj https://pl.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 odcinków
MP3•Źródło odcinka
Manage episode 261315578 series 2668668
Treść dostarczona przez Jeremy Jung. Cała zawartość podcastów, w tym odcinki, grafika i opisy podcastów, jest przesyłana i udostępniana bezpośrednio przez Jeremy Jung lub jego partnera na platformie podcastów. Jeśli uważasz, że ktoś wykorzystuje Twoje dzieło chronione prawem autorskim bez Twojej zgody, możesz postępować zgodnie z procedurą opisaną tutaj https://pl.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 odcinków
すべてのエピソード
×Zapraszamy w Player FM
Odtwarzacz FM skanuje sieć w poszukiwaniu wysokiej jakości podcastów, abyś mógł się nią cieszyć już teraz. To najlepsza aplikacja do podcastów, działająca na Androidzie, iPhonie i Internecie. Zarejestruj się, aby zsynchronizować subskrypcje na różnych urządzeniach.