自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(60)
  • 收藏
  • 关注

原创 递归爬取网页测试

当前需要测试ezdata的递归爬取功能,爬取到第几层。我们正在做基于大模型的数据分析平台。

2025-02-19 15:50:44 196

原创 ODD-PlatForm项目调研

搭建RAG后端应用 通过resuful API实现RAG系统与平台通信,支持查询和结果展示 使用AWS的Bedrock作为大语言模型的支持提供者,用于生成自然语言的回答。ODD是一款面向数据团队的开源数据发现与可观测性工具,它有助于通过现代友好的用户环境高效地实现数据民主化,助力协作,并减少数据发现所耗费的时间。数据血缘图展示数据从来源到最终用途的流转过程,每个节点代表一个处理步骤或数据实体。用户可以自定义报警类型(数据质量测试失败,定时任务失败,版本不兼容)和报警时间。集成数据质量工具,确保数据稳定。

2025-01-10 20:57:47 212

原创 计算机基础知识复习1.5

对象创建时,一般在新生代申请内存,当经历一次GC之后如果还存活,那么对象年龄+1 当年龄超过一定值后,如果对象还存活,那么该对象进入老年代。复制算法:为了解决碎片空间的问题,出现了复制算法 将内存分成两块,每次申请内存时都使用其中的一块,当内存不够时,将这一块内存中所有存活的复制到另一块上。标记-清除算法:标记-清除分为标记 和清除 两个阶段,首先通过可达性分析,标记出所有需要回收的对象,然后统一回收所有被标记的对象。binlog是追加写,写满了一个文件,就创建一个新的文件继续写,保存的是全量的日志。

2025-01-07 19:17:58 598

原创 计算机基础知识复习1.4

服务端收到客户端发起的SYN请求后,内核会把该连接存储到半连接队列,并向客户端响应SYN+ACK,接着客户端返回ACK,服务端收到第三次握手的ACK后,内核会把连接从半连接队列移除,然后创建新的完全的连接,并将其添加到accept队列,等待进程调用accept函数时把连接取出来。发生中断:当外部设备或软件程序需要处理器的注意或响应时,会发出中断信号,处理器在接收到中断信号后,会停止当前执行的指令,保存当前执行现场,并跳转到中断处理程序执行。包装类提供了许多方法,例如基本类型转换,比较,操作。

2025-01-05 17:03:51 800

原创 计算机基础知识1.1

AOP:是面向切面编程,能够将那些与业务无关,却为业务模块所共同调用的逻辑封装起来,以减少系统的重复代码,降低模块间的耦合度,Spring AOP就是基于动态代理的,如果要代理的对象,实现例如某个接口,那么spring aop会使用JDK Proxy,去创建代理对象,而对于没有实现接口的对象,就使用Cglib生成一个被代理对象的子类来作为代理。如果当前节点的权重等于要查找的权重时,并且当前节点的SDS类型数据小于要查找的数据时,跳表就会访问该层上的下一个节点。

2025-01-04 19:09:34 642

原创 计算机基础知识复习1.1

CachedThreadPool: 可根据实际情况调整线程数量的线程池,线程池的线程数量不确定,但若有空闲线程可以复用,则会优先使用可复用的线程,若所有线程均在工作,又有新的任务提交,则会创建新的线程处理任务,所有线程在当前任务执行完毕后,将返回线程池进行复用。验证:确保class文件的字节流包含的信息,符合当前虚拟机的要求,保证这个被加载的class类的正确性,不会危害到虚拟机的安全,验证阶段大致会完成以下四个阶段的检验动作,文件格式校验,元数据验证,字节码验证,符号引用验证。

2025-01-01 19:51:15 320

原创 计算机基础知识12.30

CachedThreadPool:可根据实际情况调整线程数量的线程池,线程池的线程数量不确定,但若有空闲线程可以复用,则会优先使用可复用的线程,若没有线程均在工作,又有新的任务提交,则会创建新的线程处理任务。所有线程在当前任务执行完毕后,将返回线程池进行复用。FixedThreadPool:固定线程数量的线程池,该线程池中的线程数量始终不变,当有一个新的任务提交时,线程池中若有空闲线程,则立即执行,若没有,则新的任务会被暂存在一个任务队列中,待有线程空闲时,便处理在任务队列中的任务。

