自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(188)
  • 资源 (1)
  • 收藏
  • 关注

原创 AI-02a5a5.神经网络-与学习相关的技巧-权重初始值

在神经网络的学习中,权重的初始值特别重要。实际上,设定什么样的权重初始值,经常关系到神经网络的学习能否成功。

2025-05-14 15:57:31 352

原创 AI-02a5a6.神经网络-与学习相关的技巧-批量归一化

有什么优点呢?可以使学习快速进行(可以增大学习率)。不那么依赖初始值(对于初始值不用那么神经质)。抑制过拟合(降低Dropout等的必要性)向神经网络中插入对数据分布进行正规化的层,即Batch Normalization层。式(6.7),μB←1m∑i1mxiσB2←1m∑i1mxi−μB2xi←xi−μBσB2ϵμB​σB2​xi​​←m1​i1∑m​xi​←m1。

2025-05-14 15:55:09 725

原创 AI-02a5a4.神经网络-与学习相关的技巧-参数更新

以 手 写 数 字 识 别 为 例,比 较 前 面 介 绍 的 SGD、Momentum、AdaGrad、Adam这4种方法,并确认不同的方法在学习进展上有多大程度的差异。一个5层神经网络为对象,其中每层有100个神经元。激活函数使用的是ReLU。结果如下图所示,算法梯度计算方式学习率调整机制核心优势SGD当前梯度固定学习率简单直观,适合凸优化问题动量法当前梯度 + 历史梯度累积固定学习率加速收敛,缓解震荡RMSProp当前梯度基于历史梯度平方自适应调整。

2025-05-09 09:21:23 711

原创 AI-02a5a2.神经网络的学习

神经网络以某个指标为线索寻找最优权重参数。神经网络的学习中所用的指标称为损失函数(loss function)这个损失函数可以使用任意函数,但一般用均方误差和交叉熵误差等。损失函数是表示神经网络性能的“恶劣程度”的指标,即当前的神经网络对监督数据在多大程度上不拟合,在多大程度上不一致。之所以不能用识别精度作为指标,是因为这样一来绝大多数地方的导数都会变为0,导致参数无法更新。

2025-05-06 15:51:57 1141

原创 AI-02a5a1.神经网络概念和前向

所谓激活函数(Activation Function),就是在人工神经网络的神经元上运行的函数,负责将神经元的输入映射到输出端。激活函数对于人工神经网络模型去学习、理解非常复杂和非线性的函数来说具有十分重要的作用。它们将非线性特性引入到我们的网络中。如上图,在神经元中,输入(inputs )通过加权,求和后,还被作用在一个函数上,这个函数就是激活函数。如果使用线性激活函数,那么输入跟输出之间的关系为线性的,无论神经网络有多少层都是线性组合。使用非线性激活函数是为了增加神经网络模型的非线性因素。

2025-05-06 14:36:11 987

原创 AI-02a5a3.神经网络-误差反向传播法

如果某个函数由复合函数表示,则该复合函数的导数可以用构成复合函数的各个函数的导数的乘积表示。

2025-04-30 10:22:27 887

原创 Java-14.Java中如何保障线程安全的常用方法

cas需要四个值:旧数据、期望数据、新数据和地址,比较旧数据和期望的数据如果一样的话,就把旧数据改成新数据,当前线程不断自旋,一直到成功为止。它的核心思想是:共享变量在每个线程都有一个副本,每个线程操作的都是自己的副本,对另外的线程没有影响。特别注意,使用threadlocal时,使用完之后,要记得调用 remove 方法,不然可能会出现内存泄露问题。,我们优先使用影响范围较小、性能更好的一种,即代码块同步。每个对象内部都有一把锁,只有拿到那把锁的线程,才能进入代码块里,代码块执行完之后,会自动释放锁。

2024-10-26 09:44:57 309

原创 dubbo3-01.helloworld

Dubbo hello world

2024-04-22 16:28:12 435

原创 Java-12a.Spring 中通过 TaskDecorator 配置默认异步线程池

在Spring框架中,TaskDecorator 是一个接口,它可以用来自定义由 ThreadPoolTaskExecutor 或其他任务执行器管理的任务的装饰行为。这通常用于在执行任务之前和之后添加某些上下文相关的行为,比如设置线程上下文或者清理资源。例如,在执行异步操作时,你可能需要将主线程的一些上下文信息(比如用户身份验证令牌或请求上下文信息)传递给执行异步操作的线程。TaskDecorator 就可以在这种场景下发挥作用。

