3 ms·
Can you do concurrent reads to a disk? I actually don't know the answer to this. I'm pretty sure you can't on an HDD, but I don't know about an SSD.
by sdrwefgfvb 4y ago
Can you do concurrent reads to a disk? I actually don't know the answer to this. I'm pretty sure you can't on an HDD, but I don't know about an SSD.
- ekianjo 4y agoThe requests are not happening on a single server
- sdrwefgfvb 4y agoI wouldn't call that a monolith then.
- tyre 4y agoMonolith refers to the application. It’s in contrast to a services architecture.
- lolinder 4y agoIf it's all one codebase that isn't split for deployment, it's still very much a monolith. The distinction between monolith and microservices isn't how many deployments you have, it's how many deployment units. If the app is stateless, replication is strictly an operations concern, so from a developer perspective a single stateless deployment unit is a monolith. An org might deploy a complete copy of the monolith for a single tenant, and it would still be a monolithic architecture.
- kvirani 4y agoDoes each web request to an app server have to hit the disk on the same server? And if so, for the entire request duration? Also, what about horizontal scaling which also means that the db is on a different server (likely with secondary / replicated DBs)
- gregmac 4y agoYou can! Well, sort of. (this is new to me, I was curious as well, so thank you) Native Command Queuing (NCQ) [1] is a SATA extension that lets the drive optimize the order commands are performed in. For HDDs, this means it can do the commands in an order that minimizes overall seeking time. For SSDs, it can concurrently execute commands that are operating on different physical chips. I can't find a good reference, but it seems like this is also true for RAID volumes, which are almost certainly being used on the server -- the RAID controller can perform parallel reads on each of the independent disks. How well this works is highly dependent on the RAID controller itself. [1] https://en.wikipedia.org/wiki/Native_Command_Queuing https://en.wikipedia.org/wiki/Native_Command_Queuing
- KennyBlanken 4y agoIf you have to ask such a basic question, you're not qualified to be commenting on how a performance metric isn't impressive.