C#C
C#8mo ago
LazyGuard

How to properly test my system ?

Hey

I’m working on a microservices setup and wanted to pick your brains a bit. Here’s what I’ve got so far:

  • Service A exposes PATCH/POST /shipments endpoints
  • Service B gets calls from Service A and handles PATCH /inventory and /tracking exclusively
  • Kafka Topic X connects Service B to Service C
  • Service C processes the messages and then forwards them to an external system
  • And there’s HornetQ in between Service C and the external system, which can only handle X messages/sec (let’s say X = 10, based on what the external system allows. It does not depend on us)
(see the graph for an architecture diagram. The purple parts are the parts belonging to the system. The circles are external systems)

So I want to do some solid performance testing—peak load, stress, all of that. But I’m trying to make sure I’m asking the right questions upfront. What should I be looking for when it comes to system performance? What’s the best way to push the whole thing to its limits and really explore where it breaks? I’m planning to put together a test plan that helps identify the performance of the system, where the bottlenecks are, etc. but I’m not 100% sure what to focus on or where to start.

(The tools I need to use are k6 and prometheus for metrics)

If anyone’s worked with similar architectures—especially where there’s an external system limiting throughput—any tips or lessons learned would be super helpful.

Thanks in advance!
image.png
Was this page helpful?