2024-01-29 16:03:59 880 1

原创 Java-12.Spring 中通过 ThreadPoolTaskExecutor 和 AsyncConfigurerSupport 配置默认异步线程池

虽然在 SpringBoot 2.7.x 中已经有关于异步线程池的默认配置,但如果还是要自定义的需求,仍然值得学习了解一下。例如:想要在多线程池中添加 traceId;使用来代替默认的。

2024-01-29 16:03:20 647

原创 Jvm-08a.类加载器

如果一个类加载器收到了类加载的请求,它首先不会自己去尝试加载这个类,而是把这个请求委派给父类加载器去完成,每一个层次的类加载器都是如此,因此所有的加载请求最终都应该传送到最顶层的启动类加载器中,只有当父加载器反馈自己无法完成这个加载请求(它的搜索范围中没有找到所需的类)时,子加载器才会尝试自己去完成加载。对于任意一个类,都必须由加载它的类加载器和这个类本身一起共同确立其在Java虚拟机中的唯一性,每一个类加载器,都拥有一个独立的类名称空间。[[双亲委派模型.png]]通俗的讲就是比较两个类是否"

2023-05-17 15:22:09 696 1

转载 java-06.Spring Boot 使用 MDC 进行日志追踪

MDC(Mapped Diagnostic Context)是一个可以追踪程序上下文日志的东西,是springboot项目自带的org.slf4j包下的类,无需引入额外依赖即可使用。

2023-03-14 10:34:10 1937 2

原创 elk-01d.logstash将mysql经纬度数据转为geo_point

目标:通过logstash同步,将mysql 中的经纬度字符串转为 es 中的geo_point类型这种

2022-12-14 16:16:14 641

原创 powerdesigner 使用excel 批量导入创建表

因为公司要从 oracle 迁移到 mysql,同时也没有关于数据库的文档,同时数据库表太多了,一个一个手动建模,太没有效率了,所以网上查了一下,powerdesigner 使用的 visual basic 语言,可以使用脚本批量导入创建。

2022-10-10 14:30:02 1626

原创 Oracle 查询表结构

Oracle 查询表结构。

2022-10-08 10:11:02 4867

原创 Netty如何解决粘包半包问题

何为粘包 / 半包?为什么会出现粘包 / 半包?粘包/半包的原因?本质原因?怎么解决粘包 / 半包?Netty 是如何支持的?

2022-08-26 16:18:34 1294

原创 Unsafe类的使用

Unsafe可用来直接访问系统内存资源并自主管理,在提升Java运行效率、增强Java语言底层操作能力方面起了很大的作用——可以认为,Unsafe类是Java中留下的后门,提供了一些低层次操作,如直接内存访问、线程调度等。...

2022-06-30 16:32:41 1012 1

原创 JDK 11统一日志管理

可使用-Xlog选项,启用统一日志管理。Xlog选项支持的参数如下:-Xlog:使用info级别启用JVM日志-Xlog:help:打印Xlog帮助文档-Xlog:disable:关闭所有日志记录并清除日志记录框架的所有配置,包括警告和错误的默认配置-Xlog[:option]:按照命令行上出现的顺序应用多个参数。同一输出的多个参数按其给定顺序覆盖。option的格式为:其中:what:指定level和tag的组合,格式: 。除非用 指定了通配符,否则只有匹配了指定tag的日志消息才会被匹配。outpu

2022-06-24 14:35:44 1574

原创 服务调用链路追踪

概述服务调用链追踪是干什么的?Sleuth 核心功能和体系结构?调用链路数据模型 - Trace,Span,Annotation链路追踪原理介绍Zipkin 简介:搭建Zipkin服务端、Sleuth 集成 ZipkinSleuth 集成 ELK 实现日志搜索链路追踪的基本功能分布式环境下链路追踪Timing 信息定位链路信息收集和展示SleuthSleuth 的功能Sleuth 的最核心功能就是提供链路追踪,在一个用户请求发起到结束的整个过程中,这个

2022-05-11 17:22:48 2887

原创 网关 Gateway

1 Spring Cloud Gateway 能做什么?路由寻址(主要功能)负载均衡限流鉴权2 Gateway VS ZuulGatewayZuul 1.xZuul 2.x靠谱性官方支持曾经靠谱过专业放鸽子性能Netty同步阻塞、性能慢NettyRPS> 3200020000 左右25000 左右Spring Cloud已整合已整合暂无整合计划长连接支持不支持支持编程体验略难简单易上手略难

