Dicas sobre API (case Stormpath, Edmunds e Twitter)

272
-1

Published on

Conceitos importantes sobre APIs.

Autores: Felipe Caparelli e Rodrigo Oliveira

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

  • Be the first to like this

No Downloads
Views
Total Views
272
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Dicas sobre API (case Stormpath, Edmunds e Twitter)

  1. 1. Caso 1
  2. 2. O que é? Stormpath é uma API gerenciadora de identidade e serviço de controle de acesso hospedada na nuvem que implementa melhores práticas de segurança. www.stormpath.com
  3. 3. O que é? www.stormpath.com
  4. 4. Metodologia www.stormpath.com REST + JSON
  5. 5. Por quê REST? www.stormpath.com Escalabilidade Generalidade (HTTP) Independência Latência (Caching) Segurança Encapsulamento
  6. 6. Por quê JSON? www.stormpath.com Ubiquidade (disseminado) Simplicidade Legibilidade Escalabilidade Flexibilidade
  7. 7. Composição www.stormpath.com Aplicações Diretórios Contas Grupos Associações Workflows
  8. 8. Fundamentos O Stormpath apresenta alguns fundamentos, um deles é a exposição de recursos através de substantivos e não verbos na definição das URLs. www.stormpath.com
  9. 9. Fundamentos Há apenas 2 tipos de recursos  Collection Resource: /applications - Coleção  Instance Resource: /applications/a1b2c3 - Instância (id) www.stormpath.com
  10. 10. API Keys www.stormpath.com Entropia Reset de senha Independência Velocidade Exposição limitada Rastreabilidade
  11. 11. Caso 2
  12. 12. Motivação developer.edmunds.com Reconhecimento da marca Maior inovação Maior rentabilidade Descoberta de talentos Capacitação interna
  13. 13. developer.edmunds.com API Lançada em setembro de 2011
  14. 14. developer.edmunds.com
  15. 15. developer.edmunds.com
  16. 16. developer.edmunds.com
  17. 17. developer.edmunds.com
  18. 18. Resultados developer.edmunds.com 1 ano após o lançamento... 11 Milhões de chamadas a API Capacitação interna Alto engajamento 80% dos dados expostos
  19. 19. Próximos passos developer.edmunds.com Widgets API 2.0
  20. 20. Widget developer.edmunds.com Rápida adoção/implementação Melhor controle analísitico Solução SAAS Extensibilidade
  21. 21. developer.edmunds.com
  22. 22. API 2.0 developer.edmunds.com Simplificação dos métodos Documentação melhorada Escrita de API
  23. 23. Caso 3
  24. 24. Alguns Dados dev.twitter.com  70 Milhões de tweets por dia (2010) 800 tweets por seg.  140 Milhões de tweets por dia (2011)  1 tweet text = 140 caracteres (200 bytes)  800 tweets por seg. ~ 160 Kb/Seg. | 9 Mb/Min. | 12 Gb/dia  150 Mil usuários registrados (2006/2010)
  25. 25. Problema dev.twitter.com MySQL não consegue gerar IDs rápido o suficiente Centralizado - ponto único para controle de falhas
  26. 26. Problema dev.twitter.com
  27. 27. + Dados (2011) dev.twitter.com  1 Bilhão de tweets por semana - aumento de 204%  117 Milhões de tweets no dia 11 de março - tsunami no japão  Nasdak 1Tb gerado por dia > Twitter 8 Tb/dia  8Tb por dia aprox. 100 Mb/Seg.  572 Mil usuários registrados (março de 2011)  Média de 460 Mil usuários/dia em fevereiro de 2011
  28. 28. Solução dev.twitter.com Snowflake Geração de números UIDs em larga escala Alta disponibilidade e não coordenado (10kqps) Compatível com o ecosistema do Twitter https://github.com/twitter/snowflake
  29. 29. Solução dev.twitter.com FlockDB Banco de dados distribuido Alta taxa de operações CRUD Conjunto de queries aritiméticas complexas https://github.com/twitter/flockdb
  30. 30. API dev.twitter.com 43 APIs (2010) - 86 APIs (2011) 600 Twitter mashups 6 Bilhões chamadas da API por dia 70 mil chamadas por segundo ~1600 desenvolvedores no Google Group
  31. 31. Tecnologias dev.twitter.com REST API (XML|JSON via HTTP) Sistema Poll-based / pseudo real-time hosebird Streaming API Long poll HTTP Entrega quase em tempo real dos tweets
  32. 32. Tecnologias
  33. 33. Dados API dev.twitter.com Crescimento 752% em 2008 1358% em 2009 2010 - 150 Milhões de pessoas geram ~1000 TPS Meta: suportar metade do mundo e seus dispositivos (6 Bilhões de pessoas / 5 Bilhões de celulares)
  34. 34. Dados API dev.twitter.com 1.648.440 sites usam a plataforma Twitter (Mar 2013) Obs: Destes, 611.329 estão entre os mais visitados da Internet Aprox. 564 mil sites usando Twitter Widgets
  35. 35. Desafios dev.twitter.com Tempo real Indexação, busca e análise Sistema relevante Graph Database Storage Escalabilidade e eficiência
  36. 36. Dados Relevantes APIs Google - 5 bilhões de chamadas/dia (abril de 2010) facebook - 5 bilhões de chamadas/dia (outubro de 2009) twitter - 3 bilhões de chamadas/dia, 75% de todo o tráfego (Abr 2010) ebay - 8 bilhões de chamadas/mês (3º trimestre de 2009) bing - 3 bilhões de chamadas/mês (Mar 2009) salesforce - 50% de todo o tráfego é feito via API (Mar 2008) amazon WS - 100 bilhões de objetos armazenados no S3 (Mar 2010)
  37. 37. Dados Relevantes APIs
  38. 38. Dados Relevantes APIs
  39. 39. Dados Relevantes APIs
  40. 40. Dados Relevantes APIs
  41. 41. Dados Relevantes APIs
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×