2025-01-01 11:29:02 399

原创 计算机基础知识复习12.29

canal模拟mysql主从复制的交互协议,把自己伪装成一个mysql的从节点,向mysql主节点发送dump请求,mysql收到请求后,就会开始推送binlog给canal,canal解析binlog字节流之后,转换为读取的结构化数据,供下游程序订阅使用。管道就是内核里面的一串缓存,从管道里的一段写入的数据,实际上是缓存在内核中的,另一端读取,从内核中读取这段数据,管道传输的数据是无格式的流且大小受限。对于读数据,我会选旁路缓存策略,如果cache不命中,会从db加载数据到cache。

2024-12-30 17:18:16 761

原创 计算机基础知识复习12.26

当我们使用自增主键时,每次插入的新数据就会按顺序添加到当前索引节点的位置,不需要移动已有的数据,当页面写满,就会自动开辟一个新页面,因此每次插入一条新纪录,都是追加操作,不需要重新移动数据。2.每个进程都有独立的代码和数据空间,程序之间的切换会有较大的开销,线程可以看作轻量级的线程,同一类线程共享代码和数据空间,每个线程都有自己独立的运行栈和程序计数器,线程之间切换的开销较小。随着时间流逝,伊甸园的内存不足,将伊甸园以及之前幸存区中的存活对象,采用复制算法,复制到新的幸村区,其中较老对象晋升至老年代。

2024-12-29 12:20:55 313

原创 计算机基础复习12.25

canal模拟mysql主从复制的交互协议,把自己伪装成一个mysql的从节点,向mysql主节点发送dump请求,mysql收到请求后,就会开始推送binlog给canal,canal解析binlog字节流之后,转换为便于读取的结构化数据,供下游程序订阅使用。继承Thread类:用户自定义继承java.lang.Thread类,重写其run方法,run方法中定义了线程执行的具体任务,创建该类的实例后,通过start()方法启动线程。

2024-12-25 20:16:49 754

原创 计算机基础知识复习12.24

每当一个被调用,一个栈帧就会在栈中创建,用于存储该方法的信息,当方法执行完毕后,栈帧也会被移除,堆用于存储对象的实例,当你使用new关键字创建一个对象时,对象的实例就会在堆上分配空间。浅拷贝:只复制对象本身和其内部的值类型字段,但不会复制对象内部的引用类型字段,浅拷贝只是创建一个新的对象,然后将源对象的字段值复制到新对象中,但如果源对象内部有引用类型字段,只是将引用复制到新对象中,两个对象指向同一个引用对象。存储空间:栈的空间相对较小,且固定,由操作系统管理,当栈溢出时,通常是因为递归过深或局部变量过大。

2024-12-24 21:37:57 952

原创 计算机基础复习12.23

需要显示调用remove方法,每个线程维护一个名为ThreadLocalMap的map,当你使用ThreadLocal存储值时,实际上是将值存储在当前线程的ThreaLocalMap中,ThreadLocal实例本身作为key, 而你要存储的值作为value,key是弱引用,垃圾回收器会在下次GC时回收该实例,导致key变为null,value是强引用,value仍存在于ThreadLocalMap中,不会被回收。可重复读:指的一个事务执行过程中看到的数据,一直跟这个事务启动看到的数据是一致的。

2024-12-23 22:41:58 562

原创 计算机基础复习12.22

GC Root: 从一组称为GC Root的对象出发,向下追溯他们引用的对象,以及这些对象引用的其他对象,如果一个对象到GC root没有任何引用链相连。缺点是:不能解决循环引用的问题,即两个对象相互引用,但不再被其他任何对象引用,这时引用计数器不会为0,导致对象无法被回收。GC Root对象包括:虚拟机栈中引用的对象,方法区中类静态属性引用的对象,本地方法栈中引用的对象,活跃线程的引用。:老年代并行收集器,以获取最短回收停顿时间为目标的收集器,具有高并发,低停顿的特点,追求最短GC回收停顿时间。

