New Feed System

==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plugin settings under 'Saving'

Excalidraw Data

Text Elements

Newfeeds query service ^faUX3gwd

User ^f9BsVhx2

Post creation ^Wgoh8LER

API Gateway ^Gwu4ov4o

Load balancer ^ezvacCZ6

Get newfeeds ^Y45sYs1f

Post database ^sKfyaZto

Newfeeds distributor queue ^xyHxFMwu

Post service ^PneYHzDU

User database ^TCMHtQ3h

Graph database ^B0Gj6D2m

Post distributor service ^dKCm8zbG

Worker ^0bOqc8Dj

Worker ^kYJ31AqL

Worker ^wi9YPQKb

Load balancer ^wCGgiWsW

Newfeeds cache ^hhgnHUaV

Distribute post based on
friend list ^r3RqAcQa

Persist the post in the database ^yzKVUD5r

Store the value of

  • post_id, user_id ^mroWpbZW

Reason why we use cache here
is because newfeeds is something keep
changing all the time ^Lfs1J3IL

Newfeeds system ^Q89s7lvd

%%

Drawing

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

%%