Goroutines provide a means for multiprocessing in a Golang application, allowing multiple processes to run simultaneously. In addition, Channels and WaitGroups enable passing data between threads or blocking one thread until another completes. In this post, we explore examples of each.
Investing in developer experience not only cultivates a team of happy engineers, but it encourages innovation, improves agility, and increases development velocity. If you are looking to improve DX at your organization, here are five places to start.
As part of the LF Live series, Velocity recently teamed up with the Linux Foundation to host a webinar about different methods and tools to build and manage multi-tenant Kubernetes clusters. Watch the recording here.
Request-response based networking in microservice architectures can result in unwanted latency in your cloud native application. Learn the basics of event-driven architectures built with Redis as a way to increase your application’s processing speed in this post.
Kubernetes init containers provide a means of configuring an environment in K8s for an application to run that doesn’t require changing the application’s source code. In this post, we discuss how init containers work, when you would use one, and show an example in a sample app.
Often, in order to keep an application responsive at scale, you’ll need to pass long-running jobs to another process that can handle them asynchronously in the background. In this post, we’ll look at a simple way to achieve this with Python, Redis and Redis Queue.
This is part two in a multi-part series on using OpenTelemetry and distributed tracing to level up your system observability.
In this post, we discuss two options to consume secrets: directly from the secrets manager (via code in the app), or as a configuration provided by the infrastructure (via configuration file/environment variables).
This is the third and final part in a multi-part series on using OpenTelemetry and distributed tracing to level up your system observability.
Use Vault to store secrets as an alternative to less secure options like committing the secrets directly into version control or hard-coding a secret in a config file that is passed to an application at startup.
In this post, we build a simple video streaming app that demonstrates async features both in FastAPI and in the interactions it makes with our MongoDB database with Motor, the async Python driver. We’ll also demonstrate how asyncio can be used to network multiple microservices together.