自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

编程探索与数字构建 | Python与Java之旅

欢迎来到我的技术博客!在这里,我将分享我在Python和Java这两种强大编程语言的学习和实践旅程。作为一个对构建数字人和知识库充满热情的技术爱好者,我希望能通过这个平台与你一起探讨、学习并突破编程的界限。

  • 博客(32)
  • 收藏
  • 关注

原创 【白话树】之 二叉树

二叉树:是一种非线性数据结构,是“分而治之”思想的一种实现。和链表一样,二叉树最基本的单位也是节点。只是二叉树的节点,不仅包含值本身,也包含了左子节点和右子节点的引用。二叉树(binary tree)是n(n≥0)个节点构成的集合,它或为空树(n=0)​,或满足以下两个条件:1)有且仅有一个称为根的节点;2)除根节点以外,其余节点分为两个互不相交的子集T1和T2,分别称为T的左子树和右子树,且T1和T2本身都是二叉树。

2024-09-15 22:23:48 1063

原创 Java8函数式接口全攻略

【代码】Java8函数式接口全攻略。

2024-09-13 23:06:17 1254

原创 【白话树】之 树的基本知识、存储结构和二叉树转换

快速了解树

2024-09-13 17:00:00 869

原创 【白话Redis】缓存雪崩、穿透、击穿、失效和热点缓存重建

由缓存机器故障宕机,导致大量请求全部落到数据库,超出了数据库的处理能力极限,进而导致数据库压力增大、宕机的情况。大批量请求缓存和数据库中都不存在的数据,导致数据库压力变大,甚至宕机。某个热点key访问非常频繁,且请求时间比较集中,是高并发场景。当这个key失效的瞬间,大量的请求直接落到数据库,导致数据库压力骤增,甚至宕机。

2024-09-11 22:24:02 1156 1

原创 【白话Spring】三级缓存

容器只是个工具,怎么用才是我们需要了解的关键,什么时候给容器里存入Bean,把Bean存入哪个容器,什么时候清空容器,这就不得不了解一下Spring中Bean的生命周期了。设想一下没有三级缓存的循环依赖问题:ServiceA依赖ServiceB,ServiceB依赖ServiceA。每次获取到的都是新的代理对象,就破坏了Spring解决循环依赖问题的基础,即所有的对象都是单例的。解决循环依赖的问题有两级缓存就够了,为什么要用三级缓存呢?从上面的代码中可以看出,三级缓存就是3个全局的Map。

2024-09-11 22:23:29 4487 8

原创 【白话MQ】消息队列MQ的使用和选型

