#phalapi-入门篇1(简单介绍以及环境搭建)#
![](http://webtools.qiniudn.com/master-LOGO-20150410_50.jpg)
##前言##
***先在这里感谢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能带来什么和进阶篇总结)