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
www.mimos.my © 2009 MIMOS Berhad. All Rights Reserved.
Errazudin Ishak REST in pieces (with Frapi)
Malaysia Open Source Conference 2011
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
This talk is not
http://goo.gl/EH9v7
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
This talk is not
popmatters.com
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
This talk is not
obscurehorror.com
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
This talk is not
iloveyourtshirt.com
Agenda
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
• You
• Me
• Webservices
• REST
• Frapi
• Resources
• Takeaway
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
..in 30mins?
About You
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
• _ _ _ _ _ _ _ _ _
http://goo.gl/tOJGn
• 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.
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
Webservices
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
http://goo.gl/yE2Tx
Webservices
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
http://goo.gl/yE2Tx
RPC SOA
REST
REST
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
Hype?
http://goo.gl/Ovswf
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
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
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
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
RESTful
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
Media type (JSON, XML etc)
Operations
Base URI
RESTful
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
POST, GET, PUT, DELETE
http://goo.gl/WO1TK
CREATE, READ, UPDT, DELETE
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
Frapi ≠ Frappucino
http://goo.gl/Kj11q
Frapi : The famous 5 mins video
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
Frapi : The famous 5 mins video
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
http://goo.gl/2K9ev
Frapi
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
http://goo.gl/PBLIO
Business logic, not UI
Frapi
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
echolibre community
clients
Frapi
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
..high-level API framework that puts the “rest” back into RESTful.
http://getfrapi.com
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
Frapi powers..
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
web apps
mobile services
legacy systems
Frapi solves..
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
Laziness (Humans?)
Performance issues
TTM
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
..coffee?
http://instagr.am/p/GzRH_/
Frapi : Get, Set, Go..!!
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
Getfrapi Req & Dep
Dir & Permissions
Webserver Config
Frapi
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
Admin http://admin.frapi
Public http://api.frapi
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()
Frapi : admin.frapi
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
Frapi : admin.frapi
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
Frapi : admin.frapi
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
Frapi : admin.frapi
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
Frapi : admin.frapi
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
Frapi : admin.frapi
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
Frapi : admin.frapi
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
Frapi
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
Public API
- No ZF - Heavily relies on opcode caches
Frapi : api.frapi
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
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
Takeaway
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
• Recess! Framework http://www.recessframework.org/
Takeaway
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
• Tonic http://peej.github.com/tonic/
Takeaway
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
• Chinchilla http://restfulchinchilla.com/example.html
THANK YOU
www.mimos.my © 2011 MIMOS Berhad. All Rights Reserved.
* All images, logos and data are the copyright of their respective owners
@errazudin