一文让你彻底掌握ThreadLocal

对共享变量加锁虽然能够保证线程的安全,但是却增加了开发人员对锁的使用技能,如果锁使用不当,则会导致死锁的问题。而ThreadLocal能够做到在创建变量后,每个线程对变量访问时访问的是线程自己的本地变量。

quarkus数据库篇之一:比官方demo更简单的基础操作

《quarkus数据库篇》系列的开篇,编码实战最基础的数据库增删改查,数据库用的是PostgreSQL,在官方demo基础上进一步精简,极速入门quarkus数据库操作

一种自平衡解决数据倾斜的分表方法

这篇主要描述了B端令牌系统应用数据分表解决业务数据量增大,且存在的数据倾斜问题,主要面向的场景是一对多数据倾斜问题

分库表数据倾斜的处理让我联想到了AKF模型

1 背景 最近在做需求的时候需要在一张表中增加一个字段。 这张表情况如下: 1、拆分了多个库多张表 2、库表拆分按表中商户编码字段hash之后取模进行拆分 由于库表拆分按照商户编码,有些大商家的单子数量远远要高于其他普通商家,这样就造成了严重的数据倾斜。 在增加字段的时候尝试多种办法,执行多次都添加

Asp-Net-Core开发笔记:API版本管理

## 前言 对于Web API应用程序而言,随着时间的推移以及需求的增加或改变,API必然会遇到升级的需求。事实上,Web API应用程序应该从创建时就考虑到API版本的问题。业务的调整、功能的增加、接口的移除与改名、接口参数变动、实体属性的添加、删除和更改等都会改变API的功能,从而带来版本的变更

PDCA循环——快速提升软件质量的必备工具

近年来,软件项目的规模及其复杂性正在以空前的速度增长,互联网用户市场庞大,互联网公司和相应的软件产品层出不穷。快速响应需求变化往往是互联网行业的常态,软件产品的快速开发迭代对于公司迅速占领市场、抢占商机有着举足轻重的意义。 伴随着行业的快速发展,原有的研发模式逐渐不能适应高速发展的市场大环境。因此,

Spring Boot通过企业邮箱发邮件被Gmail退回的问题解决方法

这两天给我们开发的Chrome插件:[Youtube中文配音](https://youtube-dubbing.com/)增加了账户注册和登录功能,其中有一步是邮箱验证,所以这边会在Spring Boot后台给用户的邮箱发个验证信息。如果发邮件,之前的文章教程里就有,这里就不说了,着重说说这两天发现

NetCore 开源项目

前言:工作几年了,面试的时候问一堆,实则都是增删改查。感觉做net搞上位机的比较多,然而我一直做的都是web方向。以前还会背八股文,现在工作之后只会增删改,CV了。不知道后面会不会转行,唉~ 这个既是教程也是学习,我想尝试自己去做一个开源的前后端项目,看看我现在到底能做个什么样。 这篇文章,算是个开

【Azure 事件中心】Azure Event Hub中的数据能不能存储大于7天呢?如果7天之后是不是会自动删除呢?

问题描述 Event Hub中有个retention的设置为7天,有没有办法增大这个Retention的时间? 如果没办法,是不是超过7天的数据就会被删除? 问题解答 因为Azure Event Hub(事件中心)是一个实时事件流引擎,其设计意图并不是用于代替数据库以及/或者用作无限期保存的事件流的

【Azure K8S | AKS】在不丢失文件/不影响POD运行的情况下增加PVC的大小

问题描述 在前两篇文章中,创建了Disk + PV + PVC + POD 方案后,并且进入POD中增加文件。 【Azure K8S | AKS】在AKS集群中创建 PVC(PersistentVolumeClaim)和 PV(PersistentVolume) 示例 【Azure K8S|AKS】

重建sln的项目层级

编写包含多个 `csproj` 的程序时,随着项目数量的持续增加,可能涉及一些文件夹的变动,手动添加项目或者变动会变得非常麻烦,这个时候,可以利用 `dotnet cli` 帮助我们完成。 如果从零开始,我们可以新建一个解决方案。 ```powershell dotnet new sln -n to

Mybatis-Plus最优化持久层开发

Mybatis-plus:最优化持久层开发 一:Mybatis-plus快速入门: 1.1:简介: Mybatis-plus(简称MP)是一个Mybatis的增强工具,在mybatis的基础上只做增强不做改变; 提高效率; 自动生成单表的CRUD功能; 提供了丰富的条件拼接方式; 全自动ORM类型持

Springboot整合Apollo

一、Apollo作用 随着程序功能的日益复杂,程序的配置日益增多:各种功能的开关、参数的配置、服务器的地址…… 对程序配置的期望值也越来越高:配置修改后实时生效,灰度发布,分环境、分集群管理配置,完善的权限、审核机制…… 在这样的大环境下,传统的通过配置文件、数据库等方式已经越来越无法满足开发人员对

kettle从入门到精通 第六十九课 ETL之kettle kettle cdc mysql,轻松实现实时增量同步

1、之前kettle cdc mysql的时候使用的方案是canal+kafka+kettle,今天我们一起学习下使用kettle的插件Debezium直接cdc mysql。 注:CDC (Change Data Capture) 是一种技术,用于捕获和同步数据库中的更改。 1)Debezium步

trick

trick: \(x\) 与各位数之和模 \(9\) 同余(CF10D) st表 和 线段树 可以存 gcd(CF10D) 注意函数增减性(CF1632D) dp 时若下标太大,可以调换下标和存储的数值(CF1974E) 贪心不成立时,可以用反悔贪心(CF1974G) 乘法总是比加法更优(CF187

用 Sentence Transformers v3 训练和微调嵌入模型

Sentence Transformers 是一个 Python 库,用于使用和训练各种应用的嵌入模型,例如检索增强生成 (RAG)、语义搜索、语义文本相似度、释义挖掘 (paraphrase mining) 等等。其 3.0 版本的更新是该工程自创建以来最大的一次,引入了一种新的训练方法。在这篇博

Clear Code for Minimal API

我在写MinimalAPI的时候,发现不能最清晰的看到每个API,原因就是:WebAPI中不断增长逻辑处理过程 于是我在想如何简化API至一行,在一点一点想办法中,发现了简化DotNET Minimal API的方式。特此记录下来这个思路给需要帮助的人。我的灵感来源于 C# 11 功能 - 接口中的

助听器降噪神经网络模型

具体的软硬件实现点击 http://mcu-ai.com/ MCU-AI技术网页_MCU-AI人工智能 本文介绍了一种用于实时语音增强的双信号变换 LSTM 网络 (DTLN),作为深度噪声抑制挑战 (DNS-Challenge) 的一部分。该方法将短时傅立叶变换 (STFT) 和学习分析和综合基础

rerank来提升RAG的准确度的策略

RAG(Retrieval-Augmented Generation)是一种结合检索和生成两种技术的模型,旨在通过检索大规模知识库来增强文本生成任务的准确性。 要通过reranking(重排序)来提升RAG的准确度,可以采取以下策略: 1. 使用更精细的评分函数 RAG通常会在检索阶段根据输入问题或

golang技术降本增效的手段

最近一年各大中小厂都在搞"优化",说到优化,目的还是"降本增效",降低成本,增加效益(效率)。 技术层面,也有一些降本增效的常规操作。 比如池化、io缓冲区技术 | | golang | C# | eg. | | | | | | | 池化技术 | snnc.Pool | ObjectPool | 前