php in enterprise : mahasak pijittum

41
Mahasak Pijittum [Narisa.com : Zelda]

Upload: mahasak-pijittum

Post on 01-Sep-2014

1.356 views

Category:

Documents


0 download

DESCRIPTION

Slide for pOrt80BKK

TRANSCRIPT

Page 1: Php in enterprise : Mahasak Pijittum

Mahasak Pijittum[Narisa.com : Zelda]

Page 2: Php in enterprise : Mahasak Pijittum

แล้วคนพูดเน่ีย..ใครหวา่?Mahasak Pijittum

Present• Zend Certified Engineer• Managing Director IGENCO• Product Research & Development IGENCO

Past• PHP Consult @ SLC1998• Developer @ SLC1998• E-Office Product Manager @ SLC1998

Page 3: Php in enterprise : Mahasak Pijittum

หัวขอ้ : PHP in Enterprise What is Enterprise … ? PHP Capabilities Why PHP doesn’t consider in Enterprise? How to go Enterprise ? PHP in Enterprise : The missing puzzle Practical sample for PHP in Thais Enterprise

Private Sector : Insurance Business Government State Enterprise

Q&A

Page 4: Php in enterprise : Mahasak Pijittum

What is Enterprise ?

Page 5: Php in enterprise : Mahasak Pijittum

What is Enterprise ?

Page 6: Php in enterprise : Mahasak Pijittum

What is Enterprise ?An enterprise application is a business

application, obviously. As most people use the term, it is a big business application.

