新闻详情

新闻详情

首页 / 资讯中心 / 详情

2026年十三款主流性能测试工具选型指南与实战避坑

发布时间:2026/9/19 3:16:37来源:尧图网络
2026年十三款主流性能测试工具选型指南与实战避坑
1. 性能测试工具选型的底层逻辑1.1 为什么2026年还要重新盘点压测工具性能测试这个领域有个很有意思的现象工具本身迭代不算快但使用场景和技术栈的变化却非常剧烈。五年前大家还在讨论单机部署的Tomcat能扛多少并发现在随便一个项目都是K8s集群加微服务服务网格、Serverless、边缘节点这些概念已经成了标配。工具还是那些工具但用法和选型逻辑完全变了。我这些年做过电商大促前的全链路压测也帮传统企业做过单体应用迁移上云后的容量验证踩过的坑足够写一本小册子。最深的体会是没有最好的压测工具只有最匹配当前场景的工具。JMeter能做的事情k6不一定顺手Locust擅长的领域Gatling可能完全使不上劲。所以这篇盘点不会给你一个排行榜第一名的答案而是把每款工具的适用边界、性能天花板、学习曲线和踩坑点讲清楚让你根据自己的团队情况做判断。这篇文章适合几类人看刚入行做性能测试的新人需要快速建立工具全景图有一定经验的测试工程师想了解不同工具在云原生场景下的表现差异技术负责人需要为团队选型做技术决策。我会尽量用大白话把原理讲透同时给出可以直接抄的配置和脚本。1.2 压测工具的核心分类维度在展开具体工具之前先建立一个分类框架。市面上的压测工具可以从三个维度来切分第一个维度是协议支持范围。有些工具专注HTTP/HTTPS比如k6和Locust有些工具通过插件体系支持几乎所有主流协议JMeter就是典型代表从HTTP、gRPC、MQTT到JDBC、FTP都能覆盖。这个维度决定了工具能不能用在你的项目里——如果你的系统用了自研的二进制协议那HTTP-only的工具直接出局。第二个维度是脚本编写方式。这里分两派一派是配置驱动典型代表是JMeter的GUI界面和Gatling的DSL另一派是代码驱动k6用JavaScriptLocust用PythonTaurus用YAML。配置驱动的上手快但复杂场景下维护成本高代码驱动的学习曲线陡但灵活性和可维护性强得多。第三个维度是资源模型。传统工具如JMeter采用线程模型一个虚拟用户对应一个线程线程数上去了内存和上下文切换开销会急剧增加。新一代工具如k6和Locust采用协程或事件驱动模型单机可以模拟的并发数高出一个数量级。这个差异在单机压测场景下非常关键。提示选型时不要只看工具本身的性能还要看你的压测机资源。用JMeter压出10万并发需要分布式集群而k6单机就能做到但k6的协议支持范围窄得多。1.3 2026年工具格局的三个变化相比几年前今年的工具格局有三个明显变化值得注意。变化一云原生压测成为默认场景。以前压测是找台机器跑脚本现在更多是在K8s集群里起压测Pod。这直接影响了工具选型——JMeter有官方Docker镜像和Operatork6有k6-operatorLocust有Helm Chart但支持程度和易用性差异很大。如果你的压测环境本身就是K8s选一个原生支持K8s的工具能省掉大量适配工作。变化二可观测性集成成为刚需。压测不只是看TPS和响应时间还要看服务端的CPU、内存、GC、数据库连接池、中间件队列深度。工具能不能把压测指标和服务端监控指标关联起来直接决定了排查问题的效率。k6的Prometheus远程写入、JMeter的Backend Listener、Locust的Web UI都在这块下了功夫。变化三AI辅助脚本生成开始落地。2025年下半年开始几个主流工具都推出了AI辅助功能可以根据接口文档自动生成压测脚本或者根据历史压测数据推荐参数配置。虽然目前还比较初级但方向已经很明确了。2. 十三款主流压测工具逐一拆解2.1 JMeter绕不开的行业标准JMeter在压测领域的地位大概相当于Excel在办公软件里的地位——不是最好用的但几乎所有人都在用生态最完整遇到问题最容易找到答案。2026年的JMeter已经更新到6.x版本核心架构没变但在易用性和云原生支持上有不少改进。核心优势协议支持最全插件生态最丰富。HTTP、HTTPS、gRPC、MQTT、JDBC、FTP、SMTP、TCP、JMS你能想到的协议基本都有对应的Sampler。对于需要混合协议压测的场景JMeter几乎是唯一选择。另外JMeter的分布式压测模式虽然配置麻烦但成熟度很高大规模压测时比新工具更稳。性能天花板单机线程模型下JMeter的并发能力受限于JVM堆内存和线程调度开销。实测下来单机模拟5000-8000并发是比较稳妥的范围再往上就需要分布式。每个线程大约占用1MB左右的堆内存加上响应数据缓冲实际内存消耗会更大。脚本编写GUI界面配置为主支持BeanShell和JSR223Groovy写前置/后置处理器。这里有个经验能用JSR223 Groovy就不要用BeanShellGroovy的性能好一个数量级而且语法更现代。很多老教程还在用BeanShell建议直接跳过。云原生支持官方提供Docker镜像社区有JMeter Operator但配置起来比k6-operator复杂不少。如果压测环境是K8s建议用Helm Chart部署分布式JMeter集群。学习曲线入门容易精通难。GUI拖拽就能跑起来一个简单脚本但要写出可维护、可复用的复杂脚本需要理解JMeter的元件作用域、执行顺序、变量传递机制。注意JMeter的GUI模式只适合调试脚本正式压测必须用命令行模式jmeter -n -t script.jmx -l result.jtl否则GUI本身会消耗大量资源压测结果严重失真。2.2 k6云原生时代的性能测试利器k6是Grafana Labs旗下的开源压测工具用Go语言编写脚本用JavaScript。它的设计哲学和JMeter完全不同代码即配置压测即代码。如果你团队有开发背景k6的上手速度会非常快。核心优势单机并发能力极强。k6采用goroutine模型每个虚拟用户只占用几KB内存单机模拟5万并发不是问题。实测在一台8核16G的机器上k6可以稳定输出3万以上的并发请求而JMeter在这个配置下大概只能做到5000左右。脚本编写JavaScript ES6语法支持模块化导入。一个典型的k6脚本长这样import http from k6/http; import { check, sleep } from k6; export const options { stages: [ { duration: 30s, target: 100 }, { duration: 1m, target: 500 }, { duration: 30s, target: 0 }, ], thresholds: { http_req_duration: [p(95)500], http_req_failed: [rate0.01], }, }; export default function () { const res http.get(https://api.example.com/users); check(res, { status is 200: (r) r.status 200, response time 500ms: (r) r.timings.duration 500, }); sleep(1); }这段脚本定义了阶梯式加压、性能阈值断言和检查点比JMeter的GUI配置清晰得多。云原生支持k6-operator是K8s原生压测的最佳实践之一。定义一个TestRun CRDoperator会自动创建压测Pod、收集结果、清理资源。配合Grafana和Prometheus可以实现压测指标和业务监控的统一展示。局限性协议支持相对有限主要是HTTP/HTTPS、WebSocket、gRPC。如果需要压测MQTT、JDBC等协议需要借助xk6扩展机制自己编译门槛较高。学习曲线有JavaScript基础的话半天就能上手。但k6的生态不如JMeter丰富遇到冷门问题可能需要自己看源码。2.3 LocustPython工程师的首选Locust用Python编写脚本采用事件驱动模型底层基于gevent协程。如果你的团队以Python技术栈为主Locust几乎是零学习成本的选择。核心优势脚本即Python代码可以复用现有的Python库和工具函数。比如你已经有了一套接口封装的Python SDK直接import进来就能用不需要像JMeter那样重新配置一遍。另外Locust的Web UI非常直观实时展示TPS、响应时间、失败率等指标演示效果很好。脚本示例from locust import HttpUser, task, between class ApiUser(HttpUser): wait_time between(1, 3) def on_start(self): self.client.post(/login, json{ username: testuser, password: testpass }) task(3) def get_users(self): self.client.get(/api/users) task(1) def create_order(self): self.client.post(/api/orders, json{ product_id: 1001, quantity: 2 })task(3)表示这个任务的执行权重是3Locust会按权重分配虚拟用户。性能天花板gevent协程模型下单机并发能力介于JMeter和k6之间。实测单机可以模拟1-2万并发具体取决于脚本复杂度和响应数据大小。Locust支持分布式模式通过master-worker架构横向扩展。云原生支持官方提供Docker镜像和Helm Chart在K8s上部署比较方便。但相比k6-operatorLocust的K8s集成度稍弱一些。局限性Python GIL在极端高并发下会成为瓶颈虽然gevent绕过了大部分限制但在CPU密集型场景下性能会下降。另外Locust的协议支持主要围绕HTTP其他协议需要自己实现客户端。2.4 GatlingDSL驱动的性能测试框架Gatling是Scala编写的压测工具脚本用Scala DSL描述。它的最大特点是表达力极强一个复杂的压测场景可以用非常简洁的代码表达出来。核心优势DSL设计优雅场景描述清晰。比如要模拟用户登录后浏览商品列表随机选择商品查看详情然后下单这个流程Gatling的脚本读起来就像业务描述val scn scenario(E-commerce Flow) .exec(http(Login) .post(/login) .body(StringBody({username:user,password:pass})) .check(jsonPath($.token).saveAs(authToken))) .pause(2) .exec(http(Browse Products) .get(/api/products) .header(Authorization, Bearer ${authToken}) .check(jsonPath($.items[*]).findAll.saveAs(productIds))) .pause(1) .exec(http(View Product) .get(/api/products/${productIds.random()}) .header(Authorization, Bearer ${authToken})) .pause(3) .exec(http(Create Order) .post(/api/orders) .header(Authorization, Bearer ${authToken}) .body(StringBody({productId:${productIds.random()},quantity:1})))性能天花板基于Akka Actor模型单机并发能力很强和k6在一个量级。Gatling的官方数据显示单机可以模拟数万并发。学习曲线Scala语言本身有一定门槛但如果只是写压测脚本掌握基本的DSL语法就够了。Gatling提供了Recorder工具可以录制浏览器操作生成脚本降低入门难度。局限性Scala生态相对小众遇到问题排查时参考资料不如JMeter丰富。另外Gatling的企业版功能更强大开源版在报告和协作方面有所限制。2.5 其他值得关注的工具Taurus不是独立的压测引擎而是JMeter、Locust、Gatling等工具的封装层。用YAML定义测试配置Taurus负责调用底层引擎执行。适合需要统一管理多种压测工具的场景但多了一层抽象排查问题时要穿透到下层。VegetaGo编写的HTTP压测工具命令行操作极其轻量。适合快速验证接口性能但不适合复杂场景编排。一条命令就能发起压测echo GET http://api.example.com | vegeta attack -rate1000 -duration30s | vegeta report。wrk/wrk2C语言编写的高性能HTTP压测工具单机性能极强但脚本能力弱只适合简单的HTTP压测。wrk2支持恒定吞吐量模式适合做稳定性测试。ArtilleryNode.js编写的压测工具YAML配置支持HTTP、WebSocket、Socket.io。适合Node.js技术栈的团队但性能和生态不如k6。Siege老牌HTTP压测工具配置简单适合快速验证。但功能相对基础不支持复杂的场景编排。abApacheBench最简单的HTTP压测工具适合快速测试单个接口。但只支持单URL不支持并发场景编排且在高并发下自身会成为瓶颈。Heyab的Go语言替代品解决了ab的一些性能问题但功能依然简单。NBomber.NET生态的压测工具用C#或F#编写脚本。适合.NET技术栈的团队在Windows环境下表现良好。TsungErlang编写的分布式压测工具支持HTTP、WebSocket、MQTT等协议。分布式能力很强但配置复杂社区活跃度一般。3. 工具选型的决策框架与实操建议3.1 按团队技术栈选型选型的第一原则是匹配团队现有技术栈。压测脚本是需要长期维护的资产如果团队没人懂Scala选Gatling就是给自己挖坑。团队技术栈首选工具备选工具理由JavaJMeterGatlingJMeter生态最全Gatling性能更好但学习成本高PythonLocustJMeterLocust脚本即Python复用现有代码方便JavaScript/Node.jsk6Artilleryk6性能更强生态更活跃Gok6Vegetak6脚本用JS但Go团队上手快.NETNBomberJMeterNBomber原生.NET集成方便混合技术栈JMeterk6JMeter协议支持最全适合复杂场景3.2 按压测场景选型场景一接口级快速验证。选Vegeta或wrk命令行一条命令搞定不需要写脚本。适合开发阶段快速验证接口性能。场景二复杂业务流压测。选JMeter或Gatling两者的场景编排能力最强。如果团队有Java背景选JMeter有Scala背景选Gatling。场景三云原生环境大规模压测。选k6k6-operator在K8s上的体验最好。如果协议不支持再考虑JMeter的分布式模式。场景四持续性能测试CI/CD集成。选k6或Locust两者的命令行模式和退出码机制适合集成到流水线。JMeter也可以但配置更繁琐。场景五混合协议压测。选JMeter没有之一。MQTTHTTPJDBC这种组合只有JMeter能一站式搞定。3.3 压测机资源配置计算压测机的配置直接决定了能压出多大的并发。这里给一个经验公式JMeter每个线程约占用1-2MB堆内存加上响应数据缓冲建议按并发数 × 2MB估算堆内存。比如要压5000并发堆内存至少10GB加上系统开销压测机建议16GB内存起步。k6每个虚拟用户约占用几KB到几十KB内存按并发数 × 50KB估算。5万并发大约需要2.5GB内存加上Go运行时开销8GB内存的机器足够。Locust每个协程约占用几十KB内存按并发数 × 100KB估算。2万并发大约需要2GB内存建议8GB内存起步。提示压测机的网络带宽也是瓶颈。如果每个响应平均100KB1万TPS就是1GB/s的带宽需求千兆网卡直接打满。压测前务必确认网络带宽是否足够。4. 常见问题与排查技巧实录4.1 JMeter压测中的典型问题问题一java.io.IOException: Error writing to server。这个报错通常出现在高并发场景下原因是JMeter的HTTP连接池耗尽或服务端主动断开了连接。解决方法在HTTP请求中勾选Use KeepAlive调整httpclient4.time_to_live参数或者增大JMeter的堆内存。问题二BeanShell断言性能差。BeanShell是解释执行的每次断言都要解析脚本在高并发下会成为瓶颈。解决方案改用JSR223 Assertion GroovyGroovy编译后执行性能提升10倍以上。问题三JDBC Request查询结果作为下一个接口参数。这是很常见的需求做法是在JDBC Request中设置Variable Names然后用ForEach控制器遍历结果集。注意JDBC Request的Result Variable Name和Variable Names要配合使用前者存整个结果集后者存每一列的值。问题四动态调整QPS。JMeter本身不支持运行时动态调整QPS但可以通过Constant Throughput Timer配合BeanShell脚本修改属性值来实现。更优雅的方案是用JSR223 Sampler读取外部配置动态计算等待时间。问题五HTTPS证书问题。JMeter默认会校验服务端证书遇到自签名证书会报错。解决方法在jmeter.properties中设置https.default.protocolTLS或者在HTTP Request中勾选Use custom SSL context并导入信任库。4.2 k6压测中的典型问题问题一脚本中无法使用Node.js模块。k6的JavaScript运行时是Goja不是Node.js不支持fs、path等Node模块。如果需要读取文件用open()函数如果需要加密用k6/crypto模块。问题二阈值断言失败但不知道原因。k6的阈值断言只告诉你失败了不告诉你为什么。解决方法在脚本中添加自定义Trend和Counter指标配合handleSummary函数输出详细报告。问题三分布式压测配置复杂。k6-operator虽然方便但配置CRD需要一定的K8s知识。如果不想用operator可以用k6的--out参数将结果输出到Prometheus然后用Grafana展示。4.3 Locust压测中的典型问题问题一on_start方法中登录失败导致后续任务全部失败。Locust的on_start在每个虚拟用户启动时执行一次如果登录失败后续任务会因为没有token而全部报错。解决方法在on_start中添加重试逻辑或者用task装饰器标记登录任务让Locust自动重试。问题二Web UI在压测过程中卡顿。Locust的Web UI在大量并发下会消耗不少资源建议正式压测时用--headless模式通过命令行参数控制压测结果输出到CSV或Prometheus。问题三分布式模式下worker节点无法连接master。检查防火墙是否开放了master的5557和5558端口以及--master-bind-host参数是否配置正确。4.4 压测结果解读的常见误区误区一只看平均响应时间。平均响应时间会被大量快速请求拉低掩盖长尾请求的问题。必须看P95、P99甚至P999这些才是用户体验的真实反映。误区二TPS越高越好。TPS高但错误率也高说明系统已经在崩溃边缘。正确的做法是找到最大稳定TPS——错误率低于阈值、响应时间满足SLA的前提下系统能持续承受的最大吞吐量。误区三压测环境和生产环境配置不一致。压测环境4核8G生产环境16核32G压测结果完全没有参考价值。压测环境至少要和生产环境同规格最好直接用生产环境的影子流量做压测。误区四忽略压测机自身的瓶颈。压测机CPU打满、网络带宽跑满、文件描述符耗尽都会导致压测结果失真。压测前用top、iftop、ulimit -n检查压测机状态。5. 从零搭建一套完整的压测体系5.1 环境准备与工具安装以JMeter为例完整的环境搭建流程如下第一步安装JDK。JMeter 6.x需要JDK 17或更高版本。推荐用OpenJDK下载后配置JAVA_HOME环境变量。第二步下载JMeter。从Apache官网下载二进制包解压到任意目录。注意不要放在有中文或空格的路径下否则可能出各种奇怪的问题。第三步配置JMeter。修改bin/jmeter.properties文件关键配置项包括# 设置默认语言为中文 languagezh_CN # 增大堆内存 HEAP-Xms4g -Xmx8g -XX:MaxMetaspaceSize512m # 关闭SSL证书校验仅测试环境使用 https.default.protocolTLS # 设置结果文件格式 jmeter.save.saveservice.output_formatcsv jmeter.save.saveservice.response_datafalse jmeter.save.saveservice.samplerDatafalse第四步安装插件。用Plugins Manager安装常用插件Custom Thread Groups阶梯加压、PerfMon服务端监控、MQTT Protocol SupportMQTT压测等。第五步验证安装。命令行执行jmeter -v确认版本信息正常输出。5.2 压测脚本编写规范一套好的压测脚本应该具备以下特征可参数化所有环境相关的配置域名、端口、账号都提取到CSV文件或用户定义变量中切换环境时只改配置文件不改脚本。可复用用Test Fragment封装公共逻辑如登录、鉴权用Module Controller引用避免重复配置。可维护用Simple Controller或Transaction Controller组织请求命名清晰让人一眼能看懂业务流程。可断言每个请求都要有响应断言验证状态码、关键字段、响应时间。断言用JSR223 Assertion Groovy不要用BeanShell。可监控配置Backend Listener将压测指标实时推送到InfluxDB或Prometheus配合Grafana展示。5.3 压测执行与监控压测执行分三个阶段预热阶段用低并发如10%目标并发跑5-10分钟让系统JIT编译、缓存预热、连接池初始化。跳过预热直接上高并发前几分钟的数据没有参考价值。阶梯加压阶段用Custom Thread Groups的Stepping Thread Group每30秒增加一批并发观察系统指标变化。当响应时间开始非线性增长或错误率上升时记录当前的并发数这就是系统的拐点。稳定压测阶段在拐点以下选择一个并发数通常是拐点的70%-80%持续压测30分钟到2小时验证系统在稳定负载下的表现。监控方面压测机侧用JMeter的Backend Listener推送指标服务端侧用Prometheus Grafana监控CPU、内存、GC、数据库连接池、中间件队列深度。两边指标关联分析才能快速定位瓶颈。5.4 压测报告与容量评估压测报告不是简单罗列TPS和响应时间而是要回答三个问题系统能扛多少瓶颈在哪里怎么优化报告应包含以下内容压测概述压测目标、环境配置、工具版本、脚本说明关键指标TPS、响应时间P50/P95/P99、错误率、并发数资源消耗压测机和服务端的CPU、内存、网络、磁盘IO瓶颈分析根据监控数据定位瓶颈点应用代码、数据库、中间件、网络容量结论当前配置下的最大稳定TPS以及扩容建议优化建议针对瓶颈点的具体优化措施容量评估的经验公式所需机器数 峰值TPS / 单机稳定TPS × 冗余系数。冗余系数一般取1.5-2.0应对突发流量和单机故障。注意压测报告要存档每次系统变更后重新压测对比历史数据观察性能趋势。性能退化往往不是一次大变更导致的而是多次小变更累积的结果。6. 压测工具的未来趋势与个人体会6.1 工具融合与标准化2026年一个明显的趋势是压测工具的融合。k6被Grafana收购后和Prometheus、Grafana的集成越来越紧密JMeter的Backend Listener也在向OpenTelemetry标准靠拢。未来压测工具可能不再是独立的孤岛而是可观测性平台的一个组件。另一个趋势是压测即代码Performance Testing as Code的普及。压测脚本和业务代码一起版本管理压测任务集成到CI/CD流水线每次代码合并自动触发基准压测性能退化直接阻断发布。这个模式在头部互联网公司已经是标配中小团队也在快速跟进。6.2 我个人的工具组合我目前的工具组合是k6做日常接口压测和CI集成JMeter做复杂场景和混合协议压测Locust做需要复用Python代码的场景。三套工具各司其职不追求统一到一个工具上。k6的脚本我放在代码仓库的perf/目录下和业务代码一起维护。每次发版前跑一遍基准压测结果推送到Grafana和历史数据对比。JMeter脚本用于大促前的全链路压测因为需要模拟复杂的业务流和多种协议。Locust用在需要调用内部Python SDK的场景省去重新封装接口的工作。6.3 给新人的学习路径建议如果你是刚入行的性能测试工程师建议按这个顺序学第一阶段先学JMeter把HTTP压测、参数化、断言、关联、分布式这些基础打牢。JMeter的生态最全遇到问题最容易找到答案适合建立性能测试的完整认知。第二阶段学k6或Locust理解代码驱动压测的优势。这个阶段重点不是学工具本身而是理解协程模型、事件驱动、性能阈值这些概念。第三阶段学服务端监控和瓶颈分析。压测工具只是手段真正的核心能力是根据监控数据定位性能瓶颈。学Prometheus、Grafana、Arthas、火焰图这些工具比多学一个压测工具更有价值。第四阶段学容量规划和全链路压测。这是性能测试的高阶领域需要理解系统架构、流量模型、降级策略。建议从单系统容量评估做起逐步扩展到全链路。最后分享一个我踩过的坑早期做压测时我花了很多时间优化压测脚本的性能结果发现瓶颈根本不在压测机而在服务端的数据库连接池。压测的第一原则是先确认压测机不是瓶颈再去找服务端的瓶颈。压测前用top看一眼压测机的CPU和内存用iftop看一眼网络带宽用ulimit -n确认文件描述符够用。这些基础检查花不了五分钟但能省掉几个小时的无效排查。
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

2026年服务好的在线文档编辑中台厂商综合评测 2026/9/19 4:07:45

2026年服务好的在线文档编辑中台厂商综合评测

在线文档编辑中台厂商服务能力评价维度当前企业数字化转型进程持续深入,在线文档编辑中台已经成为支撑企业跨部门协作、业务系统集成、数据安全管控的核心办公基础设施。不同厂商的服务能力差异直接影响项目落地效率、使用体验和后续运维成本,建立统一的…

阅读更多 →
CANN pyasc 算子开发:asc.language.basic.set_atomic_type 原子操作数据类型设置接口详解 2026/9/19 4:07:45

CANN pyasc 算子开发:asc.language.basic.set_atomic_type 原子操作数据类型设置接口详解

CANN pyasc 算子开发:asc.language.basic.set_atomic_type 原子操作数据类型设置接口详解 【免费下载链接】pyasc 本项目为Python用户提供算子编程接口,支持在昇腾AI处理器上加速计算,接口与Ascend C一一对应并遵守Python原生语法。 项目地…

阅读更多 →
微信聊天记录导出完整指南:用 WeChatMsg 免费把历史对话转成 Word、CSV 和年度聊天报告 2026/9/19 4:07:45

微信聊天记录导出完整指南:用 WeChatMsg 免费把历史对话转成 Word、CSV 和年度聊天报告

微信聊天记录导出完整指南:用 WeChatMsg 免费把历史对话转成 Word、CSV 和年度聊天报告 【免费下载链接】WeChatMsg 提取微信聊天记录,将其导出成HTML、Word、CSV文档永久保存,对聊天记录进行分析生成年度聊天报告 项目地址: https://gitco…

阅读更多 →
OCC WebGL案例编译指南:FreeType静态库配置与链接实战 2026/9/19 4:07:45

OCC WebGL案例编译指南:FreeType静态库配置与链接实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
3万预算床垫选购指南:进口经典与国产智能谁更值? 2026/9/19 4:07:45

3万预算床垫选购指南:进口经典与国产智能谁更值?

3万块买一张床垫,放在任何一个消费市场里都算得上重决策了。这两年我帮朋友和客户挑床垫,凡是预算推到三万这条线的,几乎都会在同一个岔路口纠结:一边是席梦思、丝涟、舒达这些进口老牌,另一边是慕思、芝华仕、喜临门这…

阅读更多 →
让Agent“看懂”视频:claude-video Skill原理与实践 2026/9/19 4:04:45

让Agent“看懂”视频:claude-video Skill原理与实践

说实话,我一开始看到“让Agent看视频”这个想法,第一反应是:这需求是真实的吗?毕竟现在大模型读文本、看图已经很成熟了,但视频,尤其是长视频,基本还是盲区。直到我自己在项目里遇到过几次“要是…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