Skip to main content
228

March 4th, 2020 × #serverless#cloud#javascript

More on Severless - Databases × Files × Secrets × Auth × More!

Scott and Wes continue their serverless discussion, talking about secret management, vendor lock-in, sharing dependencies, local development, migrating apps, databases, and file storage.

or

In this episode of Syntax, Scott and Wes do a part 2 about Serverless — databases, files, secrets, auth, and more!

Sanity - Sponsor

Sanity.io is a real-time headless CMS with a fully customizable Content Studio built in React. Get a Sanity powered site up and running in minutes at sanity.io/create. Get an awesome supercharged free developer plan on sanity.io/syntax.

Freshbooks - Sponsor

Get a 30 day free trial of Freshbooks at freshbooks.com/syntax and put SYNTAX in the "How did you hear about us?" section.

Show Notes

2:47 - Wes tried Cloudflare Workers

  • Also this is so cool:

Hey Wes, just listened to the latest Syntax episode on the serverless setup. Not sure if it's an episode idea or not, but if you wanna do a bit of a dive on Cloudflare's service workers, I'm currently leading an "invisible infrastructure migration" right now from a legacy WordPress setup to a new Storyblok/Netlify setup. We're using Cloudflare's service workers to basically "stitch" the headers/menus/footers from the old WordPress site into our new Netlify pages, but serving the page back as if it was part of the normal domain. This means we can migrate from the old to the new slowly without massively disrupting SEO, doing a lengthy/costly rebuild, etc.

  • A word on Digital Ocean
  • Kubernetes + FAAS allows you to scale up/down

13:54 - Secret management

  • Some have a great UI
  • Some have a CLI
  • Some only have production
  • Some have dev/staging/prod

16:24 - Vendor lock-in

  • Two kinds of vendor lock-in
    • Lock into a low-level provider (like AWS, or MongoDB)
    • Lock into a framework
  • Questions to ask:
    • Can I go, take my app as-is, and host it on another provider?
    • Can I refactor the config and run my code as-is?
    • Do I need to refactor my code for it to run on other platforms?
  • Next.js will only run on Now
  • There is a community package
  • Begin all runs on Arc.codes
  • Firebase is locked in?

25:12 - Sharing dependencies

  • Each function will have its own package.json, which can be a pain
  • Publish utils a private module
  • AWS Layers
  • Import/export
  • Bundle and tree shake

30:26 - Local development

  • Now dev
  • NPX sandbox
  • Wrangler for Cloudflare workers

36:40 - Existing applications

  • Difficult to move with many routes, but easy to move a Graphql API that has one single route
  • Maybe do piece by piece instead of all at once
  • Begin has http express method

45:21 - Data

  • Any DB you want
  • Dynamo DB integrated into many
  • Firebase
  • KV Storage for Cloudflare workers
  • Fauna

48:14 - File storage

  • Generally files go in the associated file place like Amazon S3, Backblaze B2, Cloudinary
  • Many also have this integrated as well

52:18 - Auth

  • Serverless is ephemeral and stateless
  • JWT likely as sessions will work, but doesn't really make sense

××× SIIIIICK ××× PIIIICKS ×××

Shameless Plugs

Tweet us your tasty treats!

Share