- 博客(75)
- 资源 (5)
- 收藏
- 关注
原创 SpringBoot starter机制
在spring boot之前,想要在spring中集成redis,需要做的事情包括:(1)引入jar包:包括redis的jar包,redis依赖的jar包,相应的版本,与spring版本是否兼容等(2)在配置文件中配置连接地址、端口号等(3)以Jedis为例,增加增加JedisConnectionFactory、RedisTemplate 的bean初始化代码(4)使用RedisTemplate可以看到,集成过程比较复杂,而这些过程跟业务开发没有任何关系。
2024-10-30 17:04:01
347
1
原创 Spring 事务支持
ACDI 是一个缩写,通常用于描述数据库事务的四个基本特性,即原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability)。(1). 原子性(Atomicity)定义:原子性是指事务是一个不可分割的最小工作单元,事务中的所有操作要么全部成功,要么全部失败回滚。(2). 一致性(Consistency)定义:一致性是指事务必须使数据库从一个一致性状态变换到另一个一致性状态,即事务执行前后,数据库的完整性约束没有被破坏。
2024-10-17 17:33:43
925
原创 spring如何解决bean循环依赖的问题
Spring 框架在解决单例 Bean 的循环依赖问题时,使用了三级缓存机制。一级缓存(singletonObjects)二级缓存(earlySingletonObjects)三级缓存(singletonFactories)每级缓存都有其特定的作用,下面详细解释这三级缓存的作用:1.一级缓存作用:存储完全初始化好的 Bean 实例。特点:当一个 Bean 完全初始化并准备好使用时,会被放入 singletonObjects 缓存中。
2024-10-16 18:12:18
494
原创 Spring-aop介绍
从上述分析来看,JDK proxy的方式并没有明显的优点,那么为什么spring 会选择JDK proxy作为默认aop实现呢?Cglib 通过字节码技术为现有类生成子类,并在子类中增强逻辑,从而实现AOP功能。采用java反射机制实现。对于没有实现接口的对象,使用。生成一个被代理对象的子类来作为代理。CGLIB 实现 AOP 的基本原理。对于有接口的bean,采用。CGLIB 的核心组件。
2024-10-15 18:42:08
582
原创 待办已办如何分表?
待办中心是通用模块,随着待办已办数据,越来越多,查询待办已办的效率急剧下降。当数据量达到千万级别的时,查询已办耗时达到10s以上,并发情况下,数据库链接得不到释放,造成新请求无法获取链接。为了解决该问题,需要进行分表,本文比较分表的思路。
2024-04-23 19:55:36
399
1
原创 浅聊配置化-要不要实现动态表单
大部分人,看到动态表单,肯定会认为:所有页面皆可配置,包括页面布局、页面元素、校验等等;只要做了配置化,以后页面变化就没有工作量。实际上并不是,工作量并不会凭空消失,只是转化了形态而已。而配置化,只是把需要人工投入的工作量,转化成机器自动投入的工作量而已。动态表单,按照动态配置的范围不同,可以分成不同的等级。等级描述1显示的文字、元素排序、元素类型配置2校验配置3动态增减元素4元素关联5复合元素。
2024-01-01 09:42:12
534
原创 吴恩达机器学习——第2、5章 线性回归
线性回归概述名词解释高斯分布基本原理适用场景示例参考概述线性回归问题,是用来解决回归问题的最简单的算法。线性回归假设特征和预测值之间是线性的关系,每个特征对于预测结果的重要程度可以不同。如果特征只有一个,则称之为“一元线性分析”;如果特征有多个,则称之为“多元线性分析”。名词解释高斯分布高斯分布,也称之为正态分布。满足集中性、对称性、均匀变动性等特点。集中性:正态曲线的高峰位于正...
2019-10-23 10:11:30
823
原创 吴恩达机器学习——第19章 照片OCR
第19章 照片OCR1、简介2、照片识别2.1 步骤2.2 滑动窗口分类器2.3 OCR检测2.3.1 找到图片中的文字区域2.3.2 从文字区域中找出字符2.3.3 使用分类器,把字符组合成文字3、获取大量数据4、天花板分析1、简介OCR全称是照片光学字符识别,目的是从图片中识别出文字。文本介绍从图片中解析文字的步骤及原理。通过OCR过程的介绍,让大家认识到一个复杂的机器学习问题是如何实现...
2019-10-22 21:24:11
314
原创 吴恩达机器学习——第18章 大规模机器学习
大规模机器学习格言准则随机梯度下降法batch梯度下降法的问题随机梯度下降法的原理batch vs 随机随机梯度下降的收敛min-batch 梯度下降法在线学习MapReduce格言决定机器学习效果好坏的不是算法,而是数据。准则大道至简首先采用使用少量样本训练算法,如果不能达到效果的情况下,再考虑是否可以通过增加样本的数量,来提升算法:高方差:说明拟合度过高,可以通过增加训练样本的方...
2019-10-20 13:06:52
212
原创 吴恩达机器学习——第17章 推荐系统
推荐系统1、概述2、基于内容的推荐算法2.1 电影推荐案例2.2 符号说明2.3 基本原理2.4 $\theta$的计算3、协同过滤3.1 前提3.2 原理3.3 计算步骤3.4 同时计算$\theta、 X$4、矢量化实现5、均值归一化1、概述推荐系统是现实生活中应用最广泛的积极学习问题,通过对历史数据的分析,把用户感兴趣的商品、服务推荐给用户。2、基于内容的推荐算法基于内容的推荐算法,...
2019-10-15 22:07:47
551
原创 吴恩达机器学习——第16章 异常检测
异常检测1、定义2、基本原理2.1 高斯分布2.1.1 参数对图形的影响2.1.2 参数的计算2.2 算法2.3 计算过程2.4 评估方式3、异常检测VS监督学习4、设计特征5 多元高斯分布1、定义判断一个样本是否属于异常值。此处的异常值指的是不同于大多数样本的值。比如一个制造发动机引擎的公司,有很多很多引擎样本,这些样本都是类似的,如果发现某个样本离这些样本很远,则这个样本是异常样本的概...
2019-10-12 13:30:28
425
原创 吴恩达机器学习——第15章 降维
降维1、定义2、目的3、PCA降维3.1 计算过程3.2 主成分数量的选择3.2.1 选择方法13.2.2 选择方法23.3 压缩重现3.4 建议1、定义数据是由一个个特征组成的,假如数有n个特征,则称数据是n维的。降维就是在保证数据特征趋势不变的前提下,减少特征的个数。减少特征的依据是把多个相似、相关特征合并为1个特征。2、目的降维的目的分为两种:压缩数据:特征数量变少了,数据量...
2019-10-09 11:03:11
261
原创 有什么样的将军就有什么样的兵
个人浅见,不喜勿喷。都说有什么样的将军就有什么样的兵,团队中同样如此,有什么样的领导,就有什么样的下属。下面看两个案例。怼天怼地怼空气的teamleader整天不是跟安全干仗,就是跟pm口水,除了自己team之外的人,都是业余的、不务正业的、不负责的,所有事情大包大揽,谁干都不放心。下属跟leader一模一样,每次跟pm开会,不让pm蜕掉三层皮都是行善。可想而知,跟这样的team合作,...
2019-09-29 18:13:47
1805
1
原创 吴恩达机器学习——第12章 机器学习系统设计
机器学习系统设计1、特征向量构建2、误差分析思想2.1 手工验证2.2 数值评估2.3 不对称分类的误差分析2.3.1 偏斜类问题2.3.2 查准率 召回率3、数据集1、特征向量构建给出一个机器学习问题,我们如何从样本中找出特征向量呢,下面以垃圾邮件的例子来进行说明。我们把每个邮件中的每个单词都作为矩阵的一行,这样就能构建所有出现单词的矩阵向量:X=[01001110...]X=\left...
2019-09-17 21:45:26
283
原创 吴恩达机器学习——第11章 应用机器学习的建议
机器学习的优化方式1、背景2、交叉验证3、偏差、方差4、多项式次数选择4.1 选择过程4.2 变化曲线5、正则化参数$\lambda$的选择6、学习曲线7、总结1、背景在机器学习过程中,可能出现预测结果偏差很大的情况,遇到这种情况该如何处理呢?可以选择的方式很多,下面就是常见的方式:获取更多样本。很多情况下,会意味着耗费更多的时间。选择较少的特征。选择较多的特征。增加多项式特征。...
2019-09-12 11:17:52
272
原创 吴恩达机器学习——第10章 神经网络参数的反向传播算法
神经网络深入学习1、代价函数2、反向传播算法2.1 定义2.2 原理2.3 模型3、梯度校验4、随机初始化5、处理流程6、资料1、代价函数神经网络的代价函数类似于逻辑回归的代价函数:J(θ)=−1m[∑i=1m∑k=1kyk(i)log(hθ(x(i)))k+(1−yk(i))log(1−(hθ(x(i)))k)]+λ2m∑l=1L−1∑i=1sl∑j=1sl+1(θji(l))2J(θ)=...
2019-09-06 10:41:06
447
原创 吴恩达机器学习——第9章 神经网络学习
神经网络1、概述1.1 目的2、来源3、模型3.1 向量化表示3.2 前向传播1、概述1.1 目的神经网络是用来解决海量特性下,一般机器学习方法无法胜任的问题。假如某批数据有100个特征,为了很好的适应训练集,评估函数可能需要采用二次项、三次项、n此项,如下所示:$hθ(X)=x12+x1∗x2+x1∗x3+......+x1∗xn+x22+x2∗x3+x2∗x4+x2∗x5+....h...
2019-09-04 21:43:58
237
原创 吴恩达机器学习——第8章 正则化
正则化1、目的1.1 过拟合1.2 正则化2、原理3、应用到线性回归3.1 梯度下降3.2 正规方程4、应用到逻辑回归1、目的1.1 过拟合过拟合:指的是模型对训练集数据过度匹配,而对于新数据不能正确预测的情况。1.2 正则化正则化是用来解决模型过拟合问题的一种思路。基本思路是在保留所有特征的基础上,减小参数的大小(参数指的是θθθ)。这样每个特征对于预测结果的权重都会减少。减少了就怎...
2019-09-02 19:57:20
956
原创 吴恩达老师机器学习笔记
概述本文是对吴恩达机器学习课程的总结。吴恩达机器学习课程术语介绍监督学习 VS 无监督学习机器学习从学习方式上来看,分成两类:监督学习、无监督学习。监督学习:训练集中包含了正确的答案,即我们告诉计算机正确的答案。计算机通过对特征数据及结果的学习,找到特征和正确答案的对应关系。无监督学习:训练集没有标签,事先不知道其属于哪个分类,通过无监督学习分成不同的簇,所以也叫做聚类算法。回...
2019-08-29 16:10:43
313
原创 吴恩达机器学习——第7章 逻辑回归
逻辑回归概述名词解释伯努利分布基本原理适用场景示例参考概述一看到这个驴唇不对马嘴的名字,就忍不住笑,明明是个分类算法,却非要命名为逻辑回归。逻辑回归是用来解决二分类问题的机器学习方法,用来评估某种事物的可能性。名词解释伯努利分布这个名词非常好记:“不努力”。伯努利分布又称“两点分布”或“0-1分布”,来源于伯努利实验。在做实验的时候,只有两种结果:成功、失败。假设成功的概率为p,则失...
2019-08-29 15:46:53
738
原创 吴恩达机器学习——第6章 Octave/Matlab 教程
octave语法介绍1 概述2 语法介绍矩阵操作移动数据计算数据绘图控制语句1 概述octave是学习机器学习的非常方便的框架,下面对octave的语法做一个系统的介绍。mac下安装过程比较简单:brew install octave2 语法介绍输入octave命令,进入octave环境。矩阵操作// 定义3*2矩阵A=[1 2;3 4; 5 6;]// 定义值都是1的矩阵on...
2019-08-25 23:15:21
373
原创 吴恩达机器学习——第3章 线性代数回顾
机器学习之线性代数知识普及概述矩阵定义向量加法乘法矩阵*实数矩阵*矩阵应用特性逆运算转置概述本文介绍在机器学习过程中最基础的线性代数知识。矩阵定义A=[123456789]A = \left[\begin{matrix} 1 & 2 & 3 \\ 4 & 5 & 6 \\ 7 & 8 & 9 ...
2019-08-21 11:35:19
267
原创 redis lua脚本开发采坑记
背景系统中有批量读写redis的需求,为了提升效率,采用lua脚本的形式进行批量调用。其中redis是集群部署的。问题改为lua脚本后,本机测试没有问题,上线后大概率出现数据不能正常写入redis的问题。刚开始以为是redis版本不同造成的,看了一下版本,本机的是redis4.0.9,线上的是redis2.8.13-1,于是翻阅了大量的文档去查看两个版本对lua脚本的支持方面有什么不同。...
2019-07-11 14:39:10
1515
原创 吴恩达机器学习——第14章 无监督学习
KMeans算法概述名词解释基本原理优点缺点适用场景示例二分类KMeans算法参考概述KMeans算法是一个聚类算法,以样本间的距离作为评估的标准,把相近的样本划分到同一个集合中。名词解释聚类聚类是把类似的样本分成一个个的集合的过程。分类分类是把样本归属到某个类别。簇簇是相似样本组成的集合。质❤️簇的中心。基本原理KMeans算法的计算过程:1、随机找到K个点作为质...
2019-06-27 11:46:37
424
原创 hystrix简介
hystrix简介1、概述1.1 名词解释熔断 VS 降级2、原理2.1 资源隔离2.2 限流机制2.3 熔断机制2.4 降级机制2.5 缓存支持3、使用4、参考1、概述hystrix的功能如下所示:资源隔离(线程池隔离和信号量隔离)机制:限制调用分布式服务的资源使用,某一个调用的服务出现问题不会影响其它服务调用。限流机制:限流机制主要是提前对各个类型的请求设置最高的QPS阈值,若高于设...
2019-05-07 15:35:27
4113
原创 热点账户出款问题
一、背景本文讨论热点账户出款问题。二、问题热点账户出款问题,主要集中在每次扣款请求都需要锁定热点账户,重新计算余额,造成性能低下。问题的原因是:在大并发情况下,同时会有大量的扣款请求从热点账户进行扣款。扣款的流程是:1、判断热点账户的余额是否充足。2、余额不充足,直接返回失败。3、余额充足,则重新计算余额。4、更新热点账户的余额。这样扣款的过程,就成了一个串行的过程,造成效率比较...
2019-04-15 19:36:23
1052
原创 spring配置文件加密处理
spring配置文件加密处理概述基本原理参考概述配置文件中如果包含敏感的数据,例如数据库密码,会留下安全隐患,正确的做法是对配置文件中的敏感数据进行加密,使用的时候再进行解密。本文演示如何读取spring配置文件中的加密数据。基本原理jasypt-spring-boot框架可以实现在读取spring配置文件时,进行解密的功能。引入jasypt-spring-boot包:<d...
2019-04-10 20:01:32
1071
dubbo安装包3(仅包含tomcat、zookeeper)
2015-05-13
dubbo安装包2
2015-05-13
dubbo简单环境安装包1
2015-05-13
eclipse上如何进行热部署
2014-05-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人