这篇文章主要介绍“tars php的安装和使用方法”,在日常操作中,相信很多人在tars php的安装和使用方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”tars php的安装和使用方法”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

1,安装tars核心组件

https://github.com/TarsCloud/…

详细按照官方文档基本上都能安装,出现错误的注意查看日志

2,安装web界面管理

cd /usr/local/tars
git clone https://github.com/TarsCloud/TarsWeb.gitcd /usr/local/tars/TarsWeb

替换配置文件

sed -i 's/db.tars.com/你的ip/g' config/webConf.js
sed -i 's/registry.tars.com/你的ip/g' config/tars.conf

安装

$ npm install --registry=https://registry.npm.taobao.org
$ npm run prd

具体报错可以查看日志cat /root/.npm/_logs/缺什么安装什么

打开3000端口看到界面

3,安装tarsphp以及官方例子,要求php5.6以上,需安装swoole扩展,redis扩展,phptars扩展

swoole和redis扩展安装这里不再赘述

phptars扩展安装

git clone https://github.com/TarsPHP/tars-extension.gitcd /opt/tars/TarsPHP/tars-extension
 /usr/local/php7.2.10/bin/phpize
./configure
./configure --with-php-config=/usr/local/php7.2.10/etc/php.ini
./configure --with-php-config=/usr/local/php7.2.10/bin/php-config
make install

修改php.ini配置支持扩展

查看扩展安装情况

/usr/local/php7.2.10/bin/php -m

下载tarsphp开发

git clone 
https://github.com/TarsPHP/Ta…

下载后可看到官方例子TarsActDemo

弹幕活动项目,其中包含3个服务。

涵盖了Http,Tcp服务,使用了Mysql,Redis存储,包含了用户登录、session校验、用户信息获取、弹幕创建、弹幕获取等功能。已经涵盖了平常业务开发的很多方面。

QD.ActHttpServer.obj是一个http服务,对外提供固定端口,这是业务服务,调用后端的User和Comment服务完成业务。

QD.ActCommentServer.CommentObj 是一个tcp服务,主要提供评论的写入和获取,存储在Redis中。

QD.UserService.UserObj 是一个tcp,主要提供用户信息获取,用户登录,用户Session校验。相关数据保存在Mysql中。

  • index.html是前端页面,连接http服务,实现弹幕展示。

  • act.tars.local.conf是nginx配置

  • user_info.sql是QD.UserServer服务的用户信息表

1).修改QD.UserService中src/ENVConf.php 中的mysql 配置,设置你们自己的mysql ip、port和db名字

2).导入user_info.sql到你的mysql中。

3).修改QD.ActCommentServer中src/ENVConf.php 中的redis 配置,设置你们自己的redis ip、port

4).依次cd 到各个服务的 src 目录,执行 composer install,安装composer 依赖

5).依次cd 到各个服务的 src 目录,执行 composer run-script deploy 打包代码

6).部署三个服务,QD.ActHttpServer是http服务,需要固定一个端口,选 非tars服务,发布模板需要新建

<tars>
 <application>
 enableset=${enableset}
 setdivision=${setdivision}
 <client>
 locator=${locator}
 sync-invoke-timeout=20000
 async-invoke-timeout=20000
 refresh-endpoint-interval=60000
 stat=tars.tarsstat.StatObj
 property=tars.tarsproperty.PropertyObj
 report-interval=60000
 modulename=${modulename}
 sample-rate=100000
 max-sample-count=50
 </client>
 <server>
 app=${app}
 server=${server}
 localip=${localip}
 local=${local}
 basepath=${basepath}
 datapath=${datapath}
 logpath=${logpath}
 loglevel=DEBUG
 logsize=15M
 log=tars.tarslog.LogObj
 config=tars.tarsconfig.ConfigObj
 notify=tars.tarsnotify.NotifyObj
 logLevel=DEBUG
 php=/usr/local/php7.2.10/bin/php
 buffer_output_size=12582912
 open_tcp_nodelay=1
 open_eof_check=0
 open_eof_split=0
 task_worker_num=1
 dispatch_mode=2
 daemonize=1
 protocolName=http
 </server>
 </application></tars>

其他两个是tcp 服务,端口随意,选 tars服务。

(注意部署的时候在平台上配置的ServantName要和我上面写的全称一样,如果你需要修改,请同步修改tars.proto.php,actComment.proto.php和userInfo.proto.php,并从新生成protocol中代码)

7).配置你的nginx,proxy_pass 修改为你的 QD.ActHttpServer服务的ip地址和端口

8).拷贝index.html 到你的/data/website/tarsact/中

9).打开看一下是否可以访问

10).输入一个用户名 yong密码123456执行以下登录

11).发个弹幕试试

12).刷新一下,你发的弹幕出来了吗?恭喜你 O(∩_∩)O哈哈~