Performance Evaluation of PHP Frameworks (CakePHP and CodeIgniter) in relation to the Object-Relational Mapping, with respect to Load Testing
Independent thesis Advanced level (degree of Master (Two Years))Student thesis
Context: Information technology is playing an important role in creating innovation in business. Due to increase in demand of information technology, web development has become an important field. PHP is an open source language, which is widely used in web development. PHP is used to develop dynamic web pages and it has the ability to connect with database. PHP has some good features i.e. cross platform compatibility, scalability, efficient execution and is an open source technology. These features make it a good choice for developers to choose PHP for web development. The maintenance of an application becomes difficult and performance being considerably reduced, if PHP is to be used without using its frameworks. To resolve these issues, different frameworks have been introduced by web development communities on the internet. These frameworks are based on Model, View, Controller design pattern. These frameworks provide, different common functionalities and classes in the form of helpers, components, and plug-in to reduce the development time. Due to these features like robustness, scalability, maintainability and performance, these frameworks are mostly used for web development in PHP, with performance being considered the most important factor. Objectives:The objective of this thesis is to compare and analyze the affect of data abstraction layer (ORM) on the performance of two PHP frameworks. These two frameworks are CakePHP and CodeIgniter. CAKEPHP has built-in support of object-relational mapping (ORM) but CodeIgniter has no built-in support of object-relational mapping (ORM). We considered load testing and stress testing to measure the performance of these two frameworks. Methods: We performed the experiment to show the performance of CakePHP (with ORM) and CodeIgniter (no ORM) frameworks. We developed two applications in both the PHP frameworks, with the same scope and design and measured the performance of these applications, with respect to load testing, with automated testing tool. The results have been obtained by testing the performance of both the applications on local and live servers. Conclusions:After analyzing the results we concluded that CodeIgniter is useful for small and medium sized applications. But CAKEPHP is good for large and enterprise level applications, as in stress conditions the CAKEPHP performed better than CodeIgniter on both local and live environment.
Place, publisher, year, edition, pages
2014. , 54 p.
Model View and Control, PHP, Page Load Time, Stress Testing, CAKEPHP, Codeigniter, Web Development, Object to relation Mapping
Computer Science Software Engineering
IdentifiersURN: urn:nbn:se:bth-4116Local ID: oai:bth.se:arkivex6F9EB5072AA54A67C1257C8A0067136BOAI: oai:DiVA.org:bth-4116DiVA: diva2:831439