Your SlideShare is downloading. ×
0
Mobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many Devices
Mobile APIs: Optimizing APIs for Many Devices
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

Mobile APIs: Optimizing APIs for Many Devices

9,542

Published on

3 Comments
5 Likes
Statistics
Notes
  • <br /><iframe width="350" height="288" src="http://www.youtube.com/embed/79zkHPog2gQ" frameborder="0" allowfullscreen></iframe>
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • <br /><iframe width="350" height="288" src="http://www.youtube.com/embed/aHwfbJeMmeQ" frameborder="0" allowfullscreen></iframe>
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • I've missed webinar yesterday, is there a video of talk?
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total Views
9,542
On Slideshare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
87
Comments
3
Likes
5
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
  • Creative Commons Attribution-Share Alike 3.0 United States License
  • Creative Commons Attribution-Share Alike 3.0 United States License
  • Transcript

    • 1. Mobile APIs: Optimizing APIs forMany Devices12.15.11 @ 11:05 PSTVOIP or Dial-in (see chat)groups.google.com/group/api-craftGreg Brail Sam Ramji Brian Pagano@gbrail @sramji @brianpagno
    • 2. Your hosts
    • 3. @gbrail @sramji @brianpagano
    • 4. groups.google.com/group/api-craft 4
    • 5. youtube.com/apigee 5
    • 6. Mobile APIs: Optimizing APIs forMany Devices
    • 7. Devices are slowParsing XML is (usually) insignificant on servers today.Not so on a phone!(Yes, I realize that devices are getting faster)
    • 8. Networks are slowTheoretically they are fastOnce you start walking /driving /cycling / skydiving around thatchanges
    • 9. Programmers are in a hurryXML? What&#x2019;s that?Forget about SOAP and SAML
    • 10. Public APIs are inconsistentTwitter can respond in one second or five That adds to your user experience Lots of APIs are lots slower
    • 11. Private APIs are slowInternal systems were designed for a few servers.Now we throw a few thousand mobile devices at them.We have seen response times like: 500 milliseconds 5 seconds 30 seconds&#x2026;
    • 12. Most APIs talk too muchMy default Twitter timeline: 45K in JSON, 64K in XMLPrivate APIs are usually worse Designed for internal systems and fast networks We have seen 5K, 36K, 100K and up
    • 13. App DevelopersNone of this is good for you
    • 14. The API TeamIf you can&#x2019;t make the API friendlier to app developers, &#x2026;the developers will take matters into their own hands
    • 15. Tools in your arsenalData transformation and maskingCompressionCachingDistribution These work for both the app developers and the API team
    • 16. Data transformation and masking
    • 17. Convert XML to JSON
    • 18. Offer a &#x201C;mobile version&#x201D; via parameters &#x2026;returns fewer data fields
    • 19. Implement a &#x201C;partial response&#x201D; architecture &#x2026;select fewer elements via parameters
    • 20. Be ruthless! &#x2026;can always offer the &#x201C;full data set&#x201D; via another API
    • 21. Compression
    • 22. Built in to the HTTP protocol
    • 23. Supported by most clients
    • 24. Not enabled by many servers &#x2013; why not?
    • 25. My Twitter timeline: 45K JSON &#xF0E0; gzip &#xF0E0; 6K 64K XML &#xF0E0; gzip &#xF0E0; 6.5K
    • 26. Caching
    • 27. Cache complete API responses &#x2026;in addition to your app server / database cache
    • 28. A good Pragmatic REST URL structure makes this easier
    • 29. Distribution
    • 30. Put caches of API responses all over Use a CDN if you can Return links to it if you can&#x2019;t
    • 31. TakeawaysMobile clients are different than serversJavaScript apps are different than serversSo don&#x2019;t forget that when you implement your API!
    • 32. THANK YOUQuestions and ideas to:@gbrail@sramji@brianpaganogroups.google.com/group/api-craft

    ×