Your system diagram communicates your thinking. Here's how to structure it.
Clients at the top (web, mobile, API). Load balancers below them. Application servers in the middle. Data stores at the bottom (databases, caches, queues).
Label every arrow with the protocol and what's being sent. "HTTP GET /search?q=..." is better than an unlabeled arrow.
Use boxes for services, cylinders for databases, and clouds for external systems. Keep it clean. A messy diagram signals messy thinking.