百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

【国产软件】API接口管理平台,接口限流功能介绍-PhalApi Prov5.8

moboyou 2025-03-11 14:35 10 浏览

PhalApi Pro 专业版(5合1)介绍

PhalApi Pro 专业版(5合1)是一套针对API接口进行快速研发、管理、开放以及收费的软件系统、源代码和解决方案。是基于PhalApi开源接口框架+Vue前后端分离,可用于快速搭建各类API接口平台,API接口开放平台、API接口管理后台和API接口计费平台。

目前,已支持的数据库有:数据库 MySQL / MsServer / PostgreSQL / Oracle / OpenGauss 等;零成本接入已有的数据库,支持数据库连接配置。


API接口限流功能的使用

API接口限流,是指对接口限流的目的是通过对并发访问/请求进行限速,或者对一个时间窗口内的请求进行限速来保护系统,一旦达到限制速率则可以拒绝服务、排队或等待、降级等处理。

针对需要限流的接口,PhalApi Pro专业版,支持灵活的限流配置。

限流配置规则(优先级从高到低):

开发者应用 > 开发者账号 > 开发者角色 > 开发者全局应用

举例:对开发者账号A进行限流100次/秒,对开发者A的某个应用AK1进行20次/秒限流,优先匹配AK1(20次/秒)的限流规则。

当达到限流后,再次请求API时,会返回限流提示。例如:

{
    "ret": 410,
    "data": {
    },
    "msg": "非法请求,接口被限流",
}

如图,


管理后台限流可视化配置

1、限流可视化配置在管理后台分为两个入口:【管理后台】- 【Api接口管理】- 【接口规则权限】- 【创建新规则】。

2、【管理后台】- 【应用管理】- 【创建新应用/编辑】 。


在开放平台查看API接口限流规则及权限

另一方面,作为使用接口的开发者,可以登录开放平台,查看自己的API接口权限,以及API限流的配置。


API限流的技术实现方案

环境要求

Redis服务和php-redis扩展。

$ php -m | grep redis
redis


代码配置

./config/sys.php文件中新增redis配置。

    'redis' => array(
        //Redis链接配置项
        'servers'  => array(
            'host'   => '127.0.0.1',        //Redis服务器地址
            'port'   => '6379',             //Redis端口号
            'prefix' => 'pro_',                 //Redis-key前缀
            'auth'   => 'xxxxxx',                 //Redis链接密码
        ),
        //Redis分库对应关系操作时直接使用名称无需使用数字来切换Redis库
        'DB'       => array(
        ),
        //使用阻塞式读取队列时的等待时间单位/秒
        'blocking' => 5,
    ),


在./config/di.php文件中引入PhalApi Redis服务,

// redis服务
$di->redis = new \PhalApi\Cache\RedisCache($di->config->get("sys.redis.servers"));

在./config/app.php文件修改,增加限流总开关,

'limit_flow'=>[
        'switch' => true
    ]

到此,限流服务已经准备完成,接下来便是对限流进行可视化配置。


版本更新

PhalApi专业版 5.8 (2024-04)

1、新增接口限流功能,可对单接口或者单应用配置接口限流

2、管理后台低代码编辑器新增快速JSON参数解析

3、接口文档的raw JSON数据,去掉service和access_token默认参数



相关推荐

记一次前端逻辑绕过登录到内网挖掘

前言在测试一个学校网站的时候发现一个未授权访问内网系统,但是这个未授权并不是接口啥的,而是对前端js的审计和调试发现的漏洞,这里给大家分享一下这次的漏洞的过程文章中涉及的敏感信息均已做打码处理,文...

陕西普通话等级查询网的开发者被指将考生数据直接写入源码里

据报道,陕西普通话等级查询网站突然引起大量程序员关注。有人晒出该网站的源代码的打码截图,图中显示,所有考生数据都被直接写在该网站的源代码里。这表示任何人不需要经过任何验证直接查看源代码即可访问考生信息...

