Your SlideShare is downloading. ×
0
Facebook Apps skalieren mit Real-Time Updates und Batch Requests
Facebook Apps skalieren mit Real-Time Updates und Batch Requests
Facebook Apps skalieren mit Real-Time Updates und Batch Requests
Facebook Apps skalieren mit Real-Time Updates und Batch Requests
Facebook Apps skalieren mit Real-Time Updates und Batch Requests
Facebook Apps skalieren mit Real-Time Updates und Batch Requests
Facebook Apps skalieren mit Real-Time Updates und Batch Requests
Facebook Apps skalieren mit Real-Time Updates und Batch Requests
Facebook Apps skalieren mit Real-Time Updates und Batch Requests
Facebook Apps skalieren mit Real-Time Updates und Batch Requests
Facebook Apps skalieren mit Real-Time Updates und Batch Requests
Facebook Apps skalieren mit Real-Time Updates und Batch Requests
Facebook Apps skalieren mit Real-Time Updates und Batch Requests
Facebook Apps skalieren mit Real-Time Updates und Batch Requests
Facebook Apps skalieren mit Real-Time Updates und Batch Requests
Facebook Apps skalieren mit Real-Time Updates und Batch Requests
Facebook Apps skalieren mit Real-Time Updates und Batch Requests
Facebook Apps skalieren mit Real-Time Updates und Batch Requests
Facebook Apps skalieren mit Real-Time Updates und Batch Requests
Facebook Apps skalieren mit Real-Time Updates und Batch Requests
Facebook Apps skalieren mit Real-Time Updates und Batch Requests
Facebook Apps skalieren mit Real-Time Updates und Batch Requests
Facebook Apps skalieren mit Real-Time Updates und Batch Requests
Facebook Apps skalieren mit Real-Time Updates und Batch Requests
Facebook Apps skalieren mit Real-Time Updates und Batch Requests
Facebook Apps skalieren mit Real-Time Updates und Batch Requests
Facebook Apps skalieren mit Real-Time Updates und Batch Requests
Facebook Apps skalieren mit Real-Time Updates und Batch Requests
Facebook Apps skalieren mit Real-Time Updates und Batch Requests
Facebook Apps skalieren mit Real-Time Updates und Batch Requests
Facebook Apps skalieren mit Real-Time Updates und Batch Requests
Facebook Apps skalieren mit Real-Time Updates und Batch Requests
Facebook Apps skalieren mit Real-Time Updates und Batch Requests
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Facebook Apps skalieren mit Real-Time Updates und Batch Requests

3,809

Published on

Gehalten auf der allfacebook devcon.

Gehalten auf der allfacebook devcon.

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

