Building Social Media    Sites in Ruby
Who am I
things to coverWhat’s social world going on?Social data storage in MongoDBStreaming social data with MQOthers worthy to me...
TrendsFacebook, Fan PageTwitter, Promoted Topics/AccountsMedia Agency: Brand Website -> Social
CategoriesSocial NetworkSocial Community ManagementSocial Monitoring/Measurement
successradian6: twitter $1,500/M + bandwidth costiWOMcooperator: Sina weibo RMB20,000/MTweetDeckSocialBro
dev platforms  graph.facebook.com  dev.twitter.com- documentations- endpoints, request and response examples- tools for de...
Social Dataid: "209664525731998_247270968638020"from:   name: "Vanessa Tam"   id: "100000116574145"to:   data:     -      ...
Why not RDBMS  Scalability- Horizontally  Flexibility- Scheme change
Comparison...Key-Value   Scalibility & Performance      Memcached        MongoDB   RDBMS                                 D...
Intro to MongoDBSchema FreeDocument BaseHigh PerformanceJSON Style Storage: BSONDynamic Query
a lot of more...  Flexibility:- Schema Free- Database setting: replication, secondary DB- Model: data type, collection, _i...
more...  Capped Collection- logs, messages- fixed after being created  ... ...
ODM  MongoMapper  MongoRecord  Mongoid- Rails 3- Active Record Style- Ruby Driver
not good at...SQL-base tool (BI)High Transactional Operations
StreamingTwitterSina WeiboStream has...
Twitter Stream APIStreaming API: UserID, Keyword, geo-LocationUser Stream: User LevelSite Stream: Application Level
What’s wrong...  Unstable Traffic- online time- irregular events  Data Lost- updated response- invalid response
AMQP & RabbitMQAMQP: reliable safeRabbitMQ: A leading AMQP implementation
fit into streamingpublishing, subscriptioncool at...No worries?
TestingWeb AccessfakewebAPI endpoint URL & response
Hoptoad / Airbrakenotify you exceptions>= direct email notification
background workersstalkerresque: redis-basedelayed_jobs: assign different queues todifferent workers?
Things to checkout...MongoDB:http://www.mongodb.org/Mongoid:http://mongoid.org/EventMachine:http://rubyeventmachine.com/Tw...
Upcoming SlideShare
Loading in …5
×

Build socialsiteinruby

1,045 views

Published on

Published in: Technology, Business
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,045
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
22
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Build socialsiteinruby

    1. 1. Building Social Media Sites in Ruby
    2. 2. Who am I
    3. 3. things to coverWhat’s social world going on?Social data storage in MongoDBStreaming social data with MQOthers worthy to mention
    4. 4. TrendsFacebook, Fan PageTwitter, Promoted Topics/AccountsMedia Agency: Brand Website -> Social
    5. 5. CategoriesSocial NetworkSocial Community ManagementSocial Monitoring/Measurement
    6. 6. successradian6: twitter $1,500/M + bandwidth costiWOMcooperator: Sina weibo RMB20,000/MTweetDeckSocialBro
    7. 7. dev platforms graph.facebook.com dev.twitter.com- documentations- endpoints, request and response examples- tools for developers
    8. 8. Social Dataid: "209664525731998_247270968638020"from: name: "Vanessa Tam" id: "100000116574145"to: data: - name: "The House of Dancing Water" category: "Arts/entertainment/nightlife" id: "209664525731998"message: "La=)"actions: - name: "Comment" link: "http://www.facebook.com/209664525731998/posts/247270968638020" - name: "Like" link: "http://www.facebook.com/209664525731998/posts/247270968638020"type: "status"created_time: "2011-08-17T15:02:55+0000"updated_time: "2011-08-17T15:44:36+0000"likes: data: - name: "Phoebe Lee" id: "100002673212002" count: 199comments: data: - id: "209664525731998_247270968638020_3569720" from: name: "The House of Dancing Water" category: "Arts/entertainment/nightlife" id: "209664525731998" message: "Welcome!" created_time: "2011-08-17T15:44:11+0000" - id: "209664525731998_247270968638020_3569724" from: name: "Vanessa Tam" id: "100000116574145" message: "okok" created_time: "2011-08-17T15:44:32+0000" - id: "209664525731998_247270968638020_3569725" from: name: "Vanessa Tam" id: "100000116574145" message: "=)" created_time: "2011-08-17T15:44:36+0000" count: 3
    9. 9. Why not RDBMS Scalability- Horizontally Flexibility- Scheme change
    10. 10. Comparison...Key-Value Scalibility & Performance Memcached MongoDB RDBMS Depth of Functionality
    11. 11. Intro to MongoDBSchema FreeDocument BaseHigh PerformanceJSON Style Storage: BSONDynamic Query
    12. 12. a lot of more... Flexibility:- Schema Free- Database setting: replication, secondary DB- Model: data type, collection, _id, associations- Lazy Cursor e.g. rubyconftw = RubyConf.where(:location=>“Taiwan”) #cursor created puts rubyconftw.entries #cursor executed
    13. 13. more... Capped Collection- logs, messages- fixed after being created ... ...
    14. 14. ODM MongoMapper MongoRecord Mongoid- Rails 3- Active Record Style- Ruby Driver
    15. 15. not good at...SQL-base tool (BI)High Transactional Operations
    16. 16. StreamingTwitterSina WeiboStream has...
    17. 17. Twitter Stream APIStreaming API: UserID, Keyword, geo-LocationUser Stream: User LevelSite Stream: Application Level
    18. 18. What’s wrong... Unstable Traffic- online time- irregular events Data Lost- updated response- invalid response
    19. 19. AMQP & RabbitMQAMQP: reliable safeRabbitMQ: A leading AMQP implementation
    20. 20. fit into streamingpublishing, subscriptioncool at...No worries?
    21. 21. TestingWeb AccessfakewebAPI endpoint URL & response
    22. 22. Hoptoad / Airbrakenotify you exceptions>= direct email notification
    23. 23. background workersstalkerresque: redis-basedelayed_jobs: assign different queues todifferent workers?
    24. 24. Things to checkout...MongoDB:http://www.mongodb.org/Mongoid:http://mongoid.org/EventMachine:http://rubyeventmachine.com/Twitter Stream Plugins:http://rubygems.org/gems/twitterstreamrabbitMQ:http://www.rabbitmq.com/getstarted.htmlHoptoad:https://github.com/thoughtbot/hoptoad_notifier

    ×