2024-12-22 21:45:59 536

原创 计算机基础知识复习12.21

若没有,则新的任务提交时,线程池中若有空闲线程,则立即执行,若没有,则新的任务会暂存在一个任务队列中,待有线程空闲时,便处理在任务队列中的任务,使用的是有界阻塞队列LinkedBlockingQueue,其任务队列的最大长度为Integer.MAX_VALUE,可能堆积大量的请求,从而导致OOM。若所有线程均在工作,又有新的任务提交,则会创建新的线程处理任务,所有线程在当前任务执行完毕后,将返回线程池进行复用,允许创建的线程数量为Integer.Max_VALUE 如果任务数量过多,可能会创建大量的线程。

2024-12-21 22:42:14 545

原创 计算机基础知识复习12.21

synchronized修饰实例方法 保证在任意时刻,只有一个线程能执行该方法,一个对象只有一把锁,当一个线程获取了该对象的锁之后,其他线程无法获取对象的锁,所以无法访问该对象的其他synchronized方法,但是其他线程可以访问该对象的其他非synchronized方法。synchronized修饰静态方法:给当前类加锁,会作用于类的所有对象实例,进入同步代码前要获得当前class的锁,静态成员不属于任何一个实例对象,归属于这个类所有,不依赖于类的特定实例,被类的所有实例共享。

2024-12-21 12:29:15 648

原创 计算机基础知识复习12.20

叶子节点最底部的节点才会存放实际数据(索引+记录),非叶子节点只会存放索引所有索引都会在叶子节点出现,叶子节点之间构成一个有序链表单点查询:B+树的非叶子节点不存放实际的记录数据,仅存放索引,因此数据量相同的情况下,相比存储即存索引又存记录的B树,B+树的非叶子节点可以存放更多的索引,因此B+树可以比B树更矮胖,查询底层节点的磁盘I/O次数会更少插入和删除效率:B+树有大量的冗余节点,这样使得删除一个节点的时候,可以直接从叶子节点中删除,甚至可以不动非叶子节点。

2024-12-20 21:37:43 559

原创 Elasticsearch学习

是一个分布式的,restful风格的搜索引擎支持对各种类型的数据的检索搜索速度快,可以提供实时的搜索服务便于水平扩展,每秒可以处理PB级别海量数据。

2024-12-20 10:00:43 1057

原创 计算机复习10.3

一种通过向目标主机的一系列端口发送特定的数据包,并根据返回的响应来确定目标主机上哪些端口是开放的、哪些端口处于关闭状态的行为。C. 个人防火墙既可以对单机提供保护,也可以对网络提供保护 D. 个人防火墙占用一定的系统资源 19. 对数字签名的认证是采用(B)进行解密。A. 会话密钥 B.公钥 C.私钥 D.流密码。远程接入VPN:为移动用户提供一种访问单位内部网络资源的方式,主要应用于单位内部人员在外(非内部网络)访问单位内部网络资源的情况下,或为家庭办公的用户提供远程接入单位内部网络的服务。

2024-10-03 19:36:41 1745 1

原创 计算机复习9.27

zigbee自愈功能:增加或者删除一个节点,节点位置发生变动,节点发生故障等网络能够自我修复,并对网络拓扑结构进行相应的调整,无需人工干预。BigTable:分布式的多维映射表,通过行关键字,列关键字和时间戳索引数据,表中的数据按行关键字排序(倒排序)布隆过滤器确定子表位置。数据采集和感知用于采集物理世界中发生的物理事件和数据,主要包括传感器,RFID,二维码,多媒体信息。标签的分类:有源和无源,主动和被动,低频和高频,只读和可改写的和CPU。

2024-09-27 22:05:11 677

原创 设计模式复习

创建型模式 结构型模式 行为型模式:工厂方法,抽象工厂模式,单例模式,建造者模式,原型模式:适配器模式,桥接器模式,组合模式,装饰器模式,外观模式,亨元模式,代理模式:责任链模式,命令模式,解释器模式,迭代器模式,中介者模式,备忘录模式,状态模式,策略模式,模板模式,访问者模式,观察者模式。