而使用MQ作为一个消息的缓冲区,系统A把所有对其他系统的同步通知消息都交给MQ,然后再由需要消息的其他B、C、E系统消费消息,可以有效的降低系统之间的耦合度。(为什么耗时差距这么大?使用MQ之后,无非是多了一个外部依赖,影响微乎其微,但是当MQ挂掉之后,整个系统都将奔溃,这是我们所不能承受的。系统A对数据的修改,实时同步更新到B、C、D系统中,且在同步过程中,系统A在当前线程中不能做任何其他的操作。在架构设计时,我们假定的情况就是MQ是可用的,交给MQ的消息都以符合我们心意的方式来为其他系统提供服务。

2024-09-10 12:31:59 1448

原创 【较真儿】事务特性及场景演化:

答:事务源自于数据库管理系统(DBMS),是执行过程里一个由一系列操作组成的一个不可分割的工作序列。

2024-09-10 12:30:50 465

原创 【分布式系统】之 分布式事务解决方案 Seata

分布式事务,分开来讲就是分布式和事务。分布式:是一种抽象规范,即分别部署在不同的服务器节点的模式不同功能的模块的分开部署相同功能的模块基于高性能高并发高可用的集群部署事务:是一组原子性的执行过程,该过程要么全部执行成功,要么全部执行失败,不存在中间状态。

2024-08-19 09:56:11 1139

原创 【Spring】BeanFactory和FactoryBean

BeanFactory:是Spring框架最核心的Bean的创建及管理容器FactoryBean:是一种特殊的Bean,可以实现一些复杂的Bean的创建。

2024-08-19 09:54:36 459

原创 【源码分析】之 ThreadPoolExecutor详解

使用小队列通常需要较大的池大小,这会使CPU更忙,但可能会遇到不可接受的调度开销,这也会降低吞吐量。例如,在网页服务器中。在这里,如果没有线程立即可用来运行任务,则尝试排队任务将失败,因此将构造一个新线程。如果工作线程或使用池的其他线程没有此权限,服务可能会降低:配置更改可能无法及时生效,关闭的池可能保持在可能终止但未完成的状态。,也能回收未引用的池,那么您必须通过设置适当的保持活动时间,使用零核心线程的下界和/或设置。如果线程池在程序中不再被引用,并且没有剩余的线程,那么线程池将被自动关闭。

2024-08-03 13:31:01 880

原创 【源码分析】之 线程池工具类 Executors详解

该类为Executor和Callable类定义了工厂和工具方法。通过对以上源码的分析,可以发现虽然Executors工具类提供了很多快速创建线程池的方法,但归根结底还是对ThreadPoolExecutor、ScheduledThreadPoolExecutor的封装。我们可以很容易的根据自己的项目情况去自定义,这样的创建的线程池才是最符合业务场景的。在Executors提供的快速创建线程池的方法中,若有贴合使用业务场景的,可以直接使用,这样可以提高开发效率,避免重复造轮子。

2024-08-03 11:55:43 1077

原创 HashMap 和 HashTable 的区别?

【代码】HashMap 和 HashTable 的区别?

2024-07-26 23:22:32 173

原创 Java 代理模式详解

Java 代理模式 看这一篇就够了

2024-07-17 23:27:01 1399

原创 从【时间复杂度】到【函数的渐进上界】

从时间复杂度更深入一点

2024-07-17 15:48:16 918

原创 【Hello 算法】算法是什么?

了解一下算法和数据结构

2024-07-16 22:37:49 831

原创 Java SPI 机制详解

文件夹下的 services 文件夹下的文件,将这个文件夹下面的所有文件先加载到内存中,然后根据这些文件的文件名和里面的文件内容找到相应接口的具体实现类,找到实现类后就可以通过反射去生成对应的对象,保存在一个 list 列表里面,所以可以通过迭代或者遍历的方式拿到对应的实例对象,生成不同的实现。所以会提出一些规范要求:文件名一定要是接口的全类名,然后里面的内容一定要是实现类的全类名,实现类可以有多个,直接换行就好了,多个实现类的时候,会一个一个的迭代加载。修改或者替换服务实现并不需要修改调用方。

2024-07-16 17:20:45 1509

原创 【扫盲】并查集2

在树中进行合并操作时,总是将秩(树的高度)较小的树连接到秩较大的树的根上,这样可以保证树的深度尽可能小,从而提高查询效率。同时,它也支持高度平衡的合并策略,即合并两个高度相同的子树时,将较低的子树连接到较高的子树上,并可能增加较高子树的高度。操作中通过递归查找时将路径上的每个节点直接连接到根节点,以减少查找时间。除了使用路径压缩这种优化措施,还可以使用。这个实现支持路径压缩,即在。

2024-07-15 22:27:14 186

原创 【扫盲】并查集

从LeeCode真题到并查集概念初体验

2024-07-15 22:05:18 394 1

原创 MySQL InnoDB【事务模型】之【事务隔离级别】 全攻略

快速了解MySQL InnoDB引擎 事务模型之事务隔离级别

2024-07-14 22:02:42 961 8

原创 MySQL InnoDB锁 全攻略

快速通关 MySQL InnoDB引擎提供的各种锁机制

2024-07-14 15:59:44 808

原创 瑞数反爬产品套路分析

通过瑞数产品的套路的了解,提高对反爬手段和JavaScript的理解

2024-07-14 11:03:06 3525

原创 【JS逆向】加密参数生成位置跟踪分析

常用的JS逆向操作方法

2024-07-14 10:48:21 730

原创 QAnything+Ollama搭建本地知识库

基于QAnything和Ollama搭建本地知识库

2024-07-13 11:58:08 2750 7

原创 ollama + maxkb 搭建本地知识库

概述:基于 LLM 大语言模型的知识库问答系统。

2024-07-13 11:13:50 677 1

原创 ollama + fastgpt 搭建免费本地知识库

基于 LLM 大语言模型的知识库问答系统。

2024-07-13 09:27:57 6697 5

原创 图示 JVM 可达性分析算法

以 GC Roots 为起始点进行搜索,可达的对象都是存活的,不可达的对象可被回收。

2024-07-13 08:50:32 220

原创 F12 调试常用 Hook 脚本

F12 调试常用 Hook 脚本。

2024-07-13 08:32:19 570

原创 F12打不开、打开后页面跳转、控制台持续刷新

以网站为例。

2024-07-12 22:43:02 3987 2

原创 JSL(加速乐)反爬跳过

JSL(加速乐)反爬跳过

2024-07-12 19:01:21 745

原创 MySQL InnoDB 共享锁和独占锁

如果事务T1持有行r上的排他(X)锁,那么某个不同事务T2对r上任何一种类型的锁的请求都不能立即被授予。相反,事务T2必须等待事务T1释放对行r的锁。T2对S锁的请求可以立即被授予。因此,T1和T2都对r持有S锁。T2对X锁的请求不能立即被授予。更多InnoDB锁机制,请移步。其中有两种类型的锁,共享 () 锁允许持有该锁的事务。) 锁允许持有该锁的事务。

