摘要:
禾匠商城V4开始开发前需要先掌握以下技术栈:1、Linux基本命令使用、文件、进程管理、Nginx+PHP+MySQL+Redis环境配置;2、PHP开发;3、MySQL数据库;4、Redis数据库;5、[Yii框架](https://www.yiiframework.com/doc/guide/2.0/zh-cn);6、 [Vue](https://cn.vuejs.org/index.html);7、[Element-UI](https://element.eleme.cn/#/zh-CN);8、[Composer](https://getcomposer.org/doc/00-intro.md)
一、运行环境要求
Linux+Nginx+PHP7.2+MySQL(5.6|5.7)+Redis(4|5)
二、部署运行项目 / 使用打包好的开源版代码包
1. 将代码解压到Nginx的web目录;
2. 访问http://代码访问地址/将打开安装页面,按要求填写MySQL、redis信息、创建超级管理员的信息;
3. 点击安装,将自动导入数据库结构和保存配置文件,可以在config目录下找到配置文件;
4. 安装完成后登录商城后台,进入`设置`/`队列服务`,按要求启动队列服务,并测试通过;
三、快速上手案例/代码说明/目录说明
/condif #配置文件
/controllers #控制器
/events #事件定义类
/forms #表单处理
/handlers #事件处理
/jobs #队列任务
/models #数据库表模型
/plugins #插件
/validators #自定义验证器
/views #视图文件
/web #入口文件、资源文件
四、开发调试模式
要开启开发调试模式,可在项目根目录下创建`.env`配置文件,写入内容
```.env
YII_DEBUG=true
YII_ENV=dev
```
五、Yii Application调整
继承并调整了Yii Application类的部分代码,见文件`core/WebApplication.php`、`core/ConsoleApplication.php`
六、开发调试模式
要开启开发调试模式,可在项目根目录下创建`.env`配置文件,写入内容
```.env
YII_DEBUG=true
YII_ENV=dev
```
七、队列服务
使用Redis做存储数据库,Yii组件方式调用`Yii:$app->queue`,详细api见文档[yii2-queue](https://github.com/yiisoft/yii2-queue)
*用到的地方*
- 订单处理时保证单线程处理
- 定时任务功能
*队列服务管理*
默认启动方式是`./yii queue/listen 1`,但是只能前台运行,所以编写了一段shell脚本让服务进入后台运行,见脚本`./queue.sh`,脚本中自动写入系统的crontab,自动检测进程是否挂掉,挂掉将自动重启。
服务进入后台运行后可以使用`ps -ef | grep "yii queue" | grep -v grep`命令检查服务是否在运行
因为服务是基于Yii Console运行的,要检查队列运行情况可查看日志文件`runtime/logs/app.log`,服务没启动成功都可以检查日志文件
八、注意事项
如果使用到负载均衡,队列服务只能在一台服务器上运行!
#插件开发
#支付
#后台菜单
#下单
(图:禾匠商城)
发表评论
HNMHNHNHNHN
啊实打实的
咕咕咕咕