LemonNoCry
|
4424bcb41d
|
🎨 统一使用 Directory.Build.props 管理项目
|
2024-08-02 17:24:35 +08:00 |
|
LemonNoCry
|
288eedf0b4
|
🚸🎨 Caching中增加校验警告,如果意外注册IMemoryCache
CodeQL / Analyze (csharp) (push) Waiting to run
CodeQL / Analyze (javascript) (push) Waiting to run
.NET Core / build (push) Waiting to run
|
2024-08-02 10:08:39 +08:00 |
|
LemonNoCry
|
64c2e8c0e4
|
✅ 添加Cache单元测试
CodeQL / Analyze (csharp) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
.NET Core / build (push) Has been cancelled
|
2024-07-31 17:44:17 +08:00 |
|
LemonNoCry
|
a448266c86
|
🎨 首次创建数据库后,清理连接池避免复用
CodeQL / Analyze (csharp) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
.NET Core / build (push) Has been cancelled
|
2024-07-29 14:49:59 +08:00 |
|
LemonNoCry
|
966db5ec8c
|
⚡️🎨 优化调整缓存性能
CodeQL / Analyze (csharp) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
.NET Core / build (push) Has been cancelled
1.调整获取所有Key的方式,原有写法是维护一个AllKey的集合,在长时间运行后Key越来越多性能越来越低,故此优化,直接使用Redis原生API
2.优化App.GetServiceProvider的逻辑,如果是单例则直接返回RootServices
3.优化IpPolicyRateLimitSetup,使用分布式缓存,而不是MemoryCache
4.优化MiniProfilerSetup,增加注册使用Redis
5.优化DataProtectionSetup,在不使用Redis时,默认保存在临时文件夹
|
2024-07-18 17:47:31 +08:00 |
|
LemonNoCry
|
dd10a9ad97
|
✏️ 调整命名空间拼写错误
|
2024-07-15 15:48:52 +08:00 |
|
LemonNoCry
|
2d7350203c
|
✨⚡️雪花Id优化
1.统一使用 Yitter.IdGenerator 生成雪花Id、
2.使用 SnowflakeId.AutoRegister 自动注册WorkerId
静态使用:IdGeneratorUtility.NextId()
|
2024-07-03 09:49:40 +08:00 |
|
iw_deity
|
a181eb5bb3
|
Update UserInfoSeedData.cs
postgresql插入数据错误
|
2024-04-25 20:53:45 +08:00 |
|
LemonNoCry
|
698e26461c
|
🐛修复表达式错误 fix #355
|
2024-01-15 16:27:58 +08:00 |
|
anjoy8
|
9131d89075
|
Update Blog.Core.Common.csproj
|
2024-01-11 09:03:27 +08:00 |
|
anjoy8
|
62cdfb3a56
|
feat: some change
|
2023-11-26 15:50:27 +08:00 |
|
anjoy8
|
8188403b60
|
feat: remove some needless code
|
2023-11-24 22:49:56 +08:00 |
|
LemonNoCry
|
6331e20820
|
🐛 优化JWT签发属性 iat 为签发时间戳
|
2023-11-15 18:09:54 +08:00 |
|
anjoy8
|
7ca3e1ec22
|
feat: update to 8.0
|
2023-11-15 16:15:21 +08:00 |
|
anjoy8
|
f786881e89
|
Merge branch 'master' into net7.0
|
2023-11-14 09:25:04 +08:00 |
|
LemonNoCry
|
c85f51a901
|
🎨 优化响应流读取,兼容MemoryStream
|
2023-11-11 15:57:56 +08:00 |
|
anjoy8
|
0c6ea285ac
|
Merge branch 'master' into net7.0
|
2023-11-01 10:45:53 +08:00 |
|
anjoy8
|
bea53321a3
|
Merge branch 'optimize-dbconfig'
|
2023-10-31 16:36:23 +08:00 |
|
hudingwen
|
1b7d13aa6d
|
xml序列化内存泄漏
|
2023-10-28 18:22:04 +08:00 |
|
LemonNoCry
|
0901de2fbf
|
🎨✨🎉 优化原有的DBS配置、新增数据库故障转移方案
1.优化原有的DBS配置,破坏性修改,原有的DBS配置在多库和读写分离无法兼容,配置写法不是合适,故此优化
2.新增数据库故障转移方案,例如主库挂了自动切换到备用库,备用库不会由程序维护,需要运维、dba去做数据库同步方案,比如Sqlserver事务日志传输等
故障转移方案兼容多种方式
1.数据库主从方案
在配置主从之后,需要将从库配置为备用链接就行了
一般就是:修改、写入、删除走主库,查询操作走从库,在主库挂了后则所有操作走从库
2.数据库主备方案
日常使用主数据库操作,备用库只是备份,只有主库挂了才会用备用库
从库和备库都属于slave库功能
|
2023-10-19 16:28:20 +08:00 |
|
LemonNoCry
|
dfa067d214
|
🐛 HttpClient 改为单例
|
2023-10-18 09:55:54 +08:00 |
|
LemonNoCry
|
39fc0ab4e8
|
🎨 调整DbSeed批量写入
|
2023-08-30 19:42:56 +08:00 |
|
LemonNoCry
|
6d0a3dfc09
|
🐛🐛🐛 修复RootService内存溢出
|
2023-08-30 19:40:54 +08:00 |
|
anjoy8
|
8372a3a0d4
|
feat: 🎉 test log sql operate log
|
2023-08-23 16:13:42 +08:00 |
|
LemonNoCry
|
667cc8fafc
|
test
|
2023-07-21 20:18:51 +08:00 |
|
LemonNoCry
|
7cf94998c2
|
test
|
2023-07-21 18:03:09 +08:00 |
|
anjoy8
|
8b4e378a49
|
feat: dm database
|
2023-07-20 12:48:49 +08:00 |
|
LemonNoCry
|
b9e24a84e6
|
✨✨✨ 史诗级更新,完美支持各种复杂动态条件
例子看单元测试DynamicLambdaTest
支持复杂链表 动态条件拼接
从此后端可只定义一种接口,条件交给前端拼接
后端接口就不在需要定义一堆参数等
|
2023-07-11 12:14:16 +08:00 |
|
LemonNoCry
|
f5a2631d7e
|
✨ SignalR Demo
优化SignalR,通过传递token确认身份
|
2023-07-05 17:34:40 +08:00 |
|
ansonzhang
|
a164ef47cc
|
Merge pull request #348 from anjoy8/feature/cache
Feature/cache
|
2023-06-25 17:14:44 +08:00 |
|
anjoy8
|
0d967086d9
|
🉑 feat: add request access etc. log
|
2023-06-21 17:35:13 +08:00 |
|
LemonNoCry
|
bb0150e96a
|
🎨 不关闭底层流
|
2023-06-19 16:43:29 +08:00 |
|
LemonNoCry
|
a338c56e7a
|
✨🎨 优化吞异常问题、优化HttpResponse Body读取问题
1.处理掉中间件过度try catch 吞掉异常,建议直接往上抛不要过度try
2.优雅处理HttpResponse读取问题,原生[HttpResponseStream]实际上只是个包装类,内部包装了[HttpResponsePipeWriter]来进行写入响应数据,由此封装一个[FluentHttpResponseStream],内部扩展使用[MemoryStream]来读取
|
2023-06-12 17:45:15 +08:00 |
|
LemonNoCry
|
60cade83d4
|
🎨 优化AOP缓存
|
2023-06-12 11:16:45 +08:00 |
|
LemonNoCry
|
0ddaa35bed
|
🎨 优化程序集加载
|
2023-06-12 10:52:11 +08:00 |
|
anjoy8
|
6e182954c4
|
Merge branch 'master' into feature/cache
|
2023-06-10 12:04:20 +08:00 |
|
LemonNoCry
|
04d3cd4865
|
⬆️ 升级SqlSugar依赖 5.1.3.49 -> 5.1.4.83
优化Aop Sql日志记录
原有的UtilMethods.GetSqlString 有较大的性能影响,参数越多影响越大
使用最新的建议的 UtilMethods.GetNativeSql
参考 https://www.donet5.com/home/doc?masterId=1&typeId=1204
|
2023-06-10 11:59:11 +08:00 |
|
LemonNoCry
|
7013471466
|
🐛 优化一个已知的DynamicLambda解析错误
在双引号后又空格会解析错误
|
2023-06-10 11:53:35 +08:00 |
|
LemonNoCry
|
7629527ee9
|
✨🎨 缓存的完善优化
1.统一封装基于微软分布式缓存接口IDistributedCache使用
2.IDistributedCache只适合普通的缓存使用,如果要使用redis队列、订阅redis消息等,就要使用redis原生库
3.增加缓存管理接口[Systems/CacheManageController]
4.目前支持内存、redis缓存实现,理论可随意扩展甚至自定义实现
5.默认使用内存缓存,可在appsetting.json中配置Redis
切换到IDistributedCache好处如下
默认session使用IDistributedCache进行存储,如果你搭配使用IDistributedCache+外部缓存(如Redis),可实现应用程序重启session不丢失
更直观就是,调试的时候登录swagger后即使重启调试也无需在登陆
|
2023-06-01 17:54:54 +08:00 |
|
LemonNoCry
|
1c700fd90d
|
✨ 优化多次解析Token重复添加Claims
|
2023-05-26 15:20:26 +08:00 |
|
LemonNoCry
|
0cea9672b5
|
✨ 优化Swagger
1.swagger登录可以用用户账号登录,如果登录成功 token存在session中 之前默认admin感觉没什么用 当然也可以扩展User 加个字段是否开发者帐户等类似的
2.优化权限校验 优先读取Header->没有读取Session 中token解析用户
|
2023-05-24 11:19:36 +08:00 |
|
ansonzhang
|
a979d36461
|
Update NumberConverter.cs
|
2023-05-21 19:23:01 +08:00 |
|
ansonzhang
|
f0bbf06c47
|
Update SqlsugarAop.cs
|
2023-05-21 18:22:28 +08:00 |
|
LemonNoCry
|
e9f1ef5c01
|
✨ 增加数据库管理
|
2023-05-11 18:07:02 +08:00 |
|
anjoy8
|
8183be9d58
|
feat: change maindb sort
|
2023-05-08 16:55:41 +08:00 |
|
LemonNoCry
|
48a4adcd37
|
✨ 优化Http日志,记录RequestBody
|
2023-05-06 09:47:20 +08:00 |
|
anjoy8
|
8662047671
|
feat: new user login
|
2023-05-05 18:11:24 +08:00 |
|
LemonNoCry
|
50a936bdeb
|
✨ 增加IOption配置
原有AppSetting 手写字符串去读取,极容易出错,扩展性也低:如果要修改或者增加值 就要到处都写
保留AppSetting基础上增加IOption方便读取配置,可反序列对象
增加IConfigurableOptions接口
可参考SeqOptions配置
配置文件名为Option或Options结尾,匹配时会忽略Option或Options
SeqOptions->对应 AppSetting中Seq节点
可直接在控制器中注入使用 参考ValuesController
private readonly SeqOptions _seqOptions;
cto(IOptions<SeqOptions> seqOptions){
_seqOptions = seqOptions.Value;
}
|
2023-04-22 11:10:30 +08:00 |
|
LemonNoCry
|
7b8d60d9d0
|
✨ 优化Http消息模版 增加亿些附加属性
|
2023-04-14 11:20:10 +08:00 |
|
anjoy8
|
cf97167537
|
Update DBSeed.cs
|
2023-04-08 20:33:42 +08:00 |
|