Phalcon là gì? Phalcon là framework PHP như Laravel nhưng có kiến trúc rất đặt biệt. Vì nó được thiết kế cho mục tiêu: chạy nhanh nhất.
Mục lục
- Phalcon là gì?
- Đôi điều về các PHP Framework
- Phalcon được đánh giá cao
- Đặc điểm của Phalcon
- Ưu khuyết điểm của Phalcon
- So sánh Phalcon với Laravel
Phalcon là gì?
Phalcon là gì và có gì hay? Bài viết sẽ giới thiệu các đặc điểm kỹ thuật, ưu khuyết điểm của Phalcon để bạn có thể biết một cách tổng lược về nó.
Phalcon là một framework cho lập trình web PHP, nó có vai trò tương tự như các framework Laravel, CodeIgniter, Yii… Nhưng Phalcon có một kiến trúc rất đặc biệt, mới lạ, khác với hầu hết các framework PHP khác, bởi vì nó được thiết kế cho mục tiêu: chạy nhanh nhất.
Phalcon có kiến trúc rất đặc biệt: mã code của framework được biên dịch sẵn thành file dll và nạp luôn vào RAM khi khởi động máy. Do đó khi có request từ browser đến, php chỉ còn chạy code của dự án để đáp ứng người dùng.
Bởi vậy project viết trên Phalcon chạy rất nhanh, tổ chức các chức năng của project cũng đơn giản.
Website chính thức của phalcon là https://phalcon.io/en-us
Đôi điều về các PHP Framework
Ngày nay, có nhiều php framework được phát triển, mục đích chung là giúp cho các web dev đỡ mất công code mọi thứ từ đầu. Mỗi framework quy định nhiều quy tắc như cách đặt tên file, khai báo biến, vị trí lưu các loại file… nên giúp dễ làm việc nhóm hơn.
Mục tiêu cụ thể của các php framework cũng có. Có framework hướng đến quy mô lớn hoặc nhỏ của project, như Zend và Yii sẽ chuyên trị các project lớn, còn Slim dùng cho các project nhỏ. Có những ramework lại hướng mục tiêu đến tốc độ, như Phalcon, Yaf. Các framework khác hướng đến việc tổ chức các chức năng support team tốt, như Laravel…
Điều này dẫn đến hiện nay có nhiều framework php ra đời. Các web developer tùy theo đó mà sử dụng để phát triển project trong quá trình làm việc. Sau đây liệt kê tên một số php framework để bạn tham khảo:
Các php framework cho lập trình Web 2020 | ||
Laravel | POP PHP | YAF |
Symfony | Simple MVC | Akelos PHP framework |
CodeIgniter | Nette | Qcodo |
Yii Framework | Fat-free | evoCore |
Cake PHP | PHP Mini | Stratus |
Phalcon | Zikula | Seagull |
Zend | Silex | Maintainable |
Aura | Agavi | Limb |
Fuel PHP | Typo 3 Flow | Phocoa |
PHPixie | Prado | AjaxAC |
Kohana | Cappuccino | Zoop |
Slim | Limonade | BlueShoes |
Flight | Webasyst | Recess |
Medoo | Guzzle PHP | PHPDevShell |
Phalcon được đánh giá cao
Phalcon là php framerwork chạy nhanh nhất trong các php framework – đó là nhận xét thường xuất hiện trong các đánh giá về Phalcon. Bởi vậy Phalcon rất cần cho bạn khi phát triển các ứng dụng web với yêu cầu thời gian thực thi nhanh.
Đặc điểm của Phalcon
Một trong những vấn đề cần đề cập ngay để trả lời câu hỏi Phalcon là gì phải nói ngay đến những đặc điểm của nó. Phalcon hỗ trợ kết nối đến nhiều loại database, hỗ trợ CSDL quan hệ lẫn phân tán. Kích thước thư viện gọn nhẹ. Bạn có thể xem một số đặc điểm sau:
Kết nối đến database | MySQL, PostgreSQL, SQLite, MongoDB, Oracle, MariaDB, Memcache DB |
Database Model | Relational, NoSQL, Object-oriented, Document-oriented, Multidimensional |
Template Engine | Volt (tương tự blade của laravel) |
Có thể dùng Phalcon để | Web Development, Cloud computing, Distributed Systems |
Design pattern | Dependency injection, MVC, HMVC, Active-Record, Event-Driven, Obsever, Chain of responsibility |
Kích thước thư viện | ~6MB (version phalcon 4.0.6) |
Quy mô project | Bất kỳ quy mô nào của dự án đều có thể dùng Phalcon: nhỏ, vừa, lớn |
Tương thích với PHP | PHP 5.4+ |
Hiệu năng | Rất cao, có thể đáp ứng hơn 800 request/giây |
Tốc độ | Nhanh nhất trong các php framework |
Kỹ năng cần có để dùng Phalcon | PHP, HTML, CSS |
Tham khảo: https://www.javatpoint.com/features-of-phalcon, https://phalcon.io/en-us
Ưu khuyết điểm của Phalcon
Ưu điểm của phalcon
Khi mới tìm hiểu để biết phalcon là gì, bạn cần biết ngay 1 đặc điểm kỹ thuật quan trọng. Đó là Phalcon được viết dưới dạng PHP extension nên toàn bộ framework đã nạp vào RAM khi server khởi động, nhờ đó đã loại bỏ hoàn toàn quá trình đọc và biên dịch framework từ đĩa cứng mỗi khi có request. Đây là lý do chính làm cho framework này chạy rất nhanh.
Một ưu điểm nữa đó là Phalcon được viết bằng ngôn ngữ C – ngôn ngữ gần với ngôn ngữ hệ thống nhất nên tốc độ load trang rất nhanh.
Các ưu điểm khác của Phalcon đó là nó cung cấp nhiều tiện ích mà các web deverloper nhất định sẽ cần, ví dụ:
- Developer dễ dàng thao tác với database qua các model ORM.
- Template engine Volt rất hay, giúp code trong view nhanh chóng. Volt tương tự như Blade trong Laravel.
- Phalcon hỗ trợ tốt các loại validation trong form.
- Có nhiều công cụ support team như migration, devtools…
- Phalcon có tài liệu khá đầy đủ và rõ ràng.
- Hỗ trợ Caching (ra file, bộ nhớ, Redis), Logging, Event manager
- Hỗ trợ kết nối đến nhiều loại CSDL (MySQL, Postgresql, Oracle, MongoDB..,).
Nhược điểm của phalcon
Nhưng nhược điểm của Phalcon cũng có, nhược điểm này nằm ngay chính ưu điểm của nó. Đó là bởi vỉ Phalcon được viết và biên dịch như là một thư viện trong server cho nên bạn phải có quyền root hay admin trong server mới cài được Phalcon.
Do vậy bạn không không chạy được project phalcon trên môi trường Shared Hosting trên internet. Muốn chạy một project Phalcon, bạn cần phải có server riêng như VPS hay Dedicate …
Tuy nhiên ngày nay việc sở hữu một server như thế không phải quá khó khăn (xét về giá thành và nhà cung cấp).
So sánh Phalcon với Laravel
Việc so sánh Phalcon với Laravel là cần thiết. Vì Laravel đang được dùng nhiều nhất hiện nay. Mục đích so sánh để bạn hiểu thêm chứ không gọi bạn bỏ Laravel.
a. File structure
Cấu trúc file và folder của 2 framework khá giống nhau. Các folder controllers, models, views, migrations, config… chứa các file có chức năng tương ứng.
Tuy nhiên cấu trúc project của Phalcon gọn hơn vì những code hệ thống của Phalcon như routing, controller system, model system…) đã có sẵn trong thư viện phalcon dll.
Số lượng file trong project rất khác nhau. Cụ thể các file trong project phalcon cực kỳ nhỏ gọn, chỉ 13 so với hơn 7000 file của Laravel. Về khoản này Phalcon tốt hơn Laravel.
b. Tốc độ và hiệu năng
Phần lõi của Phalcon được biên dịch sẵn trong file dll và nạp sẵn trong RAM, không cần phải thông dịch như Laravel cho nên Phalcon chạy nhanh hơn. Theo các tài liệu kỹ thuật, khả năng đáp ứng các request trong 1 giây của Phalcon là hơn rất nhiều lần so với Laravel và các framework khác.
c. Complexity
Ở tiêu chí này, Laravel có tài liệu, tutorial và cộng đồng sử dụng lớn hơn Phalcon. Cho nên khi bắt đầu dùng PHP framework thì nên chọn Laravel. Vì cộng đồng lớn thì bạn được support nhiều hơn. Còn nếu đã biết ít nhất 1 PHP Framework rồi thì sử dụng Phalcon là không khó.
Cũng chân thành mà nói, xét về sự tiện dụng trong các chức năng và hỗ trợ viết code, thì Laravel tốt hơn Phalcon. Ví dụ công cụ migration của Phalcon thì không thể nào bằng migration trong Laravel được. Hay chức năng phân trang của Laravel thì tiện dùng hơn.
Code Laravel cũng dễ hiểu hơn Phalcon. Laravel dễ triển khai hơn Phalcon vì project Laravel chạy trong môi trưởng Shared hosting không thành vấn đề.
Tham khảo: https://dev.to/adnanbabakan/a-comparison-between-laravel-and-phalcon-2471
Như vậy bạn đã biết Phalcon là gì rồi đó. Nó là một trong những php framework được đánh giá tốt nhất, chạy nhanh nhất , có khá nhiều các tiện ích cho các deverloper phát triển dự án.
Bài viết tiếp theo hướng dẫn bạn cách cài đặt Phalcon, tạo project Phalcon