2024-09-27 19:34:21 847 1

原创 计算机复习9.26

继承性:子类自动共享父类中数据和方法的机制封装性:数据和加工该数据的方法封装为一个整体,实现独立性很强的模块多态性:可作用于多种类型的对象上并获得不同的结果(OO):以对象为中心,以类和继承为构造机制(OOD):设计软件的对象模型,就是在软件内设计各个对象,对象之间的关系(层次关系,继承关系),对象间的通信方式(OOI):指软件工程的编码实现,确定对象哪一些处理能力应在哪些类中进行描述UML基本构造块:事物,关系,图事物:结构事物:类,接口 行为事物:交互。

2024-09-26 16:16:18 259

原创 计算机基础复习9.25

接口设计:接口设计包括外部接口和内部接口设计,外部接口描述用户界面,软硬件设备以及其他软件系统的接口,其设计依据为结构化需求分析阶段的顶层数据流内部接口为软件各模块之间的接口,其设计依据为结构化需求分析阶段的数据流图。将已经集成好的软件系统,与计算机硬件,外设,某些支持软件,数据和人员等其他系统元素结合在一起,在实际运行的环境下,对计算机系统进行一系列的组装测试和确认测试。计划阶段:确定被测试对象和测试范围,评估集成测试被测试对象的数量及难度,确定好角色分工,标识出测试各阶段的时间,任务,约束等条件。

2024-09-25 22:27:45 534

原创 计算机复习9.25

问题定义,可行性研究,需求分析软件开发:具体设计和实现在前一个时期定义的软件,分为四个阶段:总体设计,详细设计,编码,测试软件维护:使软件持久的满足用户的需要,主要包括改正错误,改进软件适应新的环境和满足用户的新需要。

2024-09-25 14:39:38 935

原创 计算机复习9.23

关系:一张扁平的二维表,关系应该具备每个分量都不可分的数据(1NF)候选码:某个属性组可以唯一标识一个元组,而其子集不能,候选码中的属性叫主属性主码:从候选码中选取一个称为主码全码:所有属性组合在一起作为这个关系的候选码传统集合:并,交,差,笛卡尔积,差专门关系云算:选择,投影,连接,除5种基本操作:选择,投影,并,差,笛卡尔积SQL: 结构化查询语言。

2024-09-24 22:06:41 665

原创 计算机基础知识复习9.13

驻留集:指请求分页存储管理中给进程分配的物理块的集合在采用了虚拟存储技术的系统中,驻留集大小一般小于进程的总大小若驻留集太小,会导致缺页频繁,系统要花大量的时间来处理缺页,实际用于进程推进的时间很少,驻留集太大,又会导致多道程序并发度下降,资源利用率降低,所以应该选择一个合适的驻留集大小。固定分配:操作系统为每个进程分配一组固定数目的物理块,在进程运行期间不再改变,即驻留集大小不变。可变分配:先为每个进程分配一定数目的物理块,在进程运行期间,可根据情况做适当的增加或减少,即驻留集大小可变。

2024-09-16 10:49:48 541

原创 计算机基础知识复习9.7

DHCP提供即插即用联网的机制,主机可以从服务器动态获取IP地址,子网掩码,默认网关,DNS服务器名称与IP地址,允许地址重用,支持移动用户加入网络,支持在用地址续租。分段比分页更容易实现信息的共享和保护,不能被修改的代码称为纯代码或可重入代码(不属于临界资源),这样的代码是可以共享的,可修改的代码是不能共享的。分页仅仅是系统管理上的需要,完全是系统行为,对用户是不可见的。将进程的逻辑地址空间也分为与页框大小相等的一个个部分,每个部分称为一个页或者页面,每个页面有一个编号,即页号,页号也是从0开始。

2024-09-13 11:09:24 843

原创 计算机基础知识复习9.6

