Furion v4.6.8 发布,阿里云 PTS 压测抗住了!
这两周主要来自一些使用 Furion 的生产项目压测反馈,开发者通过 JMeter 和阿里云 PTS进行压测,有些抗住了,有些没抗住。
所以这两周针对 Furion 底层做了非常多的优化,大大减低了内存和CPU的占用,最后通过更新到最新版后,全部抗住了。
视频体验
下面的项目是使用 Furion 最新版仿 Trello 功能(200%)体验,双核,内存4G,代码1M。
性能优化
本期主要针对框架底层做了不少性能改进,主要是高频请求下内存的占用和CPU的持续飙升,主要来自一个小伙伴的反馈。
🤐 他项目使用了 Furion 的事件总线,每秒高频接收 4000条消息并处理,由于 GC 来不及回收导致内存和CPU占用非常大。
😐 后来经过框架底层优化之后,内存持续稳定,但 CPU 一直下不了。
😊 最后经过继续优化之后,内存正常了,CPU 也正常了。
本期更新
v4.6.8
版本细节:https://gitee.com/dotnetchina/Furion/issues/I5X2Q0 2022.10.22v4.6.7
版本细节:https://gitee.com/dotnetchina/Furion/issues/I5WQPP 2022.10.20v4.6.6
版本细节:https://gitee.com/dotnetchina/Furion/issues/I5WOIV 2022.10.20v4.6.5
版本细节:https://gitee.com/dotnetchina/Furion/issues/I5VPD1 2022.10.14v4.6.4
版本细节:https://gitee.com/dotnetchina/Furion/issues/I5VIAQ 2022.10.13v4.6.3
版本细节:https://gitee.com/dotnetchina/Furion/issues/I5V99T 2022.10.12v4.6.2
版本细节:https://gitee.com/dotnetchina/Furion/issues/I5V6UE 2022.10.12v4.6.1
版本细节:https://gitee.com/dotnetchina/Furion/issues/I5UYQW 2022.10.11v4.6.0
版本细节:https://gitee.com/dotnetchina/Furion/issues/I5UQZ7 2022.10.10
新特性
- [新增]
LoggingMonitor
支持FileResult
类型监听 4.6.0 bf9c0b1- [新增]
LogMessage
结构UseUtcTimestamp
字段,解释日志记录时间格式是UTC
还是LOCAL
时间 4.6.1 aab0371- [新增] 事件总线模块重试失败后支持回调 4.6.1 #I5UVMV
- [新增]
LoggingMonitor
支持序列化忽略指定属性名或属性类型 4.6.1 81c6343- [新增]
long
序列化丢精度的JsonConvert
内置转换器,.AddLongTypeConverters()
4.6.5 #I5VJHC aded58d- [新增]
app.EnableBuffering()
拓展,解决Request.Body
不能重复读问题 4.6.5 aded58d- [新增] 支持特别接口使用特定的序列化规则 4.6.6 797b0bf
- [新增]
LoggingMonitor
自动解析JWT
时间戳为时间格式 4.6.8 9e31b0b突破性变化
- [新增] 适配
.NET 6.0.10
和.NET 7 RC2
4.6.2 6bb2fad- [新增] 内置
Microsoft.AspNetCore.Mvc.NewtonsoftJson
拓展,原因是太多人使用了 4.6.5 aded58d- [移除]
拓展方法 4.6.0 ec4838c"some log".SetCategory(name)
- [移除]
和DateOnlyJsonConverter
处理 4.6.5 aded58dDateOnlyOffsetJsonConverter
- [调整] 事件总线触发处理程序的逻辑,由过去的
foreach
改为Parallel.ForEach
,吞吐量提升近 4 倍 4.6.4 7384c9c- [调整]
名称为.AddDateFormatString()
.AddDateTimeTypeConverters()
4.6.5 aded58d- [调整] 重构日志模块设置上下文数据功能 4.6.0 1c198ee
- [移除] 远程请求
.SetTimeout
和[Timeout]
配置方法,采用全局统一配置 4.6.4 7384c9c问题修复
- [修复]
4.5.9+
版本新增的IncludeScopes
配置导致日志上下文失效 4.6.0 4a76841- [修复] 多个
sql
共用DbParameters
出现冲突问题 4.6.0 #I5UO2H- [修复] 高频率写入日志导致堆内存溢出的异常问题 4.6.0 #I5UJRS
- [修复] 框架内部所有使用
.CreateLogger
创建的日志对象无法应用上下文问题 4.6.0 ec4838c- [修复] 修复远程请求不能在
Worker Serivce
中进行构造函数注入,原因是注册为Scope
范围作用域 4.6.3 974f835- [修复] 个别服务器的
SQL Server
不支持TLS 1.2
协议问题 4.6.3 974f835- [修复]
.ToDictionary()
拓展不支持JObject
类型问题 4.6.5 #I5VJHC a11bf8d- [修复]
LoggingMonitor
处理long
类型丢精度问题 4.6.5 #I5VJHC aded58d- [修复] 动态
WebAPI
在class
类型上贴[ApiDescriptionSettings(true)]
导致接口404
问题 4.6.7 #I5WQ18- [修复] 超高频率下发送事件总线消息,但是
GC
来不及回收导致内存和CPU
爆掉问题 4.6.8 dbc7935- [修复]
JWT
模块自动刷新Token
达到临界值时导致自动刷新失败,并返回错误的401
状态码 4.6.8 #I5WXHZ- [修复] 自动生成
vue/react/angular
客户端工具库错误处理Token
问题 4.6.8 #I5WXHZ其他更改
文档
- [新增] 远程请求设置客户端生命周期配置文档和新超时配置文档
- [新增]
JSON
序列化处理long
类型说明文档- [新增]
JSON
反序列化DateTimeOffset
类型个别格式出错问题- [新增] 规范化结果支持特定接口配置独立序列化配置文档
- [更新] 日志记录文档、事件总线文档、数据库入门文档、
JSON
序列化文档、远程请求文档、安全授权文档、生成前端请求代理文档
其他

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
RXThinkCMF 敏捷开发框架 ThinkPhp6.x+EleVue 版本 v2.4.0 发布
v2.4.0 更新内容: 1、后端服务进行重构,根据用户反馈目前已设计为多应用模式; 2、底层ThinkPhp6核心库已升级为v6.0.9; 3、生成代码生成器,完善编辑表单生成后下拉选择数据源为空的问题; 项目介绍 一款 PHP 语言基于 ThinkPhp6.x、Vue、ElementUI 等框架精心打造的一款模块化、插件化、高性能的前后端分离架构敏捷开发框架,可用于快速搭建前后端分离后台管理系统,本着简化开发、提升开发效率的初衷,目前框架已集成了完整的 RBAC 权限架构和常规基础模块,前端 Vue 端支持多主题切换,可以根据自己喜欢的风格选择想一个的主题,实现了个性化呈现的需求; 为了敏捷快速开发,提升研发效率,框架内置了一键 CRUD 代码生成器,自定义了模块生成模板,包括后端 PHP 文件模块和前端 Vue 端个性化模板,可以根据已建好的表结构 (字段注释需规范) 快速的一键生成整个模块的所有代码和增删改查等等功能业务,真正实现了低代码开发,极大的节省了人力成本的同时提高了开发效率,缩短了研发周期,是一款真正意义上实现组件化、低代码敏捷开发框架。 环境要求: PHP >...
- 下一篇
1024 节日快乐,zorm 1.6.2 发布
Go 轻量 ORM, 零依赖,零侵入分布式事务,支持达梦 (dm), 金仓 (kingbase), 神通 (shentong), 南通 (gbase),TDengine,mysql,postgresql,oracle,mssql,sqlite,db2,clickhouse... 源码地址:https://gitee.com/chunanyong/zorm 官网:https://zorm.cn 测试用例zorm-examples 基于原生 sql 语句,学习成本更低. 代码生成器 代码精简,主体 2500 行,零依赖 4000 行,注释详细,方便定制修改 支持事务传播,这是 zorm 诞生的主要原因 支持 mysql,postgresql,oracle,mssql,sqlite,db2,dm (达梦),kingbase (金仓),shentong (神通),gbase (南通),TDengine,clickhouse 支持多库和读写分离 不支持联合主键,变通认为无主键,业务控制实现 (艰难取舍) 集成 seata-golang,hptx,dbpack 支持全局托管,不修改业务代码,零侵入...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Red5直播服务器,属于Java语言的直播服务器
- CentOS7,8上快速安装Gitea,搭建Git服务器
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- CentOS8编译安装MySQL8.0.19