PHP8知识详解:PHP是什么?

PHP是什么?PHP服务网从下面几点为你讲清楚什么是PHP。1、PHP最开始是PersonalHomePage(个人主页)的缩写,已经正式更名为“PHP:HypertextPreproces...

PHP紧急更新修复漏洞:自5.x以来所有版本均受影响

IT之家6月8日消息,PHP项目维护团队昨日发布新补丁,修复了存在于PHPforWindows中的远程代码执行(RCE)漏洞,并敦促用户尽快更新至6月6日发布的8.3.8、...

OA协同办公系统源码解析

在如今的信息化时代,PHPOA软件承当着为企事业单位提供安全、稳定、开源的信息化安全系统,在当今信息化时代,协同办公系统成为了企业管理的重要工具。OA(OfficeAutomation)协同办公系统...

附源码:PHP实现查询汉字笔画、笔画排序

有时候我们在开发中可能会用到和汉字有关的方法,例如笔画排序之类的,但是直接进行sort排序往往得不到我们想要的结果,因为内部并没有预留这些排序方法。因此我们需要自己动手,今天就教大家实现汉字笔画的...

StrongShop跨境电商系统源码 | 支持多语言多货币

StrongShop跨境电商系统源码|支持多语言多货币StrongShop是一款免费开源的跨境电商商城网站。基于PHPLaravel框架开发的一款Web商城系统。该项目在没有对Lar...

源代码的定义

源代码是程序员在开发程序时(通常是在字处理程序中)编写的人类可读指令的列表。源代码通过编译器将其转换为机器代码,也称为目标代码,计算机可以理解和执行。目标代码主要由1和0组成,所以它是不可读的。源代码...

2077年了,PHP语言现在怎么样啦?

“PHP是世界上最好的语言!”这句话一出来,编程界的鄙视链一触即发,程序员的键盘世界大战就爆发了。那么,本文就简单讨论PHP语言,笔者作为创业小公司小团队的角度来妄议一下PHP。首先直接说明观点:新手...

开源直播系统源码—为什么要使用PHP语言

开展开源直播系统源码的的开发工作的时候,开发人员们碰到的最多问题便是使用什么语言开发的,回答大多是PHP语言。而对于没有的开发经验的人而言,难以理解PHP语言究竟代表着什么,又有哪些作用。实际上,PH...

手游平台源码搭建使用的PHP是什么?有什么优点吗?

PHP即“超文本预处理器”,是在服务器端执行的脚本语言,尤其适用于Web开发并可嵌入html中。PHP结合了C语言、java和perl多个语言的特色发展出自己的特色语法,并依据它们的长项持续改进提升自...

PHP直播源码,直播系统源代码功能有哪些?

PHP直播源码究竟是什么?其实所谓的PHP直播源码就是用PHP语言开发的直播系统源代码。PHP是什么?PHP原始为PersonalHomePage的缩写,已经正式更名为“PHP:Hyperte...

盘点如何利用PHP生成PDF文件

在PHP代码中生成PDF文件是一项非常耗时的工作,早期的程序员通常是在PHP代码中利用FPDF生成PDF文件。但在如今,有很多的函数库可以使用,借助它们你可以从你提供的HTML文档生成PDF文件,从而...

PHP低代码开发平台 V5.0.7新版发布

注意:本版变更:此版本增加租户内测模式,同时增加软删除及数据回收功能。Sfdp更新6.0.5版本Tpflow更新6.0.7版本1.[修复]修复数据为空的时桌面方案报错修复了在桌面组件删除时,由于用户...

「sabre/dav」只要十行代码让你的网站获得WebDav网盘能力

如今网盘已经成为我们日常中很重要的工具了,不仅仅可以和别人分享,更重要的是可以在我们不同的设备之间读取资料.那什么是WebDav呢?WebDav是一个Http上封装的一个文件系统,就像ftp,nfs之...