点对点链路:两个相邻节点通过一个链路相连,没有第三者应用:PPP协议,常用于广域网广播式链路:所有主机共享通信介质应用:早期的总线以太网,无线局域网,常用于局域网典型拓扑结构:总线型 星型(逻辑总线型)

2024-09-07 21:36:25 697

原创 计算机基础知识复习9.5

集线器的N个端口对应N个网段,各网段属于同一个冲突域,其中冲突域 是指如果两台主机同时发送数据会导致冲突,则这台主机处于同一个冲突域,处于同一个冲突域的主机在发送数据前需要进行信道争用。若接收方收到i号帧,但检测出i号帧有差错,需要丢弃该帧,并给发送方返回否认帧NAK_i。确认机制 若接收方收到i号帧,且没有检测出差错,需要给发送方返回确认帧ACK_i。确认机制 若接收方收到i号帧,且没有检测出差错,需要给发送方返回确认帧ACK_i。为网络层提供服务(无确认无连接,有确认无连接,有确认有连接的服务)

2024-09-05 22:09:25 566

原创 计算机基础知识复习8.30

MSL是报文最大生存时间,他是任何报文在网络上存在的最长时间,超过这个时间报文将被丢弃。因为TCP报文基于是IP协议的,而IP头中有一个TTL字段,是IP数据报可以经过的最大路由数,每经过一个处理他的路由器此值就减1,当此值为0则数据报将被丢弃,同时发送ICMP报文通知源主机。TIME_WAIT等待2倍的MSL,原因是可能存在来自发送方的数据包,当这些发送方的数据包被接收方处理后又会向对方发送响应,所以一来一回需要等待2倍的时间。

2024-09-02 10:00:35 785

原创 计算机基础知识复习8.30

消息队列:是保存在内核中的消息链表,在发送数据时,会分成一个一个独立的数据单元,也就是消息体,消息体是用户自定义的数据类型,消息的发送方和接收方要约定好消息体的数据类型,所以每个消息体都是固定大小的存储块,不像管道是无格式的字节流数据。当客户端想和服务端建立TCP连接的时候,首先第一个发的就是SYN报文,然后进入到SYN_SENT状态,在这之后,如果客户端迟迟收不到服务端的SYN-ACK报文,就会触发超时重传机制,重传SYN报文,而且重传的SYN报文的序列号都是一样的。服务器回应的内容有如下内容。

2024-08-30 12:05:23 678

原创 计算机基础知识复习8.29

消息队列是保存在内核中的消息链表,在发送数据时,会分成一个个独立的数据单元,也就是消息体,消息体是用户自定义的数据类型,消息的发送方和接收方要约定好消息体的数据类型,所以每个消息体都是固定大小的存储块,不像管道是无格式的字节流数据,如果进程从消息队列中读取了消息体,内核就会把这个消息体删除。防止历史连接中的数据,被后面相同四元组的连接错误的接受。管道通信,就是内核里的一串缓存,从管道的一段写入的数据,实际上是缓存在内核中的,另一端读取,也就是从内核中读取这段数据,管道传输的数据是无格式的流且大小受限。

2024-08-29 19:41:55 890

原创 计算机基础复习8.29

如果收到新数据的ACK后,把cwnd设置为第一步中的ssthresh的值,原因是该ACK确认了新的数据,说明从duplicated ACK时的数据已经收到,该恢复过程已经结束,恢复到原来的状态。信号量表示资源的数量,对应的变量是一个整形的变量,采用P操作,变量减一,如果变量<0,则进程和线程进入阻塞等待,否则继续,表明P操作可能会阻塞。父进程创建子进程为客户服务,当子进程退出时,实际上内核里还会保留该进程的一些信息,也是会占用内存的,如果不做好回收工作,就会变成僵尸进程。

2024-08-29 14:19:03 934

原创 计算机基础复习8.28

TCP是面向连接的,可靠的,基于字节流的传输层通信协议面向连接:一定是一对一才能连接,不能像UDP协议可以一个主机同时向多个主机发送消息可靠的:无论链路怎么变化,TCP都可以保证一个报文一定能够到达接受端字节流:用户消息通过TCP协议传输时,消息可能会被操作系统分组程多个TCP报文,如果接受方的程序。

