1作者: Hariom52 天前原帖
嗨,HN, 我开发了 fastlog,这是一个用纯 C 语言编写的小型异步日志库。 其目标是在多线程负载下实现可预测的日志记录性能。传统的方法(如 fprintf、每个日志使用互斥锁的设计)在多个线程同时记录时往往会出现阻塞或扩展性差的问题。 fastlog 的设计采用了以下方法: - 后台写入线程 - 批量处理,而不是逐条日志同步 - 在热路径上使用线程本地缓冲区(每次日志调用不使用锁) 在一台 4 核心的 Intel i3 系统上: - 单线程性能与 fprintf 竞争力相当 - 多线程日志记录在竞争情况下的扩展性约提高了 1.6 倍 - 系统调用分析显示,与重锁设计相比,futex 调用减少了约 90% 它是一个单独的 .c/.h 文件,没有依赖,易于嵌入。 欢迎提问或反馈。
1作者: ashish_sharda2 天前原帖
刚刚发布了 Playwright Recorder 的 v1.3.0 版本,主要特性是会话持久化。 <p>:测试认证流程需要在每次测试录制时手动重复登录步骤。对于复杂的认证(如单点登录、双因素认证),这会浪费大量时间。 <p>:点击“保存认证状态”以捕获浏览器状态(包括 cookies 和 localStorage)。在录制之前点击“加载认证状态”可以立即恢复认证。适用于任何认证方案。 <p>: - 网络录制:自动捕获 HTTP 请求,生成 page.route() 模拟 - ARIA 选择器:生成 getByRole() 而不是 CSS 选择器 - 移动仿真:使用设备预设测试响应式设计 <p>这是一个 Chrome 扩展,可以记录浏览器交互并生成 JavaScript、TypeScript、Python、Java 或 C# 的 Playwright 测试代码。 <p>所有处理都在本地进行。采用 MIT 许可证,无依赖项。