在线做热图的网站用dw做的代码怎么放在网站上

张小明 2026/1/8 17:19:51
在线做热图的网站,用dw做的代码怎么放在网站上,太原网站定制,网络设计什么学历一般介绍分享一个开源测试工具#xff0c;atomic-bomb-engine-py:使用rust开发的python压测工具#xff0c;这个工具是由 qyzhg 同学在TesterHome社区网站的分享。 项目背景 公司的原有压测平台是由 go 开发#xff0c;使用 locust 作为压力引擎使用#xff0c;在互联网的大环…介绍分享一个开源测试工具atomic-bomb-engine-py:使用rust开发的python压测工具这个工具是由 qyzhg 同学在TesterHome社区网站的分享。项目背景公司的原有压测平台是由 go 开发使用 locust 作为压力引擎使用在互联网的大环境下开始各种降本增效性能测试的 pod 现在缩减到只有 1/8 个物理核心这种情况下locust 大概 300 并发都已经出现了 cpu 瓶颈所以需要一款性能更好的压测引擎作为替代品刚开始的时候是想直接使用 wrk 集成进项目中但是遇见了几个比较麻烦的问题:post 请求需要使用 lua无法对压测过程进行监听项目过于庞大二开十分困难所以经过调研现有的开源压测引擎没有符合现在的平台化需求的所以诞生了这个项目之所以选用 rust是因为 rust 的性能会非常的好而且高并发的压测下没有 gc 对结果产生影响引擎写完后可以直接导出一个 c 的入口go 开启 cgo 会比较简单的将项目集成。由于引擎是一个独立的项目无公司的业务部分可以直接开源。介于现在大部分测试人员的技术栈都是以 python 为主所以又在引擎外面使用 pyo3 开发了一个 python 的包装器可以让更多 python 技术栈的同学直接调用为了方便大家使用又开发了一个比较简单的前端页面可以满足简单的压测需求。项目地址python 包部分https://github.com/qyzhg/atomic-bomb-engine-py引擎部分https://github.com/qyzhg/atomic-bomb-engine前端部分https://github.com/GiantAxeWhy/atomic-bomb-engine-front项目已发布到 pip可以直接使用 pip 安装使用ci 部分使用 github actions 进行矩阵编译支持 python3.8-3.12linux-x86, mac arm、x86, win-x86应该可以覆盖大部分环境如果有特殊需求可以联系作者添加 action项目内部架构设计图项目界面使用说明准备开始安装pip install atomic-bomb-engine在 python 中导入import atomic_bomb_engine异步使用的时候还需要引用 asyncioimport asyncio主要方法说明多接口压测可以使用 batch_async 方法进行操作函数签名和解释如下async def batch_async(test_duration_secs: int,concurrent_requests: int,api_endpoints:List[Dict],step_option:Dict[str, int]None,verbose:boolFalse,should_prevent:boolFalse) -Dict:批量压测:param test_duration_secs: 测试持续时间:param concurrent_requests: 并发数:param api_endpoints: 接口信息:param step_option: 阶梯加压选项:param verbose: 打印详细信息:param should_prevent: 是否禁用睡眠使用 assert_option 方法可以返回断言选项字典assert_options[atomic_bomb_engine.assert_option($.code, 429),atomic_bomb_engine.assert_option($.code, 200)])print(result)jsonpath 如果不会用的话建议去jsonpath学习使用 step_option 方法可以返回阶梯加压选项字典def step_option(increase_step: int, increase_interval: int) - Dict[str, int]:生成step option:param increase_step: 阶梯步长:param increase_interval: 阶梯间隔同样的本包中也包含了一个对 api_endpoint 的包装endpoint 方法方便调用endpoint 中的 assert_options 中也可以套用 assert_option 方法async def run_batch():result await atomic_bomb_engine.batch_async(test_duration_secs10,concurrent_requests10,api_endpoints[atomic_bomb_engine.endpoint(nametest1,urlhttps:xxxxx1.xx,methodget,weight1,timeout_secs10,assert_options[atomic_bomb_engine.assert_option(jsonpath$.code, reference_object200)]),atomic_bomb_engine.endpoint(nametest2,urlhttps://xxxxx2.xx,methodget,weight1,timeout_secs10)])print(result)监听时可以使用 BatchListenIter 生成器async def listen_batch():iterator atomic_bomb_engine.BatchListenIter()for message in iterator:if message:print(message)else:await asyncio.sleep(0.3)同时调用时同单接口async def main():await asyncio.gather(run_batch(),listen_batch(),)if __name__ __main__:asyncio.run(main())使用内置 ui 界面导入from atomic_bomb_engine import server导入内置的 server 后可以使用内置的 http 服务器开启一个 ui 界面并且开始监听压测过程中的数据无需手动迭代数据import asyncioimport atomic_bomb_enginefrom atomic_bomb_engine import serverserver.ui(port8000)async def run_batch():result await atomic_bomb_engine.batch_async(test_duration_secs120,concurrent_requests100,step_optionatomic_bomb_engine.step_option(increase_step6, increase_interval5),verboseFalse,api_endpoints[atomic_bomb_engine.endpoint(nametest-baidu,urlhttps://baidu.com,methodGET,weight1,timeout_secs10),atomic_bomb_engine.endpoint(nametest-google, urlhttps://google.com, methodGET, weight1, timeout_secs10),])print(result)return resultif __name__ __main__:asyncio.run(run_batch())BUG 和需求由于项目开启时间较短只有短短一个月左右可能会有一些 bug 和没有做的需求如果发现了 bug 和需求都可以联系作者由于是工作之余开发可能不会太保证时效性感谢每一个认真阅读我文章的人礼尚往来总是要有的虽然不是什么很值钱的东西如果你用得到的话可以直接拿走这些资料对于【软件测试】的朋友来说应该是最全面最完整的备战仓库这个仓库也陪伴上万个测试工程师们走过最艰难的路程希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

