Artwork

Content provided by Ryan Hefner. All podcast content including episodes, graphics, and podcast descriptions are uploaded and provided directly by Ryan Hefner or their podcast platform partner. If you believe someone is using your copyrighted work without your permission, you can follow the process outlined here https://ppacc.player.fm/legal.
Player FM - Podcast App
Go offline with the Player FM app!

036 — Pedal to the Metal

13:24
 
Share
 

Manage episode 488925532 series 3572783
Content provided by Ryan Hefner. All podcast content including episodes, graphics, and podcast descriptions are uploaded and provided directly by Ryan Hefner or their podcast platform partner. If you believe someone is using your copyrighted work without your permission, you can follow the process outlined here https://ppacc.player.fm/legal.

Watch the video on YouTube: https://youtu.be/rLRNnlzIOQM

I connected with Vercel this past week to discuss how I could both optimize and try to control the costs that https://www.starterpacks.net was accumulating. I did walk away with some techniques that I will try on the next site I launch on Vercel where I need to try to maintain a consistent bill. Most notably:

  • Fluid Compute is good and does reduce function use/chaos
  • Controlling the cache key to maintain the cache between deploys (when possible)
  • Play with Cache-Control headers to see if it's possible to increase the number of cached edge request hits, and ultimately skip the function rendering for each cached page

So, some good pointers to keep in mind for the next site that takes off on Vercel.

On the client front, it was a busy week, but I was able to play around with writing my own Cache Handler to support the Render deploy of the frontend. I played around with various approaches trying to write a Cache Handler backed by a Redis instance, but ultimately had to back out of that approach since I wasn’t able to fully grasp the life cycle flow for when a cache handler is initialized and abandoned, resulting in either too many Redis connections remaining open and overloading the instance, or clients cleaning themselves up too early and causing errors when get/set methods were called. Instead, I ended up writing a Cache Handler that is using a LRU cache, and it seems to be enough to smooth out the instance, serve things fast, but without all the complexity of the Redis stuff. I might circle back to a Redis-based solution down the road, but the LRU approach seems to be working for now.

After a long week of client work and troubleshooting, I wanted to make progress on something new that I have been putting off for a while, so I sat down on Friday on got the first instance of the open graph images renderer setup and deployed for https://www.opengraphs.com. OpenGraphs is essentially a re-write/re-imagination of a previous service that I wrote and was using to generate open graph images for my projects, but I have some plans to both optimize and expand that previous services vision, and hopefully customers, which I will be focusing on as I continue to build out the admin portions of the app.

Along with getting the OpenGraphs renderer deployed, I was able to publish an update to the library that I use to handle the open graph data in my NextJS sites. You can check it out here: https://github.com/ryanhefner/next-meta

And, don’t think that I have forgot about https://www.skylounge.social. After getting Starter Packs stabilized and no longer sucking money out of my wallet, and getting the OpenGraphs renderer setup and deployed, I should have the headspace available to wrap up a few of the remaining features on Skylounge and start inviting some early people to host sessions on the site and see how well it either does, or does not, work 🤞 More on that to come...

To follow along, you can find me at https://www.ryanhefner.com, follow me on Bluesky @ryanhefner.com (https://bsky.app/profile/ryanhefner.com) and keep up with the show on https://www.allplay.fm and @allplay.fm (https://bsky.app/profile/allplay.fm).

Help yourself, while supporting the show, by trying some of the services that I use, and highly recommend:
Transistor FM (https://transistor.fm/?via=allplay)
Fathom Analytics (https://usefathom.com/ref/EKONBS)

#buildinpublic #podcast #startups #webdevelopment #webdesign #bluesky #indiedev #bootstrapping #indiehackers

  continue reading

37 episodes

Artwork
iconShare
 
Manage episode 488925532 series 3572783
Content provided by Ryan Hefner. All podcast content including episodes, graphics, and podcast descriptions are uploaded and provided directly by Ryan Hefner or their podcast platform partner. If you believe someone is using your copyrighted work without your permission, you can follow the process outlined here https://ppacc.player.fm/legal.

Watch the video on YouTube: https://youtu.be/rLRNnlzIOQM

I connected with Vercel this past week to discuss how I could both optimize and try to control the costs that https://www.starterpacks.net was accumulating. I did walk away with some techniques that I will try on the next site I launch on Vercel where I need to try to maintain a consistent bill. Most notably:

  • Fluid Compute is good and does reduce function use/chaos
  • Controlling the cache key to maintain the cache between deploys (when possible)
  • Play with Cache-Control headers to see if it's possible to increase the number of cached edge request hits, and ultimately skip the function rendering for each cached page

So, some good pointers to keep in mind for the next site that takes off on Vercel.

On the client front, it was a busy week, but I was able to play around with writing my own Cache Handler to support the Render deploy of the frontend. I played around with various approaches trying to write a Cache Handler backed by a Redis instance, but ultimately had to back out of that approach since I wasn’t able to fully grasp the life cycle flow for when a cache handler is initialized and abandoned, resulting in either too many Redis connections remaining open and overloading the instance, or clients cleaning themselves up too early and causing errors when get/set methods were called. Instead, I ended up writing a Cache Handler that is using a LRU cache, and it seems to be enough to smooth out the instance, serve things fast, but without all the complexity of the Redis stuff. I might circle back to a Redis-based solution down the road, but the LRU approach seems to be working for now.

After a long week of client work and troubleshooting, I wanted to make progress on something new that I have been putting off for a while, so I sat down on Friday on got the first instance of the open graph images renderer setup and deployed for https://www.opengraphs.com. OpenGraphs is essentially a re-write/re-imagination of a previous service that I wrote and was using to generate open graph images for my projects, but I have some plans to both optimize and expand that previous services vision, and hopefully customers, which I will be focusing on as I continue to build out the admin portions of the app.

Along with getting the OpenGraphs renderer deployed, I was able to publish an update to the library that I use to handle the open graph data in my NextJS sites. You can check it out here: https://github.com/ryanhefner/next-meta

And, don’t think that I have forgot about https://www.skylounge.social. After getting Starter Packs stabilized and no longer sucking money out of my wallet, and getting the OpenGraphs renderer setup and deployed, I should have the headspace available to wrap up a few of the remaining features on Skylounge and start inviting some early people to host sessions on the site and see how well it either does, or does not, work 🤞 More on that to come...

To follow along, you can find me at https://www.ryanhefner.com, follow me on Bluesky @ryanhefner.com (https://bsky.app/profile/ryanhefner.com) and keep up with the show on https://www.allplay.fm and @allplay.fm (https://bsky.app/profile/allplay.fm).

Help yourself, while supporting the show, by trying some of the services that I use, and highly recommend:
Transistor FM (https://transistor.fm/?via=allplay)
Fathom Analytics (https://usefathom.com/ref/EKONBS)

#buildinpublic #podcast #startups #webdevelopment #webdesign #bluesky #indiedev #bootstrapping #indiehackers

  continue reading

37 episodes

All episodes

×
 
Loading …

Welcome to Player FM!

Player FM is scanning the web for high-quality podcasts for you to enjoy right now. It's the best podcast app and works on Android, iPhone, and the web. Signup to sync subscriptions across devices.

 

Quick Reference Guide

Copyright 2025 | Privacy Policy | Terms of Service | | Copyright
Listen to this show while you explore
Play