errazudin - rest in pieces (with frapi) - malaysia open source conference 2011
DESCRIPTION
With FRAPI, you can rapidly develop RESTful APIs that are high performing and scalable. Instead of 'fighting' with available PHP frameworks, Frapi is a framework that embraces the standards and mindset of web modelling, which is definitely fantastic for building web applications. It can also be applied to power your web applications, mobile services, and also legacy systems.This talk will covers how developers can actually rest, with Frapi.TRANSCRIPT
![Page 1: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/1.jpg)
www.mimos.my © 2009 MIMOS Berhad. All Rights Reserved.
Errazudin Ishak REST in pieces (with Frapi)
Malaysia Open Source Conference 2011
![Page 2: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/2.jpg)
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
This talk is not
http://goo.gl/EH9v7
![Page 3: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/3.jpg)
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
This talk is not
popmatters.com
![Page 4: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/4.jpg)
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
This talk is not
obscurehorror.com
![Page 5: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/5.jpg)
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
This talk is not
iloveyourtshirt.com
![Page 6: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/6.jpg)
Agenda
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
• You
• Me
• Webservices
• REST
• Frapi
• Resources
• Takeaway
![Page 7: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/7.jpg)
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
..in 30mins?
![Page 8: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/8.jpg)
About You
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
• _ _ _ _ _ _ _ _ _
http://goo.gl/tOJGn
![Page 9: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/9.jpg)
• Errazudin Ishak
• @errazudin
• Senior engineer @ Mimos Bhd Malaysia
• Focuses on web application development, deployment, performance and stability.
• 2009 : foss.my , MyGOSSCON
• 2010 : Entp. PHP Techtalk, BarcampKL, PHP Meetup, MOSC2010, PHP Northwest UK, MyGOSSCON
• 2011 : INTAN Tech Update, Wordpress Conf. Asia, Joomla! Day
About Me
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
![Page 10: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/10.jpg)
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
![Page 11: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/11.jpg)
Webservices
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
http://goo.gl/yE2Tx
![Page 12: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/12.jpg)
Webservices
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
http://goo.gl/yE2Tx
RPC SOA
REST
![Page 13: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/13.jpg)
REST
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
Hype?
http://goo.gl/Ovswf
![Page 14: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/14.jpg)
REST
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
Protocol Usage by APIs
REST
SOAP
JavaScript
XML-RPC
Atom
http://www.programmableweb.com/apis
04-07-2011
![Page 15: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/15.jpg)
REST
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
REST
SOAP
JavaScript
XML-RPC
Atom
Protocol Usage by APIs
http://www.programmableweb.com/apis
04-07-2011
![Page 16: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/16.jpg)
REST
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
http://www.programmableweb.com/apis
04-07-2011
Top APIs for Mashups (last 14 days)
GoogleMaps
YouTube
Spotify
Wikimedia
WareNetCheckWare
AmazonMarketPlace
GAE
FanFeedrSportsNews
![Page 17: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/17.jpg)
REST
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
http://www.programmableweb.com/apis
04-07-2011
GoogleMaps 20%
YouTube 12%
Twitter 12%
Spotify 8%
Wikimedia 8%
WareNetCheckWare
8%
Facebook 8%
AmazonMarketPlace
8%
GAE 8%
FanFeedrSportsNews
8%
Top APIs for Mashups
![Page 18: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/18.jpg)
RESTful
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
Media type (JSON, XML etc)
Operations
Base URI
![Page 19: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/19.jpg)
RESTful
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
POST, GET, PUT, DELETE
http://goo.gl/WO1TK
CREATE, READ, UPDT, DELETE
![Page 20: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/20.jpg)
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
Frapi ≠ Frappucino
http://goo.gl/Kj11q
![Page 21: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/21.jpg)
Frapi : The famous 5 mins video
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
![Page 22: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/22.jpg)
Frapi : The famous 5 mins video
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
http://goo.gl/2K9ev
![Page 23: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/23.jpg)
Frapi
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
http://goo.gl/PBLIO
Business logic, not UI
![Page 24: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/24.jpg)
Frapi
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
echolibre community
clients
![Page 25: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/25.jpg)
Frapi
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
..high-level API framework that puts the “rest” back into RESTful.
http://getfrapi.com
![Page 26: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/26.jpg)
Frapi : “rest”
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
Focus on the core of your product
handling multiple media types
returning the correct response codes
generating API documentation
![Page 27: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/27.jpg)
Frapi powers..
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
web apps
mobile services
legacy systems
![Page 28: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/28.jpg)
Frapi solves..
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
Laziness (Humans?)
Performance issues
TTM
![Page 29: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/29.jpg)
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
..coffee?
http://instagr.am/p/GzRH_/
![Page 30: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/30.jpg)
Frapi : Get, Set, Go..!!
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
Getfrapi Req & Dep
Dir & Permissions
Webserver Config
![Page 31: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/31.jpg)
Frapi
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
Admin http://admin.frapi
Public http://api.frapi
![Page 32: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/32.jpg)
Frapi
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
Admin Interface
- ZF as underlying framework - Create resources, actions, URIs, etc - Developers is to write their business logic and datasource connectors and plug them in the generated FRAPI REST handlers - executeGet(), executePost(), executePut(), executeDelete(), executeHead()
![Page 33: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/33.jpg)
Frapi : admin.frapi
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
![Page 34: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/34.jpg)
Frapi : admin.frapi
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
![Page 35: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/35.jpg)
Frapi : admin.frapi
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
![Page 36: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/36.jpg)
Frapi : admin.frapi
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
![Page 37: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/37.jpg)
Frapi : admin.frapi
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
![Page 38: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/38.jpg)
Frapi : admin.frapi
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
![Page 39: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/39.jpg)
Frapi : admin.frapi
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
![Page 40: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/40.jpg)
Frapi
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
Public API
- No ZF - Heavily relies on opcode caches
![Page 41: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/41.jpg)
Frapi : api.frapi
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
![Page 42: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/42.jpg)
Resources
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
• Getfrapi > getfrapi.com
• Dev Handbook > http://frapi.github.com/
• Group > http://groups.google.com/group/frapi-general
• http://webchat.freenode.net/?channels=frapi
• “RESTful APIs and FRAPI, a matter of minutes” http://goo.gl/Fbm82
![Page 43: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/43.jpg)
Takeaway
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
• Recess! Framework http://www.recessframework.org/
![Page 44: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/44.jpg)
Takeaway
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
• Tonic http://peej.github.com/tonic/
![Page 45: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/45.jpg)
Takeaway
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
• Chinchilla http://restfulchinchilla.com/example.html
![Page 46: Errazudin - REST in pieces (with frapi) - Malaysia Open Source Conference 2011](https://reader034.vdocuments.us/reader034/viewer/2022052619/555a4c8cd8b42ad56a8b48ae/html5/thumbnails/46.jpg)
THANK YOU
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
* All images, logos and data are the copyright of their respective owners
@errazudin