-
System design - whatsapp (chat app)
Chat AppdigestBasic functional requirements one-on-one chat group chat media add-on feature sent, dilevered, read receiptent push notification last seen time Traffic & StorageTrafficsay 50 million DAU, e...…
-
System design prepration share (friend)
Add iconAdd coverAdd comment我的系统设计准备心得从9月中开始到10月中,准备了三周的系统设计,最后很幸运拿到了offer。现在分享给大家希望能帮助你拿到心仪公司的offer!系统设计面试准备有什么好材料推荐吗?我只是路过(还没有面试):推荐关注Alex Xu的小红书账号!一张图给你很清晰地讲清楚系统结构。可以平时当作了解自己的业务,在真正面试来临的时候有更好大局观!同时也可以看一个demo录像Amazon System Design Interview: Des...…
-
System design DDIA digest - 5. Replication
5. ReplicationReplication means: keep a copy of data on multiple machines. geographicly close to users to reduce latency increase availability even if one machine is down increase read throughputreplication algorithm: single-leader replication...…
-
Regression Newman with HTML report
Regression Report with NewMan#!/bin/bashcd $(dirname $0)ENV=${1:-QA}echo "Testing $ENV environment."[ ! -d newman ] && mkdir newman[ -d newman/newman ] && rm newman/newman/xxx-regression-*.htmlcd newman || exitexport PATH=/devops/t...…
-
Flask introduction & set up
Set up env (virtual environment)tutorial$ python -m venv env # Windows$ python3 -m venv env # Linux or macOSIn python, there is no central lib management tools like Maven in Java, and it is not possible to have different version of same lib, so ...…
-
Dead Letter Queue(DLQ) Handler Service
Dead Letter QueueA Dead Letter Queue (DLQ) is a service implementation utilised in message-based systems to store messages that could not be processed or delivered.For consumer, there may be scenarios in which incoming messages cannot be fully pro...…
-
Debug in distributed system (Splunk)
SplunkSplunkindex=application_na sourcetype=fs_newarch_qa source=*gfs-feaid-services*Response Time: index=application_na sourcetype=fs_newarch_prod source=*fs-utilities* eventType=END OR eventType=ERROR | timechart avg(duration)tps:index=applicat...…
-
Failure detection and handling in distributed system
Failure detectionIn distributed system, it requires at least two independent sources of information to mark a server dowm. One server is not enough. (It’s not enough to simply say because your node can’t contact another node that the other node is...…
-
System design basic - consistent hasing
Consistent HasingConsistent Hasing is used as a load balancing algorithm, can be compared with Round Robin.Advantange: Consistent Hasing is a good choice in distributed systems. compared with Round Robin, Consistent Hasing can guarantee client c...…
-
System design Basic - scale up system
Scale Route1. Single server2. Database (separate Data tier and web traffic tier)Choose which database to use, Nosql or relational databaseNon-relational database might be the right choice if (easy to scale, no join operations): app requires super...…