架设销售网站wordpress分页函数

企业级语音应用首选:EmotiVoice的稳定性和扩展性分析 在智能客服频繁卡顿、虚拟主播声音千篇一律的今天,用户对“有温度”的语音交互期待正不断攀升。传统TTS系统虽然能读出文字,却难以传递情绪,更别提模仿特定人的音色——这种割…

张小明 2026/1/6 16:16:09 网站建设

天津市中小企业局网站短视频网站开发教程

一、聚类分群在单细胞数据分析中的核心地位 单细胞转录组测序(scRNA-seq)技术已彻底改变了我们研究细胞异质性的能力,其核心价值在于揭示组织或生物样本中不同类型的细胞状态、发育轨迹和功能亚群。聚类分析作为scRNA-seq数据处理流程中的关…

张小明 2026/1/6 21:15:42 网站建设

网站租用 凡网站建设营销排名方案

Python-Wechaty是一款基于Python语言的对话式RPA SDK,专门为聊天机器人开发者设计。这个框架让开发者能够轻松构建微信个人账号的自动化工具,支持多种协议接入,实现智能对话、消息转发、群管理等功能。本文将为你详细解析这个强大的微信机器人…

张小明 2026/1/8 11:48:11 网站建设

php网站开发毕业设计礼品网站商城怎么做

基础概念NH2-PEG4-DOTA 是一种双功能、DOTA 类金属螯合剂。NH2-PEG4-DOTA 能够与 Dextran 偶联,在高发光配合物的存在下用于定量分析。NH2-PEG4-DOTA 还能够与放射性核素结合,而用于制备核素偶联物 (RDC)。RDC 具有特定靶向生物分子的能力,可…

张小明 2026/1/8 4:03:00 网站建设

php学完可以做网站学设计需要哪些软件

摘要 随着社会经济的快速发展和人们生活水平的提高,宠物已成为许多家庭的重要成员,宠物健康管理需求日益增长。传统的宠物健康管理方式主要依赖人工记录和纸质档案,效率低下且易出错,难以满足现代宠物主人的需求。宠物健康顾问系统…

张小明 2026/1/7 6:04:36 网站建设

linux服务器做网站唐山做网站建设公司

点击上方“程序员蜗牛g”,选择“设为星标”跟蜗牛哥一起,每天进步一点点程序员蜗牛g大厂程序员一枚 跟蜗牛一起 每天进步一点点33篇原创内容公众号首先要了解Feign是如何进行远程调用的,这里面包括,注册中心、负载均衡、FeignClie…

张小明 2026/1/7 21:18:45 网站建设