微博cache设计谈

40,496 views

Published on

Published in: Technology
1 Comment
136 Likes
Statistics
Notes
  • slideshare又出问题了,一份文件变成一页了
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total views
40,496
On SlideShare
0
From Embeds
0
Number of Embeds
18,806
Actions
Shares
0
Downloads
1,899
Comments
1
Likes
136
Embeds 0
No embeds

No notes for slide
































  • 微博cache设计谈

    1. 1. cache @TimYang
    2. 2. Agenda • Feed • Cache
    3. 3. • • , status feed •
    4. 4. Feed • feed • Push( ) • Pull( ) •
    5. 5. Push • feed • Inbox: • Outbox: • inbox( ) • Inbox( )
    6. 6. Push • • •
    7. 7. Pull • outbox( ) • Inbox( ) • Online computation
    8. 8. Pull • •
    9. 9. • • •
    10. 10. Cache memory is the new disk, and disk is the new tape. for "real-time" web applications, and systems that require massive scalability - Jim Gray
    11. 11. Cache
    12. 12. cache Weibo cache arch Inbox hot cache Outbox Vector cache Archive cache Social Following Followers users Graph Content Hot cache Total
    13. 13. Inbox • “ ” • cache id list • (hot cache) • get set • redis list/set
    14. 14. Outbox • • id list(e.g. 100) • id LRU
    15. 15. Social Graph cache • Following ids • Followers • • • delete all
    16. 16. Content cache • cache • • • • Open API xml, json...
    17. 17. Cache • •
    18. 18. Update Workflow Update status Content cache Hot Inbox Vector Outbox vector Content cache replication
    19. 19. • outbox hot vector • followers list • inbox
    20. 20. feed Home timeline Workflow home_timeline aggregator Content hot Inbox cache Outbox Vector cache Inbox archive Inbox archive Content cache
    21. 21. feed • inbox cache • • , following • id list feed
    22. 22. cache • • hot keys • • mutex
    23. 23. • Content cache • multi get n feed(n = items/ , e.g. 50) • cache = n * (feed + , e.g. 2k) • 1,000 /
    24. 24. • 1,000 800Mbps •1 8Gbps
    25. 25. • 1G 300~400Mbps • • local cache • •
    26. 26. hot keys • content cache of • create local cache 1. get user_yaochen_local 2. get user_yaochen 1. set user_yaochen_local:value 3. delete all
    27. 27. cache • key memcache • • LRU cache, • Memory storage
    28. 28. mutex • content item cache • db • db • key_mutex key • mutex
    29. 29. • • S2 • S2 •
    30. 30. S2 • Web 2.0 Social • What’s S2 • Social Platform & • Social Applications • www.s2forum.org
    31. 31. • • Sina App Engine • • •
    32. 32. Q&A • email: iso1600@gmail.com • @TimYang

    ×