上次介紹了一下plain framework的基礎相關資料,今天該框架正式開源發佈。項目的地址託管於github上,我相信大多數朋友都應該知道。今天要介紹的是該框架的目錄基本結構,以及分別在linux以及windows平臺上安裝的例子。爲了讓初學或者技術不是太紮實的朋友也能快速上手,我在這裏一步步從開發環境的搭建講述到第一個比較完整的示例(網關服務器),每一步都是今日從空白的系統開始及時操做,由簡入深,若是你們不太明白請到交流羣詢問。php
2015年1月10日 更新lnmp安裝腳本,兼容最新centos7以上系統,原網盤地址html
https://github.com/viticm/plainframework1mysql
地址:http://www.cnblogs.com/lianyue/p/3972492.htmllinux
參考手冊正在編寫過程當中,會第一時間先同步到博客上,因爲這些文章可能上不了首頁,感興趣的朋友不妨關注博客。git
若是框架發現了新的BUG或者有內容更新,將會持續同步到github項目上。github
本次選用的linux系統爲centos(6.5),你能夠嘗試其餘linux系統也可。安裝好linux系統,或者已經存在linux系統的狀況下,那麼咱們開始搭建lnmp環境(web開發環境)。你能夠在網絡上去尋找相關的資料,或者使用我提供的腳本進行安裝,不過php版本最好爲5.4以上版本,這是爲之後擴展預留。web
首先你要確保你的系統中安裝了git,若是沒有安裝請用如下命令安裝(需聯網):sql
yum -y install git
其次將框架源碼安裝到你的開發目錄中,如:mongodb
cd ~ && mkdir work #進入用戶主目錄,並建立工做目錄 cd work && git clone https://github.com/viticm/plainframework1
一、使用框架內的腳本進行在線安裝(必須使用root權限安裝)數據庫
cd plainframework1/tools/script/linux/install/ && sudo sh install_web_develop.sh
二、使用提供的離線包及腳本進行離線安裝(必須使用root權限,沒有網絡的需注意如下說明)
能夠到百度雲盤去取該離線安裝包連接:http://pan.baidu.com/s/1pJwnHn9 密碼:sa9h
將包放到/web目錄下並解壓,命令以下:
mkdir -p /web && cd /web && tar -xjvf web.tar.bz2
若是沒有網絡的狀況下,你保證了安裝gcc、g++、cmake等必要的工具以後,設置腳本install_web_develop.sh的cDownload=on參數爲off。
運行腳本進行安裝(大約30~50分鐘):
sh install_web_develop.sh #運行腳本
安裝成功截圖:
安裝成功後,再安裝框架的開發環境(使用root安裝):
cd tools/script/linux/install/ && sh install_environment.sh --full
開發環境成功截圖:
建立用戶數據庫(網關服務器用):
cd ~/work/plainframework1/tools/script/sql/ #進入腳本目錄 mysql -uroot -pmysql #進入mysql命令行 mysql> CREATE DATABASE sword_user DEFAULT CHARSET UTF8; //建立數據庫 mysql> source sword_user.sql; //執行腳本
配置數據源:
vim /etc/odbc.ini #編輯配置文件
最終的配置以下,其實能夠不更改:
[sword_user] Driver = /usr/local/lib/mysqlodbc/libmyodbc5a.so DATABASE = sword_user DESCRIPTION = MySQL ODBC 5.3 Ansi Driver test SERVER = localhost UID = root PASSWORD = SOCKET = [sword_character] Driver = /usr/local/lib/mysqlodbc/libmyodbc5a.so DATABASE = sword_character DESCRIPTION = MySQL ODBC 5.3 Ansi Driver test SERVER = localhost UID = root PASSWORD = SOCKET =
框架使用了cmake等工具編譯,若是你使用了我提供的腳本那麼編譯環境能夠不用本身配置。
一、編譯依賴
cd ~/work/plainframework1/pf/dependencies/lua/ #lua cmake ./ make cd ~/work/plainframework1/pf/dependencies/iconv/ #iconv cmake ./ make
二、編譯框架核心
cd ~/work/plainframework1/pf/core/ cmake ./ make
完整示例中提供了一個網關服務器,其中用到了網絡、數據庫等核心接口。
cd ~/work/plainframework1/applications/gateway/ cmake ./ make
一、拷貝運行庫
cd ~/work/plainframework1/applications/bin/ cp ~/work/plainframework1/pf/dependencies/dll/lib*.so ./ cp ~/work/plainframework1/pf/core/dll/libpf_core.so ./
二、配置文件
cd ~/work/plainframework1/applications/bin/
vim config/gateway_info.ini
[System] DBIP=localhost DBPort=3306 DBConnectionOrDBName=sword_user; 鏈接或數據庫名稱 DBUser=root DBPassword=mysql DBConnectorType=0; 鏈接類型 0 odbc, 1 mysql, 2 sqlserver, 3 mongodb(如今只實現了ODBC) EncryptDBPassword=0; 是否加密了數據庫密碼 NetListenIP=127.0.0.1; 網絡監聽IP NetListenPort=12680; 網絡監聽端口 NetConnectionMax=10240; 最大支持的網絡鏈接數量
三、運行
cd ~/work/plainframework1/applications/bin/
./gateway
在windows上安裝開發環境就相對比較容易了,由於不是使用源碼編譯安裝的。我在這裏使用的是wamp做爲web開發環境,而odbc則是使用系統自帶的odbc32位,若是你的機器不是64位的則沒有關係。若是你想將框架和應用編譯爲64位則使用64位的ODBC,至於緣由我就不解釋了。
若是用github朋友比較多的可使用github的客戶端,打開源碼鏈接後:
將PHP的執行文件的路徑設置到你的環境變量中,爲了運行框架中的一些腳本,比較重要。
因爲vs編譯時對重複的文件名則不能正確的連接到目標中,而框架中則存在了許多重複的文件名,因此這裏使用到了爲windows編譯的工具。
路徑: tools\script\bat\rename_forvsbuild.bat
雙擊打開,而後輸入選項以下:
回車等待工具執行完成:
進入pf\core\scripts打開工程pf_core.vc9.sln進行編譯(目前只支持release編譯),固然你能夠將此工程轉換爲vs的其餘版本。
同編譯框架同樣,例子的編譯也須要重寫項目文件。
打開tools\script\bat\rename_forvsbuild.bat
revert to standard是否還原爲標準的,不用輸入,直接回車,第二次執行該操做時工程將自動還原。
打開工程文件applications\gateway\scripts\gateway.vc9.sln進行編譯。
地址爲:http://dev.mysql.com/downloads/connector/odbc/ 版本3.5以上的便可
建立名爲sword_user的數據庫,編碼設置爲odbc,並在該數據庫下執行腳本tools\script\sql\sword_user.sql。
因爲我使用的是32位的應用,因此使用32位的ODBC,如圖:
添加你的mysql鏈接信息以下,鏈接名爲sword_user:
拷貝依賴和框架的動態庫到applications\bin目錄下。
依賴動態庫:pf\dependencies\dll\Release
框架動態庫:pf\core\dll\Release
保證mysql和數據庫成功的前提下運行gateway.exe
若是你也對開源知識比較感興趣,若是也對網絡應用或者網絡遊戲感興趣,若是你也對該框架感興趣,你能夠加入咱們的QQ羣(348477824)。
歡迎你們進羣相互交流學習,同時也歡迎各位朋友對該框架供出本身的一份心力。