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

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

mhr18 2024-12-01 09:10 17 浏览 0 评论

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默认参数



相关推荐

如何选择适合公司的ERP(选erp系统的经验之谈)

很多中小公司想搞ERP,但不得要领。上ERP的目的都是歪的,如提高效率,减少人员,堵住财务漏洞等等。真正用ERP的目的是借机提升企业管理能力,找出管理上的问题并解决,使企业管理更规范以及标准化。上ER...

Manus放开注册,但Flowith才是Agent领域真正的yyds

大家好,我是运营黑客。前天,AIAgent领域的当红炸子鸡—Manus宣布全面放开注册,终于,不需要邀请码就能体验了。于是,赶紧找了个小号去确认一下。然后,额……就被墙在了外面。官方解释:中文版...

歌浓酒庄总酿酒师:我们有最好的葡萄园和最棒的酿酒师

中新网1月23日电1月18日,张裕董事长周洪江及总经理孙健一行在澳大利亚阿德莱德,完成了歌浓酒庄股权交割签约仪式,这也意味着张裕全球布局基本成型。歌浓:澳大利亚年度最佳酒庄据悉,此次张裕收购的...

软件测试进阶之自动化测试——python+appium实例

扼要:1、了解python+appium进行APP的自动化测试实例;2、能根据实例进行实训操作;本课程主要讲述用python+appium对APP进行UI自动化测试的例子。appium支持Androi...

为什么说Python是最伟大的语言?看图就知道了

来源:麦叔编程作者:麦叔测试一下你的分析能力,直接上图,自己判断一下为什么Python是最好的语言?1.有图有真相Java之父-JamesGoshlingC++之父-BjarneStrou...

如何在Eclipse中配置Python开发环境?

Eclipse是著名的跨平台集成开发环境(IDE),最初主要用来Java语言开发。但是我们通过安装不同的插件Eclipse可以支持不同的计算机语言。比如说,我们可以通过安装PyDev插件,使Eclip...

联合国岗位上新啦(联合国的岗位)

联合国人权事务高级专员办事处PostingTitleIntern-HumanRightsDutyStationBANGKOKDeadlineOct7,2025CategoryandL...

一周安全漫谈丨工信部:拟定超1亿条一般数据泄露属后果严重情节

工信部:拟定超1亿条一般数据泄露属后果严重情节11月23日,工信部官网公布《工业和信息化领域数据安全行政处罚裁量指引(试行)(征求意见稿)》。《裁量指引》征求意见稿明确了行政处罚由违法行为发生地管辖、...

oracle列转行以及C#执行语句时报错问题

oracle列转行的关键字:UNPIVOT,经常查到的怎么样转一列,多列怎么转呢,直接上代码(sshwomeyourcode):SELECTsee_no,diag_no,diag_code,...

力控工业实时历史数据库软件pSpace,支持OPC/UA数据接口

在工业领域中,实时数据库处于企业管理层与现场控制层的桥梁位置,承担着生产数据上传下达的职责。力控企业级实时历史数据库pSpace凭借独特的“接口矩阵”技术,实现了与PLC、DCS、仪器仪表等端设备的向...

机房硬件设备及Oracle数据库软件维护服务项目竞争性磋商公告

图片来自:https://www.gxzbcg.cn/class1/226093.html

LabVIEW实现Oracle数据库的访问(labview oracle)

1.安装Oracle客户端下载:从Oracle官方网站下载适用于Windows操作系统的Oracle驱动程序。确保下载的版本与LabVIEW环境和操作系统兼容。1)以Windo...

【Docker 新手入门指南】附:Windows系统安装Docker

一、Windows10/11安装(推荐DockerDesktop)1.系统要求操作系统:仅支持Windows10/11专业版、企业版、教育版或家庭版(需开启WSL2)。硬件要求...

【Windows篇】告别误操作:简单几步隐藏Windows关机按钮

前言最近小编遇到客户想要将VirtualBox发布为虚拟应用供用户使用,但是遇到了问题,就是安装好VirtualBox无法打开虚拟机,打开提示报错。如图:客户是在vSphere虚拟化环境中安装的Win...

PL/SQL 杂谈(七)(pl/sql相关知识)

承接(六)。今天来聊聊SQL*Plus中的异常处理。SQL*Plus表达运行成功的方式与命令的种类相关。对于大多数SQL*Plus独有的命令,如果没有返回错误信息,那么就表示运行成功。另一方面...

取消回复欢迎 发表评论: