Yapc

1,919 views
1,836 views

Published on

0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,919
On SlideShare
0
From Embeds
0
Number of Embeds
332
Actions
Shares
0
Downloads
18
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

Yapc

  1. 1. Web mixi Copyright 2009 © mixi,Inc. All right reserved. 1
  2. 2. •  –  •  –  Google API Expert (OpenSocial) –  Mashup Award 3rd Copyright 2009 © mixi,Inc. All right reserved. 2
  3. 3. •  mixi •  •  •  mixi •  Copyright 2009 © mixi,Inc. All right reserved. 3
  4. 4. •  Perl Copyright 2009 © mixi,Inc. All right reserved. 4
  5. 5. mixi Copyright 2009 © mixi,Inc. All right reserved. 5
  6. 6. mixi, Inc Copyright 2009 © mixi,Inc. All right reserved. 6
  7. 7. mixi Platform “mixi ” “mixi ” Web “mixi” ID PW 2009 2008 8 20 mixi PC -OpenID ver2.0 -OAuth -mixi -OpenSocial Copyright 2009 © mixi,Inc. All right reserved. 7
  8. 8. Copyright 2009 © mixi,Inc. All right reserved. 8
  9. 9. Community API Person & Friends API Persistence API gadgets. io API Albums API Invite API Activities API Copyright 2009 © mixi,Inc. All right reserved. 9
  10. 10. mixi •  –  231 –  1 - ( ) •  User : 395,598 –  2 ( ) •  User : 218,529 –  3 ( ) •  User : 163,740 Copyright 2009 © mixi,Inc. All right reserved. 10
  11. 11. Invite Copyright 2009 © mixi,Inc. All right reserved. 11
  12. 12. Copyright 2009 © mixi,Inc. All right reserved. 12
  13. 13. OpenSocial OpenSocial v0.8.1 mixi API Copyright 2009 © mixi,Inc. All right reserved. 13
  14. 14. mixi OpenSocial mixi (PC ) mixi ( ) (OpenSocial JavaScript API) (OpenSocial RESTful Protocol) Copyright 2009 © mixi,Inc. All right reserved. 14
  15. 15. mixi PC mixi <?xml version=“1.0” encoding=“utf-8”?> <Module> <ModulePrefs title=“Hello, world!”> Gadget XML <Require feature=“opensocial-0.8” /> </ModulePrefs> <Content type=“html”><![CDATA[ Person & Friends API <div>Hello, mixi !</div> ]]></Content> Activities API </Module> Persistence API XML + HTML + JavaScript + Flash gadgets.io API Invite API Albums API Copyright 2009 © mixi,Inc. All right reserved. 15
  16. 16. mixi PC mixi Web URL <?xml version=“1.0” encoding=“utf-8”?> <Module> function init() { <ModulePrefs title=“Hello, world!”> var req = opensocial.newDataRequest(); <Require feature=“opensocial-0.8” /> req.add(req.newFetchPersonRequest( </ModulePrefs> opensocial.IdSpec.PersonId.VIEWER), <Content type=“html”><![CDATA[ “viewer”); req.send(function(data) { <div>Hello, mixi !</div> var viewer = data.get(“viewer”).getData(); ]]></Content>something… // do } </Module> } gadgets.util.registerOnLoadHandler(init); Copyright 2009 © mixi,Inc. All right reserved. 16
  17. 17. mixi mixi <?xml version=“1.0” encoding=“utf-8”?> <Module> Gadget XML <ModulePrefs title=“Hello, world!”> <Require feature=“opensocial-0.8” /> </ModulePrefs> Person & Friends API <Content type=“url” view=“mobile” href=“http://example.com/” /> </Module> Activities API Persistence API HTML + Flash + RESTful API Albums API Copyright 2009 © mixi,Inc. All right reserved. 17
  18. 18. mixi RESTful Protocol + OAuth Copyright 2009 © mixi,Inc. All right reserved. 18
  19. 19. Gadget XML / <?xml version=“1.0” encoding=“utf-8”?> <Module> <ModulePrefs title=“Hello, world!”> <Require feature=“opensocial-0.8” /> </ModulePrefs> PC <Content type=“html” view=“home,canvas,profile”><![CDATA[ <div>Hello, mixi !</div> ]]></Content> <Content type=“url” view=“mobile” href=“http://foo.com/hello.pl” /> </Module> Copyright 2009 © mixi,Inc. All right reserved. 19
  20. 20. Copyright 2009 © mixi,Inc. All right reserved. 20
  21. 21. OpenSocial •  –  Social Data API •  /people, /activities, /appdata, JS(opensocial.*) –  Gadget API •  /gadgets/makeRequest, JS(gadgets.*) –  Gadget Rendering •  /gadgets/ifr Copyright 2009 © mixi,Inc. All right reserved. 21
  22. 22. OSS •  Apache Shindig –  Apache Incubator OSS –  iGoogle –  2007 12 12 –  Googler –  Java PHP Shindig  -­‐    an  Apache  incubator  project  for  OpenSocial  and  gadgets   http://incubator.apache.org/shindig/ Copyright 2009 © mixi,Inc. All right reserved. 22
  23. 23. OpenSocial SNS /gadgets/ifr /gadgets/makeRequest /social/data/people /social/data/activities /social/data/appdata Copyright 2009 © mixi,Inc. All right reserved. 23
  24. 24. mixi Platform Main API (Perl) /social/data/people /social/data/activities /social/data/appdata (Java ) /gadgets/ifr /gadgets/makeRequest Copyright 2009 © mixi,Inc. All right reserved. 24
  25. 25. API Server API (Perl) balancer /social/data/people /social/data/activities /social/data/appdata apache mod_perl memcached MySQL Copyright 2009 © mixi,Inc. All right reserved. 25
  26. 26. API Server API (Perl) RESTful Protocol /social/data/people Accept: application/atom+xml /social/data/activities Atom Feed/Entry /social/data/appdata Accept: application/json JSON Server Handler::People socialdata.js people: Handler::Activity uri: /social/data/people/{guid}/{selector} handler: People activity: Handler::AppData uri: /social/data/activities/{guid}/{appid}/{selector} handler: Activity appdata: uri: /social/data/appdata/{guid}/{appid}/{selector} handler: AppDAta Copyright 2009 © mixi,Inc. All right reserved. 26
  27. 27. Copyright 2009 © mixi,Inc. All right reserved. 27
  28. 28. •  8/24 8/31 –  mixi –  API Copyright 2009 © mixi,Inc. All right reserved. 28
  29. 29. Shindig •  Shindig –  mixi •  504 –  Shindig •  close –  OS •  Copyright 2009 © mixi,Inc. All right reserved. 29
  30. 30. API API •  API –  /social/data/* •  mixi •  –  API •  •  mixi Copyright 2009 © mixi,Inc. All right reserved. 30
  31. 31. API mixi Platform Copyright 2009 © mixi,Inc. All right reserved. 31
  32. 32. API API •  –  4 •  1 2 •  2 4 –  •  CPU: 100% Copyright 2009 © mixi,Inc. All right reserved. 32
  33. 33. API API •  Devel::NYTProf Copyright 2009 © mixi,Inc. All right reserved. 33
  34. 34. API API •  –  •  •  DB •  –  Copyright 2009 © mixi,Inc. All right reserved. 34
  35. 35. mixi •  mixi mixi mixi Platform Copyright 2009 © mixi,Inc. All right reserved. 35
  36. 36. mixi •  mixi –  mixi Platform –  mixi –  –  mixi → Copyright 2009 © mixi,Inc. All right reserved. 36
  37. 37. mixi Copyright 2009 © mixi,Inc. All right reserved. 37
  38. 38. mixi •  Person & Friends API •  •  Activity + MediaItem •  Copyright 2009 © mixi,Inc. All right reserved. 38
  39. 39. mixi •  Person & Friends API eco –  •  startIndex + count –  count=1000 •  hasApp –  –  •  fields –  –  Copyright 2009 © mixi,Inc. All right reserved. 39
  40. 40. mixi •  eco –  •  •  –  •  •  OSS –  •  → NG → OK Copyright 2009 © mixi,Inc. All right reserved. 40
  41. 41. mixi eco •  Activity + MediaItem –  Activitiy makeRequest Copyright 2009 © mixi,Inc. All right reserved. 41
  42. 42. mixi eco •  –  •  •  mixi = mod_perl + memcached + MySQL –  •  Google AppEngine •  Amazon EC2, S3 Copyright 2009 © mixi,Inc. All right reserved. 42
  43. 43. Copyright 2009 © mixi,Inc. All right reserved. 43
  44. 44. mixi Developer Center mixi http://developer.mixi.co.jp/ Copyright 2009 © mixi,Inc. All right reserved. 44
  45. 45. mixi Platform mixi mixi mixi Copyright 2009 © mixi,Inc. All right reserved. 45
  46. 46. Copyright 2009 © mixi,Inc. All right reserved. 46

×