Phalcon Framework: San Antonio Web Developers Group

21
Josh Freeman San Antonio Web Development Group 20 March 2014

description

Presentation by Josh Freeman at the San Antonio Web Developers Group Meetup on March 20, 2014.

Transcript of Phalcon Framework: San Antonio Web Developers Group

Page 1: Phalcon Framework: San Antonio Web Developers Group

Josh Freeman

San Antonio Web Development Group20 March 2014

Page 2: Phalcon Framework: San Antonio Web Developers Group

What is a Framework?

● Web Development Library

● Application Skeleton

● Proven Functionality

● Hopes and Dreams of a Developer

Page 3: Phalcon Framework: San Antonio Web Developers Group

The Problem with Frameworks

● Speed

● Complexity

● Resources

Page 4: Phalcon Framework: San Antonio Web Developers Group

PHP as an Interpreted Language

➔ Receive Request (from Apache/Nginx)

➔ Read file from HHD/SSD

➔ Parse file

➔ Compile into OpCodes

➔ Execute through Zend Engine

➔ Render Output

Davey Shafik: PHP Performance I: Everything You Need to Know about OpCode Caches

Page 5: Phalcon Framework: San Antonio Web Developers Group

Back to the Problem with Frameworks

● Framework design requires many files

● PHP lifecycle runs for every file called during runtime

(without caching)

● Framework load happens for EVERY request

Page 6: Phalcon Framework: San Antonio Web Developers Group

Phalcon to the Rescue!

Page 7: Phalcon Framework: San Antonio Web Developers Group

What is Phalcon?

MVC Framework

SOLID Design

C Extension

Awesome

Page 8: Phalcon Framework: San Antonio Web Developers Group

Benchmarks

Operating System: Mac OS X Lion 10.7.4

Web Server: Apache httpd 2.2.22

PHP: 5.3.15

CPU: 2.04 Ghz Intel Core i5

Main Memory: 4GB 1333 MHz DDR3

Hard Drive: 500GB SATA Disk

Page 9: Phalcon Framework: San Antonio Web Developers Group

BenchmarksFile Includes

Page 10: Phalcon Framework: San Antonio Web Developers Group

BenchmarksMemory Consumption

Page 11: Phalcon Framework: San Antonio Web Developers Group

BenchmarksResponse Time

Page 12: Phalcon Framework: San Antonio Web Developers Group

BenchmarksResponse Time

Page 13: Phalcon Framework: San Antonio Web Developers Group

Do I Need to Know C?

NO

Page 14: Phalcon Framework: San Antonio Web Developers Group

Do I Need to Know PHP?

YES

Page 15: Phalcon Framework: San Antonio Web Developers Group

OK, What Do I Start?

~$ sudo apt-get install php5-dev libpcre3-dev gcc make

~$ git clone git://github.com/phalcon/cphalcon.git

~$ cd cphalcon/build

~$ sudo ./install

Page 16: Phalcon Framework: San Antonio Web Developers Group

OK, What's Next?

#Ubuntu: Add this line in your php.ini

extension=phalcon.so

Page 17: Phalcon Framework: San Antonio Web Developers Group

The Good Ol' Restart

Restart your Web server

Page 18: Phalcon Framework: San Antonio Web Developers Group

Now What?

READphalconphp.com

Page 19: Phalcon Framework: San Antonio Web Developers Group

Demonstration

Page 20: Phalcon Framework: San Antonio Web Developers Group

Feedback || Questions

Josh Freeman @jdfreeman11

github.com/jdfreeman

Page 21: Phalcon Framework: San Antonio Web Developers Group

Roll the Credits

● Phalcon Development Team– phalconphp.com

● Davey Shafik– PHP Performance: Under The Hood

– PHP Performance I: Everything You Need to Know about OpCode Caches

● MemeGenerator/KnowYourMeme