摘要:前言因為本系列主要解讀源碼,所以環境采用作者自己搭建的適用系列的環境。
前言
因為本系列主要解讀zanphp源碼, 所以環境采用作者自己搭建的適用 zan 系列的 docker 環境。
https://github.com/cjeruen/zan-docker
環境相關說明安裝 docker 與 composer本系列基礎目錄都在 ~/zan-code 目錄下進行
如有變更 自行 切換目錄
下載 zan-docker不多介紹
git clone https://github.com/cjeruen/zan-docker.git
下載 zan-installergit clone https://github.com/youzan/zan-installer.git
安裝 zan-installer 依賴cd zan-installer && composer install
生成項目 生成 http 項目當前所在 目錄 ~/zan-code/zan-installer
php ./zan
生成 tcp 項目php ./zan
生成 websocket 項目php ./zan
查看生成的三個項目 移動項目到 zan-dockermv ~/zan-code/zan-installer/http-demo ~/zan-code/zan-docker/opt/http-demo
mv ~/zan-code/zan-installer/tcp-demo ~/zan-code/zan-docker/opt/tcp-demo
mv ~/zan-code/zan-installer/websocket-demo ~/zan-code/zan-docker/opt/websocket-demo
修改配置文件http-demo配置參考配置: https://github.com/cjeruen/za...
// ~/zan-code/zan-docker/opt/http-demo/resource/config/test/connection/mysql.php "host" => "127.0.0.1", // 改為 "host" => "mysql_zan" "user" => "root", // 改為 "user" => "root" "password" => "123456", // 改為 "password" => "root" // ~/zan-code/zan-docker/opt/http-demo/resource/config/test/connection/redis.php "host" => "127.0.0.1", // 改為 "host" => "redis_zan", // ~/zan-code/zan-docker/opt/http-demo/resource/config/test/connection/tcp.php "host" => "127.0.0.1", // 改為 "host" => "cat_zan", // ~/zan-code/zan-docker/opt/http-demo/resource/config/test/monitor/trace.php "run" => false, // 改為 "run" => true, // ~/zan-code/zan-docker/opt/http-demo/resource/config/test/server.php "session" => [ "run" => false, // 改為 "run" => true, "store_key" => "demo.session.session", ], // ~/zan-code/zan-docker/opt/http-demo/resource/config/test/registry.php "app_names" => [ // "tcp-demo" // 去掉注釋 改為 "tcp-demo" ], "host" => "127.0.0.1", // 改為 "host" => "etcd_zan",tcp-demo配置
// ~/zan-code/zan-docker/opt/tcp-demo/resource/config/test/connection/mysql.php "host" => "127.0.0.1", // 改為 "host" => "mysql_zan" "user" => "root", // 改為 "user" => "root" "password" => "123456", // 改為 "password" => "root" // ~/zan-code/zan-docker/opt/tcp-demo/resource/config/test/connection/redis.php "host" => "127.0.0.1", // 改為 "host" => "redis_zan", // ~/zan-code/zan-docker/opt/tcp-demo/resource/config/test/connection/tcp.php "host" => "127.0.0.1", // 改為 "host" => "cat_zan", // ~/zan-code/zan-docker/opt/tcp-demo/resource/config/test/monitor/trace.php "run" => false, // 改為 "run" => true, // ~/zan-code/zan-docker/opt/tcp-demo/resource/config/test/registry.php "enable" => false, // 改為 "enable" => "host" => "127.0.0.1", // 改為 "host" => "etcd_zan",構建 zan-docker
cd ~/zan-code/zan-docker && docker-compose build
啟動 dockerdocker-compose up -d
創建數據庫查看演示連接 cat_zan 數據庫 (mysql -hmysql_zan -uroot -p)
創建數據庫 cat
導入數據表 ~/zan-code/zan-docker/cat/zan/src/Cat.sql
http://localhost:8030/index/index/index
http://localhost:8030/index/index/json
http://localhost:8030/index/index/showTpl
http://localhost:8030/index/index/dbOperation
http://localhost:8030/index/index/redisOperation
http://localhost:8030/index/index/httpRemoteService
http://localhost:8030/index/index/novaRemoteService
http://localhost:2281/cat
總結環境安裝就到此為止了。后面源碼讀起來
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/26046.html
摘要:中的容器容器介紹容器中獲取一個類的實例容器中注冊于獲取類的單例函數理解面向接口開發會幫助你更好的理解容器類容器幫助函數獲取類的實例注冊類的單例占位有待補充 PHP協程與yield 我說不如你查閱相關文檔與資料 Iterator(迭代器)接口 生成器總覽在PHP中使用協程實現多任務調度 當然 如果你暫時 懶的話 yield 當成 return 關鍵字就行 zanphp中的命名空間 Za...
摘要:前言也許這是我們最關系的一個環節了。一個應用簡單來說無非就是請求和相應了。獲取你真的該補補協程的相關知識了。 前言 也許這是我們最關系的一個環節了。一個web應用簡單來說無非就是請求和相應了。獲取你真的該補補 協程 的相關知識了。不過。。不懂協程懂進程~ 那就 當成進程來看 一個請求一個進 (xie) 程.懂線程~ 那就 當成 線程來看 一個請求一個線 (xie) 程 分析 Requ...
前言 本系列源碼解讀已 http-demo 項目為例 目錄說明 showImg(https://segmentfault.com/img/bVX8wy?w=452&h=431); 主要關心 圖片箭頭指向目錄http://zanphpdoc.zanphp.io/we... bin: 服務啟動bin文件目錄 init: 應用初始化相關 resource: 配置文件目錄,具體配置見 項目配置 src...
摘要:前言當然從我們熟悉但不完全熟悉的說起。下面是中的具體邏輯了。這里采用的是的方式。 前言 當然從我們熟悉(但不完全熟悉)的 MVC 說起。簡(zhi)單(jie)的描述. 1. MVC 概覽 1.1. URL 規則 上篇 目錄說明中 提到的,這里不多說 規則就是這樣,后面來說其源碼 1.2. Controller && Action src/Index/IndexController.p...
摘要:獲取應用并啟動分析設置應用名稱獲取本身實例想容器注冊單例設置應用基礎路徑其他初始化工作初始化容器其他初始化工作創建根據前面的知識掃盲可知道返回的真身是位于分析繼承這里就把中的函數都放在分析了服務的啟動主入口函 獲取應用并啟動 php bin/httpd
閱讀 940·2021-09-27 13:36
閱讀 888·2021-09-08 09:35
閱讀 1064·2021-08-12 13:25
閱讀 1437·2019-08-29 16:52
閱讀 2907·2019-08-29 15:12
閱讀 2726·2019-08-29 14:17
閱讀 2606·2019-08-26 13:57
閱讀 1012·2019-08-26 13:51