2022-05-05 15:54:54 888

原创 MySQL事务的4种隔离级别

1 简介事务的4种隔离级别分别是读未提交(Read Uncommitted)、读已提交(Read Committed)、 可重复读(Repeatable Read)和串行化(Serializable)。首先,在了解这4种隔离级别前就必须先要了解其前提,也就是事务,本文简单介绍一下关于事务。之后,我们也要理解这4种隔离级别产生的原因和场景展现以及4种隔离级别是如何解决问题的。最后,再简单介绍一下这4种隔离级别的实现机制。2 什么是数据库事务?事务由一个有限的数据库操作序列组成,这些操作要么全部执行

2022-04-15 15:59:08 15237 1

原创 RocketMQ事务消息示例

title: “RocketMQ事务消息示例”date: 2022-04-07T17:14:16+08:00draft: true引言分布式事务是一个复杂的问题,本文就基于 RocketMQ 来实现最终一种性方案的分布式事务的示例与测试。概念整体的流程如上所示。RocketMQ 事务消息的原理是基于两阶段提交和事务状态回查。半消息:是指暂时不能被消费的消息,半消息实际上被放在主题名为 RMQ_SYS_TRANS_HALF_TOPIC下,当 producer 对半消息进行二次确认后,.

2022-04-08 16:53:27 3885

原创 自定义脚本启动搭建的RocketMQ伪集群

title: “自定义脚本启动搭建的RocketMQ伪集群”date: 2022-04-02T10:47:11+08:00draft: true引言工欲善其事,必先利其器。因为只有一台电脑,只能搭建伪集群来学习了,但是,本身又是个偷懒的人,启动伪集群 RocketMQ 的命令有点多,不想敲那么多的命令,顺便将搭建 RocketMQ 集群的部署方式记录一下。RocketMQ 的部署方式有3种:2m-noslave:多 Master 模式,无 Slave。[双主模式]优点:配置简单,性能最.

2022-04-02 16:43:29 759

原创 MySQL索引失效的原因记录总结【更新中】

