php中yar框架实例用法讲解

RPC是在TCP协议上面的网络传输和远程服务调用,通过TCP来进行数据传输。底层都是tcp,更高层的封装。因此这就是应用间通信间不直接用TCP,而是选用RPC框架的原因,本章教学内容就是给大家带来rpc中yar框架的使用,内容简单明了,希望对每一位在学习php道路上的小伙伴都能得到掌握了解。

编译:

/usr/local/php/bin/phpize

配置:

extension = /usr/local/php/lib/php/extensions/no-debug-non-zts-20170718/yar.so

使用方法:

Yar_Server {
 protected $_executor ;
 final public __construct ( Object $obj )
 public handle ( void ) : boolean
 }

PHP 安装yar的知识点:

yar全部可用版本见:https://pecl.php.net/package/yar,根据自己的需要下载编译安装即可。

注:yar和PHP版本不一致会导致编译失败,如果出现编译失败请下载其他版本的yar重新编译

# wget https://pecl.php.net/get/yar-1.2.3.tgz
# tar -xf yar-1.2.3.tgz
# cd yar-1.2.3
# ls
config.m4  LICENSE  tests    yar.c     yar_exception.c yar_packager.h yar_request.c  yar_response.h yar_transport.c
config.w32 packagers tools    yar_client.c yar_exception.h yar_protocol.c yar_request.h  yar_server.c  yar_transport.h
CREDITS   php_yar.h transports yar_client.h yar_packager.c  yar_protocol.h yar_response.c yar_server.h
# ls /usr/local/php/php7/bin/
pear peardev pecl phar phar.phar php php-cgi php-config phpdbg phpize
# /usr/local/php/php7/bin/phpize
Configuring for:
PHP Api Version:     20170718
Zend Module Api No:   20170718
Zend Extension Api No:  320170718
# ./configure --with-php-config=/usr/local/php/php7/bin/php-config
# make && make install
................
............
Installing shared extensions:   /usr/local/php/php7/lib/php/extensions/no-debug-non-zts-20170718/

# ls /usr/local/php/php7/lib/php/extensions/no-debug-non-zts-20170718/
mongodb.so opcache.a opcache.so openssl.so pcntl.so phalcon.so redis.so swoole.so xhprof.so yaf.so yar.so zlib.so

到此这篇关于php中yar框架实例用法讲解的文章就介绍到这了,更多相关php中yar框架如何使用内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

时间: 2020-12-26

在PHP 7下安装Swoole与Yar,Yaf的方法教程

本文开发坏境: CentOS 7 PHP 7.0.16 安装PECL //php版本 > 7 $ wget http://pear.php.net/go-pear.phar $ php go-pear.phar //php版本 < 7 $ yum install php-pear //否则会报错PHP Parse error: syntax error, unexpected //'new' (T_NEW) in /usr/share/pear/PEAR/Frontend.php on //l

php7 安装yar 生成docker镜像

Docker包含三个概念: (1)远程仓库即远程镜像库所有镜像的聚集地(不可进入操作). (2)本地镜像即从远程仓库拉取过来的镜像 (3)运行起来的本地镜像叫做容器(分层的可操作) Docker使用: 1.首先通过第三方镜像库(c.163.com)拉取相应的信息比如centos,ubuntu,tomcat等作为基础镜像. Docker pull xxxx 2.运行下载好的镜像. Docker run -dt -p 宿主机端口:镜像端口 --name起一个名字 镜像id/镜像名字 bash -d

php7安装yar扩展的方法详解

本文实例讲述了php7安装yar扩展的方法.分享给大家供大家参考,具体如下: 体验RPC框架Yar需要: 1. 装二进制打包协议msgpack 2. 装yar拓展和依赖 一. 安装二进制打包协议msgpack 1. 安装PHP拓展包有很多种方式,当然没什么是比pecl更加来得暴力,用这个之前要确认phpize是否存在 find / -name phpize 2. 如果phpize不存在 yum install php-devel 3. Ok,先装msgpack pecl install msgp

基于PHP7错误处理与异常处理方法(详解)

PHP7错误处理 PHP 7 改变了大多数错误的报告方式.不同于传统(PHP 5)的错误报告机制,现在大多数错误被作为 Error 异常抛出. 这种 Error 异常可以像 Exception 异常一样被第一个匹配的 try / catch 块所捕获.如果没有匹配的 catch 块,则调用异常处理函数(事先通过 set_exception_handler() 注册)进行处理. 如果尚未注册异常处理函数,则按照传统方式处理:被报告为一个致命错误(Fatal Error). Error 类并非继承自

