|
|
|
Ask HN: Need some advice to sharpen distributed-systems design skills
|
|
2 points
by kartiksura
3498 days ago
|
|
I am a developer in the bay area, who has worked on distributed systems (ad-tech). Most of the skills have been gained through real-life experience. I want to use the christmas vacation to learn distributed systems from ground up, especially system-design. Any pointers, advice would be helpful. |
|
Web - Rest services and token based authentication. Spa frontend driven by JSON APIs seems to be the most popular way to go.
Database - Cassandra is probably the closest to industry standard
Scaling servers - docker, kubernetes. I'm honestly not that familiar with this topic.
"Big data" processing - Apache zookeeper, hadoop, Apache spark and storm.
Data brokers - Kafka, rabbitmq
Document storage - ceph, lucune based solutions like some/elastic
I would also read about non-http messaging protocols like Google's protobufs, Apache arvo and the like. These protocols are preferable over http based protocol for exchanging data at scale because more efficient, simpler, and less processing overhead.