MSDN(http://msdn.microsoft.com/en-us/library/aa267045%28VS.60%29.aspx)

Page 7: Php in enterprise : Mahasak Pijittum

What is Enterprise ? Software that performs business functions

such as order processing, procurement, production scheduling, customer information management, accounting, etc. It is typically hosted on servers and provides simultaneous services to a large number of users, typically over a computer network. This is in contrast to single-user application that execute on a user's personal computer and serve only one user at a time. Wikipedia (http://en.wikipedia.org/wiki/Enterprise_application/ )

Page 8: Php in enterprise : Mahasak Pijittum

PHP CapabilitiesDesktop Application

PHP GTK Web Application

PHP Server Application

Nanoweb Others

WebServices AJAX

Page 9: Php in enterprise : Mahasak Pijittum

Programming Language Index

Page 10: Php in enterprise : Mahasak Pijittum

Trends.google.com

Page 11: Php in enterprise : Mahasak Pijittum
Page 12: Php in enterprise : Mahasak Pijittum

Why PHP doesn’t consider in Enterprise?

Take a closer look…on these problem.Mindset

IT manager / Stakeholder ,They comparing a features of PHP/.Net/J2EE for their projects.

You cannot compare PHP to .Net / J2EE. It should be WAMP/LAMP to .Net to J2EE

Page 13: Php in enterprise : Mahasak Pijittum

Why PHP doesn’t consider in Enterprise?

Page 14: Php in enterprise : Mahasak Pijittum

Why PHP doesn’t consider in Enterprise?

They’re missing some point. They compare open source product to commercial product.

Zend Server and Zend Studio can help on Management and Supporting Developers.

Page 15: Php in enterprise : Mahasak Pijittum

Zend’s Commercial Products

Page 16: Php in enterprise : Mahasak Pijittum

Why PHP doesn’t consider in Enterprise?

Page 17: Php in enterprise : Mahasak Pijittum

Why PHP doesn’t consider in Enterprise?

Deployment .Net

• MSI • EXE

J2EE• (.war) Web Application Archived• (.ear) Enterprise Application Archived• Maven repository• Etc.

Page 18: Php in enterprise : Mahasak Pijittum

PHP Deployment Solution?Softlink (Symlink)

Softlink / Hardlink Shell Extension win32 http://schinagl.priv.at/nt/hardlinkshellext/hardlinkshellext.html

Page 19: Php in enterprise : Mahasak Pijittum

PHP Deployment Solution?Phing + dbdeploy + ftp

http://www.buildmeister.com/articles/automating_the_php_deployment_process_with_phing,_dbdeploy_and_ftp

Phing• Apache Ant for PHP• http://phing.info/trac/

Dbdeploy • Database Change Management tool• http://dbdeploy.com/

Page 20: Php in enterprise : Mahasak Pijittum

PHP Deployment Solution?CruiseControl +phpUndercontrol

http://cruisecontrol.sourceforge.net/ http://phpundercontrol.org/

CruiseControl• Continuous Integration Tools written in Java

Page 21: Php in enterprise : Mahasak Pijittum

PHP Deployment Solution?Maven for PHP

http://www.php-maven.org/deploy.html

Just use • mvn deploy

Page 22: Php in enterprise : Mahasak Pijittum

PHP Deployment Solution?Capistrano

http://www.jonmaddox.com/2006/08/16/automated-php-deployment-with-capistrano/

Capistrano + Webistrano http://wiki.github.com/peritor/webistrano/

Hudson

Page 23: Php in enterprise : Mahasak Pijittum

How to go Enterprise ?Maintainability

Clients always needs maintainability for their products.

How to keep maintainability level ? It’s depends on your development process. Generally, focused on

• Standards• Framework• Testing• Code Coverage

Page 24: Php in enterprise : Mahasak Pijittum

How to go Enterprise ?Standards

Define coding conventional• Zend Framework Sample Coding Standard

Define environmental configuration

Page 25: Php in enterprise : Mahasak Pijittum

How to go Enterprise ?Framework

Zend Framework http://framework.zend.com/

CodeIgniter http://codeigniter.com/

Symfony http://www.symfony-project.org/

CakePHP http://cakephp.org/

How to choose?• Features• Maturity• Support / Communities• Sponsor• Trends

Page 26: Php in enterprise : Mahasak Pijittum

How to go Enterprise ?Testing

phpUnit• http://www.phpunit.de/• Integrated in ZF

simpleTest • http://www.simpletest.org/

เขยีนโปรแกรมไมท่ำา UnitTest บาปหนักนะครบั

Page 27: Php in enterprise : Mahasak Pijittum

How to go Enterprise ?Code Coverage

a measure used in software testing. It describes the degree to which the source code of a program has been tested. It is a form of testing that inspects the code directly and is therefore a form of white box testing[1]. In time, the use of code coverage has been extended to the field of digital hardware, the contemporary design methodology of which relies on hardware description languages (HDLs).

PHPUnit http://phpunit.de

PHP_CodeCoverage http://github.com/sebastianbergmann/php-code-coverage

Page 28: Php in enterprise : Mahasak Pijittum

Debugger xDebug + firefox + easy xDebug(extension)

• http://xdebug.org/• http://www.mozilla.com/ • https://addons.mozilla.org/en-US/firefox/addon/58688/

Zend-Studio Debugger• http://www.zend.com

Missing Puzzle : Stairway to Heaven

Page 29: Php in enterprise : Mahasak Pijittum

Missing Puzzle : Stairway to Heaven

IDM/SSO SimpleSAMLphp

• http://simplesamlphp.org/

OpenASelect• http://www.openaselect.org/trac/openaselect/

OpenSSO• https://opensso.dev.java.net/

JOSSO• http://www.josso.org/

Page 30: Php in enterprise : Mahasak Pijittum

Missing Puzzle : Stairway to Heaven

Message Queue Apache ActiveMQ

• http://activemq.apache.org/

RabbitMQ• http://www.rabbitmq.com/

Page 31: Php in enterprise : Mahasak Pijittum

Missing Puzzle : Stairway to Heaven

Java-.Net Bridge http://php-java-bridge.sourceforge.net

Page 32: Php in enterprise : Mahasak Pijittum

Missing Puzzle : Stairway to Heaven

Batch Processing/Job Scheduling Zend Server Job Queue

• http://www.zend.com

Gearman• http://gearman.org/

Page 33: Php in enterprise : Mahasak Pijittum

Missing Puzzle : Stairway to Heaven

Reporting Tools Eclipse BIRT via HTTP

• http://www.eclipse.org/birt/phoenix/

iReport (JasperReport) via JavaBridge API / Web Service• http://jasperforge.org/projects/ireport

CrystalClear (i-Net Crystal Clear) via PHP Proxy• http://www.inetsoftware.de/products/crystal-clear

Page 34: Php in enterprise : Mahasak Pijittum

Missing Puzzle : Stairway to Heaven

Load balance/Clustering Zend Server Apache mod_proxy Varnish

Page 35: Php in enterprise : Mahasak Pijittum

Missing Puzzle : Stairway to Heaven

Caching Memcached Varnish

Page 36: Php in enterprise : Mahasak Pijittum

Success Story : State Enterprise

Profile No. of users : 400 – 600 depends Application : Workflow 1 Application Language Uses : PHP + Java Current Status : Active

Page 37: Php in enterprise : Mahasak Pijittum

Success Story : State Enterprise

Page 38: Php in enterprise : Mahasak Pijittum

Success Story : Insurance Business

Profile No. of users : 600-800 depends Application : Document Management 1

Application ,Workflow 1 Application Interface :

• Insure90 AS/400 Application server• Oracle Financial

Language Uses : PHP + Java Current Status : Active

Page 39: Php in enterprise : Mahasak Pijittum

Success Story : State Enterprise

Page 40: Php in enterprise : Mahasak Pijittum

On-GStory : GovernmentProfile

No. of user : around 40,000 Application : 6 Application + SSO Interface :

• Build On top Of Microsoft Office / OpenOffice as Platform

• PHP Backend Application server with JCR Stores• Oracle Financial

Language Uses : PHP + Java Current Status : Testing

Page 41: Php in enterprise : Mahasak Pijittum