#phalapi-入門篇1(簡單介紹以及環境搭建)#

##前言##
***先在這里感謝phalapi框架創始人@dogstar,為我們提供了這樣一個優秀的開源框架。***
在進行項目接口的開發過程中,筆者在尋找一個方便針對API開發的框架時,發現了PhalApi。經過了短時間的嘗試,發現PhalApi確實很便捷,效率很高。
之后就把PhalApi運用到正式的項目上。而且在后面的項目仍一直使用。其間,也和很多希望了解PhalApi框架的朋友做過很多交流。為此,決定寫一篇關于這個框架的教程。一方面是為了幫助一些初學者能夠快速地了解PhalApi,另一方面是希望把自己在實際運用中總結出的一些小技巧分享出來。
附上:
喵了個咪的博客:[w-blog.cn](w-blog.cn)
官網地址:[http://www.phalapi.net/](http://www.phalapi.net/ "PhalApi官網")
開源中國Git地址:[http://git.oschina.net/dogstar/PhalApi/tree/release](http://git.oschina.net/dogstar/PhalApi/tree/release "開源中國Git地址")
##1. 簡單的介紹##
官網上面有一句話讓我特別有感受--**接口,從簡單開始!**
怎樣的感受呢,在最近進行一個項目開發的時候,因為項目比較緊急需要快速地開發。從確定完需求以及接口之后,借助PhalApi,我僅用了8個小時就完成項目接口的開發。整個項目的接口差不多20來個,從這點可以看出,如果PhalApi框架用得熟練的話,效率將會提高更多。
其實,接口最關心的就是性能。通過測試下來,Phalapi消耗相對比較小,引入文件在10個左右,空框架返回2核2G并發點擊數在1700左右。很是給力。在2核2G正常請求數據庫接口相對于一套完整的業務。平均下來最快的1000并發,最慢的600并發。所以我覺得性能方面,PhalApi完全沒有問題(壓力測試使用的是Loadrunner,ab壓力基本是Loadrunner的3倍不太清楚為什么)。
**引用:**
**勿忘初心,方得始終**
雖然現在這個社會的節奏很快,但如果有時間時,我們不妨靜下來,稍微地思考一下,然后你會發現:慢慢來,比較快。
**PhalApi 的初衷:**
我們之所以開源這個框架,是因為我們想致力于提供可以快速進行開發后臺接口的框架,并且通過這個框架分享更多開發的最佳實踐、原則和模式!這就是我們的初心,也希望我們能一直堅持下去。
**PhalApi命名的來源**
得益于開源社區,現在有很多優秀的開源框架。確實有很多框架值得我們去學習和使用,其中高性能的Phalcon框架和可視化代碼評審工具Phabricator都是相當令人敬佩和認可的。前者在思想、模式和原則上有很好的文檔說明;后者在包管理、命名寫法等都非常好地體現了代碼重用。受此兩個框架的影響,故取名為:PhalApi。
**通過PhalApi,我們希望可以**
支撐輕量級項目后臺接口的快速開發;闡明如何進行框架設計、對應復雜領域業務、支撐海量服務等,以及分享好的思想、技巧工具和最佳實踐。最后,爭取成為國內主流的PHP接口開發框架。
##2. 環境搭建##
在這里推薦使用(我后面的配置等都會基于以下環境)lnmp:
Liunx+Nginx+php5.4以上+mysql
我使用的是centos6.5
有三種方式配置環境:
1.手動編譯安裝(網上資料也挺多的,但是容易出現一些依賴性的問題,新手不推薦。)。
2.yum或apt-get安裝(yum安裝無法指定目錄,都會裝到/etc下面去,不方便管理,但是要玩liunx必須要會。)。
3.lnmp一鍵安裝工具(推薦:但是這個推薦是基于上面幾種方式都嘗試過的情況下,這個安裝方式基于--編譯安裝。)。
我推薦一個lnmp一鍵配置軟件:
官網:OneinStack – 一鍵PHP/JAVA安裝工具:[http://oneinstack.com/](http://oneinstack.com/ "OneinStack – 一鍵PHP/JAVA安裝工具")
因為官網介紹得比較詳細,在這里就不再多做說明。其余幾種方式教程都比較多也不做說明。
那不了解liunx怎么辦?wampserver在windows下還是比較好用的。
##3. 總結##
最后,希望大家在通讀PhalApi官方文檔后,再接著看下面的文章,會更容易理解。在這一套教程中,我會以構建一個完整的項目為基礎,拓展開來講解一些框架的機制。大家可以跟著一起做,相信能夠收獲得更多。
注:筆者能力有限,有說的不對的地方,希望大家能夠指出。也希望多多交流!
**官網QQ交流群:421032344 歡迎大家的加入!**
[文檔首頁](/wikis/) [下一章](/wikis/%5b7.2%5d-phalapi-%e5%85%a5%e9%97%a8%e7%af%872(%e6%8a%8a%e5%ae%83%e7%8e%a9%e8%b5%b7%e6%9d%a5).html)
- 空白目錄
- [7.1]-phalapi-入門篇1(簡單介紹以及環境搭建)
- [7.2]-phalapi-入門篇2(把它玩起來)
- [7.3]-phalapi-入門篇3(請求和返回)
- [7.4]-phalapi-入門篇4(國際化高可用和自動生成文檔)
- [7.5]-phalapi-入門篇5(數據庫操作和Model層)
- [7.6]-phalapi-入門篇6(小技巧和淺談API適用范圍以及入門篇總結)
- [7.7]-phalapi-進階篇1(三層結構Api,Domain,和Model)
- [7.8]-phalapi-進階篇2(DI依賴注入和單例模式)
- [7.9]-phalapi-進階篇3(自動加載和攔截器)
- [7.10]-phalapi-進階篇4(notorm進階以及事務操作)
- [7.11]-phalapi-進階篇5(數據庫讀寫分離)
- [7.12]-phalapi-進階篇6(解決大量數據存儲數據庫分表分庫拓展)
- [7.13]-phalapi-進階篇7(使用緩存以及用redis拓展解決實際問題)
- [7.14]-phalapi-進階篇8(PhalApi能帶來什么和進階篇總結)