Using serverless requires us to change our mindset on how we build apps and requires us to unlearn things we learned building apps in the past. At AWS re:Invent I got a chance to do a VMware Code session and talk about how we took part of our ACME Fitness Shop and transformed it into serverless functions with AWS Lambda.
In my talk “Duct Tape and String: Continuously Delivering Serverless Microservices” at swampUP 2019, I got to talk about some best practice for the project that got me excited about both serverless and K8s: OpenFaaS! For me that meant I got to combine a lot of the things I care about (Containers, Serverless, and Golang), while talking about the awesome possibilities that using Artifactory brings you.
My last blog post was about the difference in speed downloading Go modules from a version control system or from GoCenter. I got a bunch of questions on Twitter on why that was and this blog post goes into a bit more detail on how the Go client gets modules. TL;DR Using GoCenter speeds up the download of your Go modules because it uses the right protocol when downloading files, saves on the number of HTTP calls and doesn’t have to recreate the module on the client side.
After GoCenter was first released the team at JFrog said it was faster to get modules from there than it was getting modules “the old way”. To be honest, when they said that, I did not believe them. Following the old proverb “seeing is believing”, I set out to test the speed and see whether those claims were accurate. TL;DR: It turns out the team was right!
Go is the language of choice for a lot of (cloud-native) projects because it creates very streamlined binaries. We used to “vendor” in all dependencies, but with Go Modules we now have real dependency management. We’ll show you a few pipelines from code to production and see if Modules are that much better to make builds lightning quick and hassle-free.
Today, Kubernetes is the defacto standard if you want to run container workloads in a production environment. As we set out to build our next generation of products, and run them smoothly in the cloud, we needed to move to Kubernetes too! In the process of building tools like KubeXray and GoCenter we learned a whole bunch. At the Amsterdam Kubernetes/Cloud-Native Meetup I presented a talk in which we walked through our lessons learned and how we’re running it at scale.
In this webinar, we’ll look at Go modules and why it is such an improvement over vendoring, we’ll show you why dependency management is so important, and we’ll build a CI/CD pipeline for your Go projects using GoCenter!