title: “MySQL索引失效的原因记录总结”date: 2022-03-22T14:55:56+08:00draft: false0 引言好记性不如烂笔头,把常见的一些 MySQL 索引失效的问题记录下来,在工作中可以时时检查对比。主要分为两个部分,explain 介绍和各种索引失效场景的模拟。建表语句CREATE TABLE `people` ( `id` int unsigned NOT NULL AUTO_INCREMENT, `name` varchar(30) CH.

2022-03-22 17:41:11 806

原创 JVM参数选项

title: “JVM JDK8的JVM参数”date: 2022-03-16T17:08:55+08:00draft: true本文参数基于JDK 8整理收集器参数及默认值备注Serial-XX:+UseSerialGC虚拟机在Client模式下的默认值,开启后,使用 Serial + Serial Old 的组合ParNew-XX:+UseParNewGC开启后,使用ParNew + Serial Old的组合-XX:ParallelGCThre.

2022-03-16 17:21:17 1168

原创 JVM 垃圾收集器

title: “JVM 垃圾收集器”date: 2022-03-11T16:45:21+08:00draft: false文章目录引言术语垃圾收集器介绍Serial 收集器(新生代)ParNew收集器(新生代)Parallel Scavenge收集器(新生代)Serial Old 收集器(老年代)Parallel Old 收集器(老年代)CMS 收集器(老年代)G1 收集器G1 收集器 VS CMS收集器链接引言下面这张图是 Java 中比较主流的基于分代收集理论的垃圾收集器,以及它们能够作用.

2022-03-16 16:14:43 1152

原创 JVM 垃圾回收算法

title: “JVM 垃圾回收算法”date: 2022-03-01T17:19:01+08:00draft: true0 概述基础垃圾算法:标记-清除、标记-整理、复制综合垃圾回收算法:分代收集算法、增量算法1 标记-清除(Mark-Sweep)标记需要回收的对象清理掉要回收的对象缺点:垃圾回收之后会存在内存碎片2 标记-整理(Mark-Compact)标记需要回收的对象把所有的存活对象压缩的内存的一端清理掉边界外的所有空间这个算法可以避免.

2022-03-11 16:41:43 1005

原创 什么是MySQL的回表?

文章目录引言聚簇索引和非聚簇索引是什么?主键索引和非主键索引有什么区别?B-Tree 和 B+Tree 的简单理解如何避免回表?引言简单来说,回表就是 MySQL 要先查询到主键索引,然后再用主键索引定位到数据。下面,对一些问题进行分析与回答:什么是聚簇索引?什么是非聚簇索引?为什么回表要先查到主键索引?主键索引和非主键索引有什么区别?如何避免回表?聚簇索引和非聚簇索引是什么?MySQL 的索引有不同的角度的分类方式,例如:按数据结构分、按逻辑角度分、按物理存储分。其中,按物理存储分

2022-03-10 13:38:35 16305 3

原创 JVM 垃圾回收算法

0 概述基础垃圾算法:标记-清除、标记-整理、复制综合垃圾回收算法:分代收集算法、增量算法1 标记-清除(Mark-Sweep)标记需要回收的对象清理掉要回收的对象缺点:垃圾回收之后会存在内存碎片2 标记-整理(Mark-Compact)标记需要回收的对象把所有的存活对象压缩的内存的一端清理掉边界外的所有空间这个算法可以避免标记-清除算法会产生的内存碎片3 复制(Copy)把内存分为两块,每次只使用一块把当前使用的内存中的存活对象复制到未

2022-03-03 22:55:59 254

原创 JVM 垃圾回收

概述什么场景下该使用什么垃圾回收策略?垃圾回收发生在哪些区域?对象在什么时候能够被回收?什么场景下该使用什么垃圾回收策略?场景一:在对内存要求苛刻的场景:想办法提高对象的回收效率,多回收掉一些对象,腾出更多内存;场景二:在CPU 使用率高的场景下:降低高并发垃圾回收的频率,让 CPU 更多地去执行你的业务而不是垃圾回收;TODO 垃圾回收策略垃圾回收发生在哪些区域?JVM 内存结构如下图所示:虚拟机栈、本地方法栈、程序计数器是线程隔离的,这 3 个区域与线程的生命

2022-03-01 16:55:56 317

原创 SQL语句在MySQL中的执行流程

title: “SQL语句在MySQL中的执行流程”date: 2022-02-25T15:28:58+08:00draft: false文章目录1 基本架构概述2 组件介绍2.1 连接器2.2 查询缓存2.3 分析器2.4 优化器2.5 执行器1 基本架构概述MySQL 分为两层,Server 层和存储引擎层:Server层:主要包括连接器、查询缓存、分析器、优化器和执行器等,还有一些跨存储引擎的功能也在这里,如:存储过程、视图、函数和通用日志模块binglog等。.

2022-02-25 16:40:16 873

原创 JVM 编译器优化

文章目录1 编译器优化1.1 字节码是如何运行的?1.2 Hotspot 的即时编译器 C11.3 Htospot 的即时编译器 C21.4 分层编译1.5 分层编译- JVM参数配置示例1.6 如何找到热点代码?思路?1.7 Hotspot 内置的两类计数器1.8 方法调用计数器流程1.9 回边计数器流程1.10 方法内联1.10.1 什么是方法内联?示例?1.10.2 发生方法内联的条件1.10.3 使用方法内联的注意点:1.10.4 方法内联可能带来的问题1.10.5 内联相关JVM参数1.10.6

2022-02-15 16:34:59 1117

原创 JVM 分代收集理论

title: “JVM 分代收集理论”date: 2022-01-20T11:58:09+08:00draft: false分代收集理论当前大多数的虚拟机都遵循了“分代收集”的理论进行设计,分代收集名为理论,实质是一套符合大多数程序运行实际情况的经验法则,它建立在两个分代假说之上:1)弱分代假说:绝大多数对象都是朝生夕灭的。2)强分代假说:熬过越多次垃圾收集过程的对象就越难以消亡。这两个假说共同奠定了多款常用垃圾收集器的设计原则:收集器应该将Java堆划分出不同的区域,然后将回收对象依.

2022-01-20 15:59:55 451

原创 分布式限流

title: “分布式限流”date: 2021-12-14T10:53:59+08:00draft: falsetoc: true分布式限流介绍限流的目的是通过对并发访问/请求进行限速或者在一个时间窗口内的请求进行限速来保护系统,一旦请求到达限制速率则可以拒绝服务、排队或等待、降级。主要是通过压测时找出每个系统的处理峰值,然后通过处理设定峰值阈值来防止系统过载时,通过拒绝处理过载的请求来保障系统可用性。分布式限流的几种维度时间: 限流基于某段时间范围或者某个时间点,也就是我们常说的“.