在 Pycharm 安装使用black的方法详解

PyCharm是一种Python IDE,带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调试.语法高亮.Project管理.代码跳转.智能提示.自动完 成.单元测试.版本控制.此外,该IDE提供了一些高级功能,以用于支持Django框架下的专业Web开发. 简介 针对代码风格不一致问题,导致的维护成本过高,针对性的镇定代码风格统一标准,是很有必要的.目前市面上用的比较多的python代码格式化工具有YAPF.Black. Black,号称不妥协的代码格式化工具,它检测到

php7安装mongoDB扩展的方法分析

本文讲述了php7安装mongoDB扩展的方法.分享给大家供大家参考,具体如下: 这里我们使用pecl命令来安装 首先来到php7的安装目录 $ /usr/local/php7/bin/pecl install mongodb 回车,执行成功后,会输出以下结果: -- Build process completed successfully Installing '/usr/local/php7/lib/php/extensions/no-debug-non-zts-20151012/mongo

Python安装依赖(包)模块方法详解

Python模块,简单说就是一个.py文件,其中可以包含我们需要的任意Python代码.迄今为止,我们所编写的所有程序都包含在单独的.py文件中,因此,它们既是程序,同时也是模块.关键的区别在于,程序的设计目标是运行,而模块的设计目标是由其他程序导入并使用. 不是所有程序都有相关联的.py文件-比如说,sys模块就内置于Python中,还有些模块是使用其他语言(最常见的是C语言)实现的.不过,Python的大多数库文件都是使用Python实现的,因此,比如说,我们使用了语句import coll

Linux下安装PHP curl扩展的方法详解

本文实例讲述了Linux下安装PHP curl扩展的方法.分享给大家供大家参考,具体如下: 今天开发时遇到这样的一个问题,就是如何在Linux下安装PHP的curl扩展,我的LNMP环境都是原先进行编译安装了的,不是使用YUM方式安装的. 我的环境: Linux:CentOs 6.4 PHP:5.6.30 解决方法: 1.进入PHP源码目录,就是之前将PHP下载到服务器并解压的地址 cd /usr/local/src/php-5.6.30 2.进行PHP源码目录下的ext/curl cd ext

centos7.0安装离线JDK1.8方法详解

查看java仓库版本 yum list |grep java 查看已安装java jdk版本 rpm -qa | grep java 如果没有显示信息表示还没有安装jdk版本 如果显示如下信息: rpm -qa|grep jdk java-1.8.0-openjdk-headless-1.8.0.65-3.b17.el7.x86_64 java-1.7.0-openjdk-1.7.0.91-2.6.2.3.el7.x86_64 java-1.7.0-openjdk-headless-1.7.0.

centos7环境下二进制安装包安装 mysql5.6的方法详解

本文实例讲述了centos7环境下二进制安装包安装 mysql5.6的方法.分享给大家供大家参考,具体如下: centos7 二进制安装包安装 mysql5.6 一.下载mysql5.6二进制安装包 http://mirrors.sohu.com/mysql/MySQL-5.6/ 如:mysql-5.6.34-linux-glibc2.5-x86_64.tar.gz 二.安装mysql5.6(安装在/data/mysql56) (1).创建mysql用户账号 > useradd -s /sbin

Centos 6.5下PHP 5.3安装ffmpeg扩展的步骤详解

本文的内容主要是为了解决在Centos6.5下PHP5.3安装ffmpeg扩展的问题,下面话不多说,来看看详细的步骤吧. 安装步骤如下: 安装必须的环境yasm wget http://www.tortall.net/projects/yasm/releases/yasm-0.7.0.tar.gz tar zxvf yasm-0.7.0.tar.gz cd yasm-0.7.0 ./configure make && make install 安装ffmpeg svn checkout s

Windows Server2012 安装配置DNS服务器方法详解

在云服务器 Windows Server2012 上安装配置DNS服务器方法,安装与配置非常简单,在这里写个完整教程方便大家查询 一.安装DNS服务器 1.打开服务器管理器,点击添加角色和功能 2.一直下一步,选择基于角色或基于功能的安装 3.选择目标服务器,只有一台 4.添加DNS服务器 5.一直下一步直到安装成功 二.配置DNS服务器 之前安装好了DNS服务器,但是还需要进一步的配置.这里,我要将百度的ip地址,解析到自定义的域名www.wcfwcf.com上 1.安装DNS服务器成功后可以