Operations | Monitoring | ITSM | DevOps | Cloud

December 2024

LLM Testing in 2025: Methods and Strategies

Large Language Models, or LLMs, have become a near-ubiquitous technology in recent years. Promising the ability to generate human-like content with simple and direct prompts, LLMs have been integrated across a diverse array of systems, purposes, and functions, including content generation, image identification and curation, and even heuristics-based performance testing for APIs and other software components.

Using gRPC with Python

Microservices are now the architecture of choice for many developers when crafting cloud-native applications. A microservices application is a collection of loosely coupled services that communicate with each other, enhancing collaboration, maintainability, scalability, and deployment. There are several options for enabling this communication between microservices. When it comes to Python, gRPC and REST are two extremely popular directions to go.

What is a Memory Leak?

Memory leaks happen when a program fails to release memory it no longer needs, and can be a big issue for developers and system administrators alike, as the gradual depletion of available memory often makes for complex troubleshooting and debugging. Given how the consequences of a memory leak can range from decreased system performance to outright crashes, it’s crucial to isolate the root cause of the leak quickly and efficiently.

The 4 Golden Signals: All You Need to Know

As a team, we have spent many years troubleshooting performance problems in production systems. Applications have become so complex that you need a standard methodology to understand performance. Our approach to this problem is called the Golden Signals. By measuring these signals and paying very close attention to these four key metrics, providers can simplify even the most complex systems into an understandable corpus of services and systems.

Traffic-Driven Testing: Shift Right Testing

In the process of developing software, designing and performing testing is a critical aspect of ensuring high software reliability, improving software quality, and deploying strong fit and function. The shift-right testing approach moves testing to later in your production cycle as a way of doing this with more accurate user data and post-production testing practices. Also known as “testing in production,” with shift-right, you test software after it has been deployed.

Kubernetes vs Docker: 7 Key Differences

It’s impossible to learn about containerization without hearing about Docker and Kubernetes. These two tools together dominate the world of containers, both being the de facto standard in what they each do. When you’re first getting started learning about containers, it can be quite a challenge to figure out the differences between these two tools.

What is Resilience Testing: The Ultimate Guide

Today’s complex, dynamic applications demand rigorous resilience testing. A common hurdle is accurately mimicking real user behavior. This post discusses a possible solution: production traffic replication (PTR), a technique that captures actual user interactions to enhance chaos testing, and the principle of intentionally introducing failures to evaluate application recovery.

Testing Kubernetes Ingress with Production Traffic

Kubernetes is an incredibly powerful solution, but testing the Kubernetes Ingress resources themselves can prove to be quite tricky. This can lead to significant frustration for developers – bugs can pop up in production that weren’t caught during testing, workflows that make sense on paper might fail in practice, and so forth.

What are Preview Environments?

Local preview environments are transforming how developers test and validate code changes before merging them into the main codebase. Acting as temporary cloud environments, they provide a production-like setting where new features and bug fixes can be tested in isolation, catching issues early and streamlining the development code review process. These environments are crucial for enhancing development velocity, especially in CI/CD workflows used by DevOps engineers and QA teams.