2021-12-28 17:05:55 405

原创 如何保证接口幂等性

title: 接口幂等性date: 2021-12-06 14:22:46tags:什么是幂等性?幂等性:f(f(x)) = f(x)幂等元素运行多次,还等于它原来的运算结果在系统中,一个接口运行多次,与运行一次的效果是一致的什么情况下需要把接口设计为幂等性?重复提交、接口重试、前段操作抖动等业务场景:用户多次点击提交订单,后台应只生成一个订单业务场景:支付时,由于网络问题重发,应该只扣一次钱并不是所有的接口都要求幂等性,要根据业务而定保证幂等性的策略有.

2021-12-06 15:38:05 779

原创 Spring Cloud Ribbon 的负载均衡

负载均衡介绍将请求或者说流量,以期望的规则分摊到多个操作单元上进行执行。通过它可以实现横向扩展(scale out),将冗余的作用发挥为高可用。另外,还可以物尽其用,提升资源使用率。概念客户端负载均衡基于客户端做负载均衡,有一个前提是需要在客户端本地维护一个服务的机器列表,同时在本地指定一个LB策略,然后输出一个服务。服务列表并不是一成不变的,机器列表需要通过注册中心动态更新机器列表。服务端负载均衡大型应用通常是客户端+服务端负载均衡搭配使用技术选型红色框表示客户端模式,灰色框

2021-09-28 11:28:04 384

原创 Mycat 分片规则

title: Mycat 分片规则date: 2021-09-27 15:05:21tags:mycat在数据切分处理中,特别是水平切分中,中间件最终要的两个处理过程就是数据的切分、数据的聚合。选择合适的切分规则,至关重要,因为它决定了后续数据聚合的难易程度,甚至可以避免跨库的数据聚合处理。1. 分片枚举通过在配置文件中配置可能的枚举 id,自己配置分片。该分片规则适合于特定的场景,比如有些业务需要安装省份或区县来做保存,而全国省份区县是固定的,这类业务可以采用本规则。配置如下:.

2021-09-27 16:44:23 341

原创 MySQL事务相关

title: MySQL事务相关date: 2021-09-14 14:34:47tags:mysql1. 概述本文重新梳理一些关于 MySQL 事务相关的概念,主要包括:事务隔离引发的问题和事务隔离的级别。2 什么是数据库事务?我觉得首先在讨论事务隔离之前,首先复习一下事务的基本概念。数据库事务( transaction)是访问并可能操作各种数据项的一个数据库操作序列,这些操作要么全部执行,要么全部不执行,是一个不可分割的工作单位。事务由事务开始与事务结束之间执行的全部数据库操作.

2021-09-14 15:59:28 168

原创 内置故障排查工具-jinfo

title: 内置故障排查工具-jinfodate: 2021-08-10 11:20:40tags:JVMJava监控工具jinfo作用jinfo全称Java Configuration Info,主要用来查看与调整JVM参数。TIPS此命令是实验性的,不受支持,对于JDK 9及更高版本,部分功能可使用 jhsdb jinfo 代替,也可用jcmd代替。部分JDK版本的jinfo命令对Windows支持比较有限,参数较少。本文为了更加接近生产环境,都是基于类Unix操作系.

2021-08-10 11:23:32 297

原创 编译器优化

上一篇文章文章目录1.3 编译器优化1.3.1 字节码是如何运行的?1.3.2 Hotspot 的即时编译器 C11.3.3 Htospot 的即时编译器 C21.3.4 分层编译1.3.5 分层编译- JVM参数配置示例1.3.6 如何找到热点代码?思路?1.3.7 Hotspot 内置的两类计数器1.3.8 方法调用计数器流程1.3.9 回边计数器流程1.3 编译器优化1.3.1 字节码是如何运行的?解释执行:由解释器一行一行翻译执行优势在于没有编译的等待时间性能相对差一些编译

2021-08-09 23:53:11 312

Intellij IDEA和GitHub版本控制使用说明

通过Intellij IDEA图形化的使用Git工具; 关联Intellij IDEA和Github账号; 上传项目至Github; 解决代码冲突; 分支创建,合并,删除

2018-12-20

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除