php swoft框架实例用法


Posted in PHP onDecember 22, 2020

在框架选择上,不少人会觉得swoft才是最强PHP框架,尤其是在常驻内存模式的应用级高性能框架,性能是这一堆页面级框架遥不可及的,但是使用上稍微有点欠缺,内容稍微复杂,不如easyswoole好上手,但是性能上是绝对的好用,大家如果在编写项目时候,强烈要求使用性能,就可以了解下这个框架。

使用场景

微服务治理的最佳框架

优点

内存模式的应用级高性能框架

使用流程

1、服务注册

2、服务取消

3、服务限制

实现代码:

class BreakerLogic
{
/**
* @Breaker(fallback="funcFallback")
*
* @return string
* @throws Exception
*/
public function func(): string
{
// Do something
throw new Exception('Breaker exception');
}

关于swoft框架的基础知识点

使用Swoft框架注意事项

因为Swoft是基于Swoole,所以和普通的PHP框架还是很不一样的,有些是需要注意的。

1.不要再代码中执行sleep()以及其他睡眠函数,这样会导致整个进程阻塞。

2.不要使用exit/die函数,这样会导致worker进程直接退出。

3.进程隔离需要注意的,当修改了全局变量的值,会不生效,因为全局变量在不同的进程中,内存空间是隔离的。使用Swoft框架需要了解进程隔离问题。不同的进程中PHP变量不是共享,即便是全局变量。如果不同的进程需要共享数据,可以使用Redis,Mysql,消息队列,文件,Swoole/Table,APCu(php自带的缓存扩展),shmget(进程通信(IPC)共享内存)等工具。同时不同进程的文件句柄也是隔离的,所以在A进程创建的Socker连接打开的文件在B进程内是无效的。

4.进程克隆,当server启动时候,主进程会克隆当前进程状态,此后开始进程内的数据互相独立,互不影响。

5.不要再控制器写基类来写公共的变量,这样会造成数据污染,当下一个请求进来依然会请求到这个变量,因为常驻内存并且单利所以不会释放掉。

到此这篇关于php swoft框架实例用法的文章就介绍到这了,更多相关php swoft框架是什么内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

PHP 相关文章推荐
使用PHP维护文件系统
Oct 09 PHP
修改Zend引擎实现PHP源码加密的原理及实践
Apr 14 PHP
PHP 截取字符串函数整理(支持gb2312和utf-8)
Feb 16 PHP
php中隐形字符65279(utf-8的BOM头)问题
Aug 16 PHP
php第一次无法获取cookie问题处理
Dec 15 PHP
php输出金字塔的2种实现方法
Dec 16 PHP
php使用PDO操作MySQL数据库实例
Dec 30 PHP
PHP file_get_contents函数读取远程数据超时的解决方法
May 13 PHP
php生成gif动画的方法
Nov 05 PHP
PHP运行模式汇总
Nov 06 PHP
CI框架封装的常用图像处理方法(缩略图,水印,旋转,上传等)
Nov 22 PHP
phpMyAdmin无法登陆的解决方法
Apr 27 PHP
PHP变量的作用范围实例讲解
Dec 22 #PHP
PHP设计模式之命令模式示例详解
Dec 20 #PHP
如何重写Laravel异常处理类详解
Dec 20 #PHP
ThinkPHP6.0如何利用自定义验证规则规范的实现登陆
Dec 16 #PHP
6个常见的 PHP 安全性攻击实例和阻止方法
Dec 16 #PHP
TP5多入口设置实例讲解
Dec 15 #PHP
Mac系统下搭建Nginx+php-fpm实例讲解
Dec 15 #PHP
You might like
PHP 加密/解密函数 dencrypt(动态密文,带压缩功能,支持中文)
2009/01/30 PHP
php 对输入信息的进行安全过滤的函数代码
2012/06/29 PHP
JavaScript中Object和Function的关系小结
2009/09/26 Javascript
jQuery each()小议
2010/03/18 Javascript
利用百度地图JSAPI生成h7n9禽流感分布图实现代码
2013/04/15 Javascript
JS+css 图片自动缩放自适应大小
2013/08/08 Javascript
node.js中的fs.readlinkSync方法使用说明
2014/12/17 Javascript
JavaScript中的Math.sin()方法使用详解
2015/06/15 Javascript
js判断checkbox是否选中个数的方法(超简单)
2016/08/19 Javascript
bootstrap vue.js实现tab效果
2017/02/07 Javascript
vue中子组件的methods中获取到props中的值方法
2018/08/27 Javascript
使用 Node.js 实现图片的动态裁切及算法实例代码详解
2018/09/29 Javascript
在element-ui的select下拉框加上滚动加载
2019/04/18 Javascript
vue-cli创建的项目中的gitHooks原理解析
2020/02/14 Javascript
JS中类的静态方法,静态变量,实例方法,实例变量区别与用法实例分析
2020/03/14 Javascript
在Python中操作文件之truncate()方法的使用教程
2015/05/25 Python
在Python的一段程序中如何使用多次事件循环详解
2017/09/07 Python
python 调用c语言函数的方法
2017/09/29 Python
Python实现改变与矩形橡胶的线条的颜色代码示例
2018/01/05 Python
Python判断对象是否相等及eq函数的讲解
2019/02/25 Python
浅谈Python3中strip()、lstrip()、rstrip()用法详解
2019/04/29 Python
LA MER海蓝之谜美国官网:传奇面霜
2016/08/27 全球购物
美国花布包包品牌:Vera Bradley
2017/08/11 全球购物
Optimalprint加拿大:在线打印服务
2020/04/03 全球购物
C#面试常见问题
2013/02/25 面试题
档案室主任岗位职责
2014/02/12 职场文书
横幅标语大全
2014/06/17 职场文书
新农村建设标语
2014/06/24 职场文书
收费员岗位职责
2015/02/14 职场文书
证券区域经理岗位职责
2015/04/10 职场文书
2015年公司中秋节致辞
2015/07/31 职场文书
优秀范文:读《红岩》有感3篇
2019/10/14 职场文书
CSS 新特性 contain控制页面的重绘与重排问题
2021/04/30 HTML / CSS
python flappy bird小游戏分步实现流程
2022/02/15 Python
Python学习之os包使用教程详解
2022/03/21 Python
Python写情书? 10行代码展示如何把情书写在她的照片里
2022/04/21 Python