No Downloads
Views
Total Views
3,809
On Slideshare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
34
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • FolgendeObjektewerdenunterstützt
  • Define routes
  • Define callback function
  • Define callback function
  • Define callback function
  • Evtl. Extra Server für Requests
  • Transcript

    • 1. FACEBOOKREALTIME UPDATES& BATCH REQUESTS
    • 2. REALTIME UPDATESECHTZEITWEB (?!)
    • 3. REALTIME MYAPP MIT GRAPH API » Nutzer besucht die Seite und soll ein Popup sehen wenn einer seiner Freunde sich registriert hat. » (Alternativ: Eine E-Mail bekommen)
    • 4. REALTIME OHAI! ? !
    • 5. REALTIME FASTER! FASTER!
    • 6. REALTIME FASTER! FASTER! » Caching von Daten  Abfrage nur alle 5 Minuten + Weniger Abfragen + Schnellere Ladezeiten - Daten nicht aktuell - Eigentlich keine Lösung des Ur-Problems - Erster Aufruf Langsam (Caching via Web) - Unnötige Abfrage von Daten (Caching via Cronjob)
    • 7. REALTIME REALTIME API The Graph API supports real-time updates to enable your application using Facebook to subscribe to changes in data from Facebook. Your application caches data and receives updates, rather than polling Facebook’s servers. Caching data and using this API can improve the reliability of your application and decrease its load times. » User (teilw.), Pages, Permissions
    • 8. REALTIME OHAI! ! 200 / OK
    • 9. HANDS ONREALTIME
    • 10. REALTIME MYAPP MIT GRAPH API » Nutzer besucht die Seite und soll ein Popup sehen wenn einer seiner Freunde sich registriert hat. » 1. Service aufsetzten » 2. Änderungen abonnieren » 3. Ausgeben / Weiterverarbeitung
    • 11. REALTIME PUSH UPDATES ABONNIEREN 1. Set up an endpoint URL that receives both HTTP GET (for subscription verification) and POST (for actual change data) requests from Facebook. » Registrieren eines „Endpoints“ » Verification?  GET = Verification | POST = Updates
    • 12. REALTIME
    • 13. REALTIME PUSH UPDATES ABONNIEREN » hub.mode » „subscribe“ (String) » hub.challenge » Zufällige Zeichenfolge (String) » hub.verify_token » „Mein“ Verify token (String)
    • 14. REALTIME
    • 15. REALTIME SUBSCRIBE UPDATES » POST an https://graph.facebook.com/<app-id>/subscriptions?access_token=<token> » Content » object (user|permission|pages) » callback_url (http://www.myapp.com/facebook/endpoint) » verify_token (APP_CONFIG[:hub_challenge]) » fields (z.B. „friends,likes“)
    • 16. REALTIME
    • 17. REALTIME
    • 18. REALTIME ANWENDUNGBEISPIELE » Neuer Freund registriert sich » Check-Ins an Freunde pushen » Post des Nutzers synchronisieren » Nutzer erweitert oder schränkt Permissions ein » Neuer like soll auf „deinem“ Portal verwertet werden
    • 19. REALTIME STOLPERFALLE CHECKIN » AWESOME! Checkin kommt direkt auf unser Portal! » Woohooo! » Freund markiert mich bei Checkin » Zählt nicht als eigener Checkin »  Kein Push Und da gibt es sicher noch einige mehr...
    • 20. REALTIME SCALING... » Updates alle 5 Sekunden » Gebündelt » Falls updates » (Oder) wenn sich 1000 Requests angesammelt ! haben » „Your server should be set up to handle this load...“ » Keine Info über Erweiterung der API (Roadmap)
    • 21. BATCH REQUESTREQUESTS BÜNDELN
    • 22. BATCH RQST ! ! !
    • 23. BATCH RQST /ME LIKES FRIENDS !
    • 24. BATCH RQST
    • 25. BATCH RQST
    • 26. REALTIME OKAY, WAS GEHT? » POST + GET Request in einem Batch? » FQL QUERY + MULTIQUERY? » Verschiedene Access Tokens in einem Batch? » Dateien Uploaden? » Abhängigkeiten zwischen einzelnen Requests?
    • 27. BATCH RQST "OMIT_RESPONSE_ON_SUCCESS": FALSE
    • 28. BATCH RQST ”DEPENDS_ON”: “PUBLISH-MESSAGE”
    • 29. BATCH RQST AUSBLICK? Realtime Updates + Batch Requests = Epic.
    • 30. BATCH RQST DOKUMENTATION? » Facebook » Realtime Updates » http://developers.facebook.com/docs/reference/api/realtime/ » Batch Requests » http://developers.facebook.com/docs/reference/api/batch/ » Real-Time API + Spotify » http://www.scribd.com/doc/32403557/Building-real-time-updates-for-the- Graph-API
    • 31. BATCH RQST INHALTE DER DISKUSSION » Fanpages können komplett abonniert werden, allerdings nur wenn die App hinzugefügt wurde. » Sicherheit: Man kann jeden Request der Real-Time Updates verifizieren. » With every response, Facebook sends the X-Hub-Signature HTTP header which contains the SHA1 signature over the response payload, using the application secret as the key - for example: X-Hub- Signature: sha1=12345.... The consumer can verify the signature to validate the integrity of the payload. » Das Einräumen weiterer Rechte ist keine Hemmschwelle für den Durchschnittsnutzer. » Daten sollten besser über HTTPS Übertragen werden (allerdings nicht Pflicht). » Nur eine Person bei Facebook Arbeitet an der Realtime API, allerdings hat Facebook Interesse daran dieses Feature weiter zu entwickeln.
    • 32. KONTAKT Florian Bergmann twitter: @flobby http://facebook.com/florian.bergmann WANTED: RUBY ON RAILS ANYWHERE, JAVASCRIPT ANYLEVEL, NINJAS PART/FULLTIME/FREELANCE Copyright: Diese Präsentation ist urheberrechtlich geschützt. Jede Verwertung, Weitergabe oder Verwendung ohne Zustimmung durch flobbymedia ist unzulässig. Die Inhalte dieser Präsentation sind vertraulich zu behandeln. Die Weitergabe von Informationen und Inhalten an Dritte ist unzulässig. Disclaimer: Alle Zahlen und Daten wurden nach bestem Wissen und Gewissen recherchiert. Eine Garantie für Daten von Dritt-Anbieten kann allerdings nicht übernommen werden.

    ×