2024-07-12 18:46:08 247

原创 MySQL insert的锁问题

MySQL insert的锁问题

2024-07-12 18:38:43 658

原创 Spring Cloud Hystrix原理分析涉及设计模式之命令模式小记

命令模式:23中设计模式之一,将来自客户端的请求封装成一个对象,从而让你可以使用不同的请求对客户端进行参数化。可以被用于实现 “行为请求者”与“行为实现者”的解耦,以便使两者可以适应变化。下面的示例是对命令模式的简单实现://接收者public class Receiver { public void action(){ //真正的业务逻辑 }}//抽象命令public i...

2018-09-07 15:09:07 1000 1

第19章 配置与变更管理.pdf

第19章 配置与变更管理

2024-11-06

第18章 项目绩效域.pdf

第18章 项目绩效域

2024-11-06

第13章 项目资源管理.pdf

第13章 项目资源管理

2024-11-06

第14章 项目沟通管理.pdf

第14章 项目沟通管理

2024-11-06

第9章 项目范围管理.pdf

第9章 项目范围管理

2024-11-06

第7章 项目立项管理.pdf

第7章 项目立项管理

2024-11-06

第2章 信息技术发展.pdf

第2章 信息技术发展

2024-11-06

第3章 信息系统治理.pdf

第3章 信息系统治理

2024-11-06

算法界的 Hello World,简洁但不简单

通俗易懂的算法入门资料 格式:PDF 支持语言:python、java、javascript、go、C、C++、C#、dart、kotlin、rust等十种 适合:在校同学、刚入职的职场菜鸟、想要夯实基础的职场老油子

2024-07-16

tabby-1.0.209-linux-x64.tar.gz

tabby-1.0.209-linux-x64.tar

2024-07-14

tabby-1.0.209-macos-x86_64.dmg

tabby-1.0.209-macos-x86_64

2024-07-14

tabby-1.0.209-setup-x64.exe

tabby-1.0.209-setup-x64

2024-07-14

亲测好用的Mac arm64版本的终端

亲测好用的Mac arm64版本的终端

2024-07-14

空空如也

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

TA关注的人

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