phalcon framework: san antonio web developers group

21
Josh Freeman San Antonio Web Development Group 20 March 2014

Upload: jdfreeman11

Post on 28-Nov-2014

794 views

Category:

Technology


1 download

DESCRIPTION

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

TRANSCRIPT

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