- 博客(30)
- 资源 (4)
- 收藏
- 关注
原创 近期手上的一个基于Function Grap(类AWS的Lambda)小项目的改造引发的思考,注意FG不支持Daemon程序运行
化腐朽为神奇,代码优化只有起点没有终点。
2025-05-30 16:12:27
800
原创 关于数据库连接池,如果需要长连接的程序连接使用需求如何写出健壮的程序呢?
这类程序,CRUD程序猿比较陌生,因为他们从来不需要考虑,数据库主动断开连接或者网络设备断开连接导致Listen程序报错的情况,需要特别处理,比如主动重连,或者主动发送select 1 这样的语句保活。数据库连接池的目的是为了复用Connection,适合哪些短暂而且频繁使用Connection的程序,而对于长连接是天生相斥的,需要特别注意。如果非要使用,需要做特别配置,如上。3个配置都是让数据库连接池不要进行空闲时间和最大存活时间回收连接,一般情况下,会做这两个检测,超过空闲时间和存活时间都会被回收。
2025-04-28 09:40:30
306
原创 记录一下Springboot项目的Security,配置
requestMatchers("/v20241012/query_token/**","/v20241012/stat/**", "/v20241012/monitor/**", "/v20241012/merge").permitAll() // 允许公共端点。} 就像代码里展示的,需要对哪些接口做放开操作,特别说明的是,要先调用接口query_token,对身份进行验证。// 添加 JWT 过滤器。//TODO 这里应该需要查询自己的数据库表,而不是访问springboot的表。
2025-04-16 17:06:12
759
原创 软件开发中的实用小技巧(解决复杂问题的银弹)
这个时候,一般经理和普通员工的status都是一样的,比如9表示,这个时候就需要来一个扩容大法了,1. 把普通员工和一般经理的初审状态的数据用两套状态码表示,比如9表示员工的待初审,而一般经理选择19表示,一般员工的已提交状态用3表示,而一般经理的已提交状态用13表示,以此类推。还有一个办法就是增加一个字段,approval_level,本质也是扩容,普通员工设置成1,而经理设置成2,这样在高级经理筛选数据的时候,根据需要来,他想看什么级别都可以,以此满足需求。总结:扩容大法好,但是也会增加维护成本。
2025-04-16 09:57:44
1003
原创 代码虽然短,但是却可以帮助你理解什么是Embedding
传统的词嵌入方法(如Word2Vec、GloVe)生成的是静态词向量,即同一个词在所有上下文中都有相同的向量表示。这意味着即使是在不同的句子中,“transformers”的向量表示也不会变化,这可能导致一些不符合直觉的结果。总之,虽然根据给出的相似度分数,“i”看起来是与“transformers”最接近的词,但这很可能不是理想的语义匹配。从你提供的相似词列表来看,确实根据余弦相似度计算的结果,“i”与“transformers”的相似度分数是最高的(
2025-02-24 17:32:37
461
原创 QPS很高的情况下,如果请求或执行的路径中遇到了慢速的代码或者资源(比如RPC或者关系型数据库的查询),如何加速呢?
上面的代码是核心部分,就是配置线程池和队列,也是最复杂的机制和原理。注意,仅仅适合QPS高的情况,收益才大,否则就是把简单问题复杂化。这里用查询数据库的情况举例。
2025-02-14 16:09:04
374
原创 解密计算机模拟人脑(识别图片)背后的秘密
今天,让我们用简单易懂的方式来讲解CNN(卷积神经网络)如何一步步识别图片中的数字,并最终输出一个包含每个数字出现概率的结果。
2025-02-10 11:45:47
562
原创 浅显介绍图像识别的算法卷积神经网络(CNN)中的激活函数
深层网络可能会遇到梯度消失或爆炸的问题,这时选择像ReLU及其变体(如Leaky ReLU、Parametric ReLU)这样的激活函数就显得尤为重要,因为它们有助于保持正向传递路径上的梯度稳定。因此,选择合适的激活函数不仅需要理论知识,也需要实践经验,并且随着新的研究发现和技术的发展,这一领域也在不断进步。一些激活函数,如ReLU,可以帮助缓解梯度消失问题,从而支持更深网络的有效训练。选择合适的激活函数确实可以视为一项技术活,因为它涉及到对具体问题的理解以及对不同激活函数特性的掌握。
2025-02-10 11:39:36
626
原创 作为程序员,当面对业务需求变化的时候,我们除了增加if判断之外还能做什么?今天提供了新的思路,泛型遇到了函数式Function,能擦出来什么样的火花
当需要为方法增加一个处理的时候,你可以通过为这个方法增加一个参数的方式,比如int type,然后在方法里增加判断或者匹配,或者用依据开闭原则的策略模式(一般的做法是,不同的子类实现某个接口,然后放到枚举里,通过匹配执行对应的子类的方法),这里我提供了一种不同的思路,就是通过增加一个方法,注意,这里也是一种开闭原则(对新增开放对修改关闭)的具体实现。由此得出面对需求变化的时候,通过泛型和函数式编程可以做到很从容的面对,很优雅地编码实现需求变化。changeBscQuarterStatus和。
2025-02-06 17:26:11
347
1
原创 探讨编程技术,OOP和FP
2. 本人超过10年工作经验,精通Java,Golang, Python。3. 对复杂编程,架构设计,复杂度管理有一定的理解和实践经验,爱好阅读。1. 一起讨论各种编程技术。
2025-02-05 16:39:08
115
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人