2024-08-28 17:01:40 837

原创 计算机基础知识复习8.23

是JDK而不是OS实现的轻量级线程,由JVM调度,许多虚拟线程共享同一个操作系统,虚拟线程的数量可以远大于操作系统线程的数量虚拟线程是非常轻量级的,可以在单个线程中创建成百上千个虚拟线程而不会导致过多的线程创建和上下文切换。减少资源开销,由于虚拟线程是由于JVM实现,它能够更高效的利用底层资源,例如CPU和内存,虚拟线程的上下文切换比平台线程更轻量。

2024-08-23 17:50:58 928

原创 计算机基础知识复习8.22

当同一个查询在不同的时间产生不同的结果集时,事务中就会出现所谓的幻想问题,例如select执行两次,但是第二次返回了第一次没有返回的行,则出现了幻读。

2024-08-22 21:02:19 714

原创 计算机基础知识复习8.21

客户端首先会发出一个DNS请求,问www.baidu.com的IP是啥,并发给本地DNS服务器 本地域名服务器收到客户端的请求后,如果缓存里的表格里能找到www.server.com,则它直接返回IP地址,如果没有,本地DNS会去问他的根域名服务器。如果执行更新的SQL语句,再次查询时缓存会失效,不同sqlSession对同一个SQL语句执行相同的查询操作,却对数据库执行了两次相同的查询操作,使用不同的查询条件,也会导致缓存失效。2是指两个阶段,P是指准备阶段,C是指提交阶段。

2024-08-21 21:01:37 659

原创 计算机基础知识8.15

mysql主库在收到客户端提交事务的请求之后,会先写入binlog,再提交事务,更新存储引擎中的数据,事务提交完成后,返回给客户端操作成功的响应。从库会创建一个专区的I/O线程,连接主库的log dump线程,来接受主库的binlog日志,再把binlog信息写入relay log的中继日志里,再返回给主库复制成功的响应。哈希表是一种保存键值对的数据结构,能以O(1)的复杂度快速查询数据,当数据变多,发生哈希冲突时,Redis采用链式哈希来解决哈希冲突,将具有相同哈希值的数据串起来,形成链表。

2024-08-16 09:57:20 731

原创 计算机基础知识复习8.14

在数据链路层中,通过mac地址来寻找局域网的主机,在网络层中,通过ip地址来寻找网络中互连的主机或路由器。prototype作用域下,每次获取都会创建一个新的bean实例,不存在资源竞争问题,不存在线程安全问题,对于singleton,IOC容器只有唯一的bean实例,可能存在资源竞争,如果bean有状态的话,就存在线程安全问题,对于有状态单例bean的线程安全问题,可以在类中定义一个ThreadLocal成员变量,将需要的可变成员变量保存在ThreadLocal中。

2024-08-14 20:28:50 1191

原创 计算机基础知识复习8.13

springIOC容器像一个工厂一样,当我们需要创建一个对象的时候,只需要配置好配置文件/注解即可,完全不用考虑对象是如何被创建出来的。因为用户线程可能会不断的更新引用域。重新标记:重新标记阶段就是为了修正并发标记期间因为用户程序继续运行而导致标记产生变动的那一部分对象的标记记录,这个阶段的停顿时间一般会比初始标记阶段的时间稍长,远远比并发标记阶段时间短。装饰器模式:项目需要连接多个数据库,而且不同客户在每次访问中根据需要会去访问不同的数据库,装饰器模式让我们可以根据客户的需求动态切换不同的数据源。

2024-08-13 20:59:37 621

原创 计算机基础知识复习8.9

是一种内存映射文件的方法,即将一个文件或者其他对象映射到进程的地址空间,实现文件磁盘地址和进程虚拟地址空间中一段虚拟地址的一一对映关系。就是内核缓冲区和应用缓冲区共享,从而减少了从读缓冲区到用户缓冲区的一次CPU拷贝。

2024-08-09 16:30:31 1033

空空如也

空空如也

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

TA关注的人

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