ShopperCove
Menu
All writingBlogTopicsCategoriesAboutRSS
Blog
Categories
Observability & SRE62All categories
Topics
sre111localhost lab102performance70python58javascript47bundle size36benchmarking35node.js35web development21typescript19benchmark16content creation15All topics
About

Topic

localhost lab

102 posts

Loading posts…

ShopperCove

Hands-on notes on developer tools, written after the tool has actually been run.

All writingBlogCategoriesTopicsAboutPrivacyRSS

© 2026 ShopperCove

orjson vs json in Python: How Much Faster Is orjson?

Hands-on Python json vs orjson vs msgpack lab: encode/decode MB/s on records, nested, and unicode payloads. Real p50 numbers measured on localhost box.

1 Oct 20267 min read
→

xxHash vs SHA-256: How Much Faster Is It?

Hands-on SHA-256 vs BLAKE2b vs xxHash hash throughput on 64MiB buffers (SHA-1/SHA3 labeled). Real MB/s with OpenSSL and xxHash versions on the lab box.

1 Oct 20267 min read
→

SQLite WAL vs DELETE: Is WAL Really Faster?

Hands-on SQLite WAL vs DELETE vs OFF journal_mode lab: insert/update RPS (FULL/NORMAL sync), plus WAL checkpoint cost. Real p50 numbers on localhost box.

1 Oct 20266 min read
→

zstd vs gzip vs lz4: Compression Throughput Lab

Hands-on zstd vs gzip vs lz4 on 64MiB payloads (real /usr text, mixed, urandom). Measured compress/decompress MB/s and ratio at default levels. No Docker.

1 Oct 20267 min read
→

fdatasync vs fsync: Is fdatasync Faster? Real Numbers

Hands-on fsync vs fdatasync vs none: per-write and every-N sync on 256B and 4KiB records. Real p50/p95 show about 100-200x durability tax on localhost

1 Oct 20268 min read
→

nice / ionice Lab: CPU Nice 19 Slowdown and Idle-Class Disk

Hands-on nice/ionice lab: victim nice19 under 6 hogs ~5.7× slower (p95 ~7.4s); ionice idle O_DIRECT read ~6.1× under writers. Real numbers, no Docker.

1 Oct 20266 min read
→

TCP_QUICKACK Lab: Delayed ACK, Set-Once, and the Reassert Trap

Hands-on TCP_QUICKACK lab: default QA=1 on loopback; WWR set-once ~18 µs; reassert QA=1 under Nagle p95 ~48 ms, OutSegs ~13×. Real numbers, no Docker.

1 Oct 20267 min read
→

Context-Switch Microbench: Pipe Ping-Pong Process vs Thread

Hands-on ctx-switch lab: process pipe RTT p50 3.2 us (~0.50M sw/s); thread pipe 2.85 us; Event 9.3 us; 6 hogs blow p95 to 19 us. Real numbers, no Docker.

1 Oct 20265 min read
→

Asyncio vs Threads: I/O Concurrency Lab with Real Numbers

Hands-on asyncio vs ThreadPool lab: sleep 58.7× vs 44×; delayed TCP 13.8× vs serial; fast-echo trap loses; CPU flat. Real localhost numbers, no Docker.

1 Oct 20266 min read
→

flock Contention Lab: Exclusive, Shared, and LOCK_NB Fail Rates

Hands-on flock lab: uncontended LOCK_EX p50 0.33 us; waiter ~50 ms hold; w8 p50 ~36 ms; LOCK_NB 99% fail; LOCK_SH ~6.7x wall. Real numbers, no Docker.

1 Oct 20265 min read
→

Line Buffering vs Full Buffering: Why Is My Output Late?

Hands-on stdout buffering lab: full buffering maximizes throughput, while line and unbuffered modes restore live visibility on pipes.

1 Oct 20266 min read
→

ProcessPool vs ThreadPool: GIL CPU Lab with Real Numbers

Hands-on ProcessPool vs ThreadPool lab: pure-Python threads lose to processes, hashlib threads help, and sleep I/O favors threads.

30 Sept 20265 min read
→
Previous
  1. 1
  2. …
  3. 7
  4. 8
  5. 9
Next