Swoole
文章平均质量分 87
学习笔记666
这个作者很懒,什么都没留下…
展开
-
swoft速学:加载bean、属性注入;案例:商品参数过滤
1、我们有一个ProductController.php,代码如下: <?php namespace App\Controllers\Api; use App\Models\Entity\Product; use Swoft\Http\Server\Bean\Annotation\Controller; use Swoft\Http\Server\Bean\Annotation\Re...原创 2018-08-30 16:35:45 · 3875 阅读 · 1 评论 -
swoft服务端和客户端的创建
#swoft:RPC服务 https://doc.swoft.org/master/zh-CN/rpc-server/index.html 1、第一步:创建接口 https://doc.swoft.org/master/zh-CN/rpc-server/interface.html 在app/Lib/目录中创建一个ProductInterface.php,代码如下: <?php namesp...原创 2018-09-20 12:14:13 · 2737 阅读 · 0 评论 -
swoft操作redis、多实例配置
修改连接池配置 app/config/properties/cache.php 配置文件 return [ 'redis' => [ 'name' => 'redis', 'uri' => [ '127.168.88.88:6379' ], 'm...原创 2018-09-24 20:40:24 · 2669 阅读 · 0 评论 -
swoft速学:HTTP服务: 获取POST参数、简单验证器
1、在控制里获取POST参数 /** * @RequestMapping(route="add", method={RequestMethod::POST}) * @param Request $request */ public function addNews(Request $request) { } 使用@RequestM...原创 2018-08-29 14:52:21 · 3601 阅读 · 0 评论 -
Swoft速学:中间件 Middleware
文档地址: https://doc.swoft.org/master/zh-CN/http-server/middleware.html 中间件是用于控制 请求到达 和 响应请求 的整个流程的,通常用于对请求进行过滤验证处理,当你需要对请求或响应作出对应的修改或处理,或想调整请求处理的流程时均可以使用中间件来实现 1、创建一个中间件App\Middlewares\ProductMiddlew...原创 2018-08-31 11:56:15 · 1967 阅读 · 1 评论 -
swoft速学:数据库配置、实体定义
1、数据库配置 官方文档地址:https://doc.swoft.org/master/zh-CN/db/config.html 默认是给出的主从配置,这里暂不考虑主从,config/properties/db.php代码修改如下: <?php return [ 'master' => [ 'name' => 'master', ...原创 2018-08-28 17:30:03 · 4751 阅读 · 1 评论 -
swoole设置定时器、easyswoole框架 の Crontab定时器
swoole设置定时器 思考: 比如新闻排行榜、商品排行榜,一般都不是即时生成的。(因为数据量大、并发高) 那么怎么做呢? 1、结合消息队列触发后台一个任务 2、结合定时任务,定时生成一些静态资源 swoole提供了类似JavaScript的setInterval/setTimeout异步高精度定时器,粒度为毫秒级。 https://wiki.swoole.c...原创 2018-06-14 09:44:55 · 4901 阅读 · 0 评论 -
easyswoole使用 从ThinkPHP5.1独立出来的数据库ORM类库
文档地址: https://www.easyswoole.com/Manual/2.x/Cn/_book/Database/think_orm.html 1、安装 cd easyswoole #进入项目目录 composer require topthink/think-orm 2、数据库配置 在Config.php里添加配置项: 'database' =&gt; [ ...原创 2018-06-13 17:21:46 · 7039 阅读 · 0 评论 -
Swoole框架:easyswoole安装
EasySwoole 是一款基于Swoole Server 开发的常驻内存型PHP框架,专为API而生,摆脱传统PHP运行模式在进程唤起和文件加载上带来的性能损失。EasySwoole 高度封装了Swoole Server 而依旧维持Swoole Server 原有特性,支持同时混合监听HTTP、自定义TCP、UDP协议,让开发者以最低的学习成本和精力编写出多进程,可异步,高可用的应用服务。...原创 2018-06-13 13:40:00 · 5827 阅读 · 0 评论 -
编码方式向Consul注册我们的Swoole服务
编码方式向Consul注册我们的Swoole服务 前面简单认识了Consul,通过终端命令的方式演示了如何注册service和反注册service。 下面我们使用编码的方式,看看能否往Consul中注册服务? 1、根据Consul官网 https://www.consul.io/api/agent/service.html 提供的Agent HTTP API我们封装一个Consul工具类...原创 2018-06-06 15:54:17 · 2963 阅读 · 0 评论 -
Consul介绍
Consul:服务管理软件。支持多数据中心下,分布式高可用,服务发现和配置共享,成员管理和消息广播,支持ACL访问控制。(相关的其他类似软件Zookeeper、Etcd、spring里的eureka) 官网: https://www.consul.io/intro/index.html 安装: 1、下载解压之后就是一个可执行文件 2、拷贝到你的/usr/local/bin目录中(或者其他你...原创 2018-06-04 14:11:32 · 4092 阅读 · 1 评论 -
swoole:进程
文档地址:https://wiki.swoole.com/wiki/page/274.html 1、Master进程 保证swoole机制运行,同时利用它创建Master线程(主要负责接收连接、定时器等) 和Reactor线程(处理连接并把请求分发给各个Worker进程) 2、Manager进程 Worker进程和Task进程均由它的派生变成子进程,并负责结束时回收子进程,避免僵尸的存在。 ...原创 2018-06-02 11:25:40 · 976 阅读 · 0 评论 -
Swoole中内置Http服务器
文档地址: https://wiki.swoole.com/wiki/page/326.html 创建httpServer.php文件,代码如下: &lt;?php // 创建服务对象 $http = new swoole_http_server("10.211.55.17", 9501); // 10.211.55.17是我们Swoole主机 9501是端口 // 监听reques...原创 2018-06-02 09:35:12 · 1781 阅读 · 1 评论 -
Swoole入门:拆分我们的服务(独立数据库操作层)
http://blog.csdn.net/github_26672553/article/details/79075801 前面我们简单学习了”swoole如何执行异步任务”?演示了一个“用户注册”的案列,大致的架构如下图: 需要注意的是:发送邮件和赠送虚拟币(积分)这2个task,是必须在用户数据入库成功之后,才投递的。现在可以来完成我们的服务拆分(把数据库操作拆分出来)。 前面:http:原创 2018-01-17 15:25:09 · 960 阅读 · 0 评论 -
Swoole入门:执行异步任务01(使用案列,简单逻辑梳理)
比如有这样一个需求:前端用户注册表单提交入库,紧接着发送确认邮件,然后赠送积分。 如果这三部分是一个同步任务,那么用户在前端要等待最后“赠送积分”完成,才能确定自己是否注册成功。 如果是异步任务,那么我们可以在”用户注册表单提交入库”成功之后,就返回给前端用户。https://wiki.swoole.com/wiki/page/481.html1、处理用户注册的swoole服务端代码 user_原创 2018-01-16 17:08:16 · 1805 阅读 · 0 评论 -
Swoole入门:4种客户端连接服务器的方式介绍
四种客户端连接方式:浏览器连接server.php:<?php//创建Server对象,监听 10.211.55.15:9501端口 $serv = new swoole_server("10.211.55.15", 9501); // 10.211.55.15 是我们Swoole服务器地址//监听数据接收事件 $serv->on('receive', function ($serv, $fd, $原创 2018-01-16 14:46:52 · 6321 阅读 · 0 评论 -
Swoole入门:准备工作
一、环境依赖 要注意Linux内核版本和php版本。 具体官网都有: https://wiki.swoole.com/wiki/page/7.html二、安装 在swoole需要的条件准备之后就可以安装,安装方式有“编译安装”或使用“PECL”安装,官网有详细的介绍: https://wiki.swoole.com/wiki/page/6.html 下面是使用PECL安装命令:pecl原创 2018-01-16 13:37:30 · 1032 阅读 · 0 评论 -
swoft速学:HttpServer入门(1):控制器、注解、@RequestMapping
1、Swoft的安装部分,请直接看官网文档 https://doc.swoft.org/master/zh-CN/quickstart/enviroment.html 2、安装完成之后,可以来启动HTTP 服务 php bin/swoft start 浏览器访问 http://localhost/ 就看到了Swoft默认的页面。 3、尝试写一个自己的控制器 在app\Control...原创 2018-08-28 14:26:59 · 3020 阅读 · 0 评论 -
Swoft:服务降级和熔断器的基本使用
#服务降级 服务降级,其实对功能的一种容错机制. https://doc.swoft.org/master/zh-CN/service-governance/fallback.html 假设一个功能 需要服务A用户注册、服务B发送邮件、服务C记录日志,并且这3者是一个调用链。 那么如果服务C崩溃了,就回影响到服务B和服务A。 为了解决这个问题,就需要用到服务降级功能了。 ###回顾 https...原创 2018-09-21 21:55:57 · 2945 阅读 · 0 评论