计算机基础知识复习1.4
数据库事务
#开启一个事务
start transaction
#执行SQL语句
SQL1 SQL2 ..
#提交事务
commit
类加载器
启动类加载器:负责加载Java的核心库 用C++编写,是JVM的一部分,启动类加载器无法被Java程序直接引用
扩展类加载器:是Java语言实现的,继承自ClassLoader类,负责加载Java扩展目录下的jar包和类库。扩展类加载器由启动类加载器加载,并且父加载器就是启动类加载器
应用程序类加载器:是Java语言实现的,负责加载用户类路径上的指定类库,是我们编写Java程序默认使用的类加载器
自定义类加载器:开发者可以根据需求定制类的加载方式,比如网络加载class文件,数据库,加密的文件中加载类
http是一个无状态协议,意味每个请求都是独立的,每一次请求点到为止不会造成不必要的连接占用,缺点在于每次请求会传输大量重复的内容信息
503 表示服务器当前很忙,暂时无法响应客户端,网络服务正忙,请稍后重试
301 表示永久重定向 说明请求的资源已经不存在了,需要改用新的url再次访问
302 表示临时重定向 说明请求的资源还在,但暂时需要用另一个url来访问
索引失效
对索引使用左右模糊匹配,使用左模糊匹配
对索引使用函数
对索引隐式类型转换
联合索引使用非最左匹配
where子句的or
磁盘调度算法
先来先服务
最短寻道时间优先
扫描算法 循环扫描算法:磁头移动到磁盘最始端或最末端才开始调换方向
LOOK与C-LOOK算法:磁头移动到最远的请求位置,然后立即反向移动
边缘触发和水平触发
当被监控的socket描述符上有可读事件发生时,服务端只会从epoll_wait中苏醒一次,即使进程没有调用read函数从内核读取数据,依然只苏醒一次,因此我们程序要保证一次性将内核缓冲区的数据读完
使用水平触发模式时,当被监控的socket上有可读事件发生时,服务端不断从epoll_wait中苏醒,直到内核缓冲区数据被read函数读完才结束。
使用水平触发,当内核通知文件描述符可读写时,接下来还可以继续去检测他的状态,看他是否依然可读或可写,所以在收到通知后,没必要一次执行尽可能多的读写操作
使用边缘触发,I/O事件发生时只会通知一次,而且我们不知道到底能读写多少数据,所以在收到通知后应尽可能地读写数据,以免错失读写的机会。因此,我们会循环从文件描述符读写数据,那么如果文件描述符是阻塞的,没有数据可读写的,进程会阻塞在读写函数里,程序没办法继续执行
接口和抽象类区别
实现接口的关键字为implements,继承抽象类的关键字为extends,一个类可以实现多个接口,但一个类只能继承一个抽象类,接口可以间接实现多继承
接口只能有方法的定义,不能有方法的实现,抽象类可以有定义与实现
接口成员变量默认为public static final 必须赋初值,不能被修改,所有成员方法都是public ,抽象类中成员变量默认default 可在子类中被重新定义,也可被重新赋值
抽象类可以包含实例变量和静态变量,而接口只能包含常量
使用包装类:例如List,Set,Map只能存储对象,不能直接存储基本数据类型。包装类提供了许多方法,例如基本类型转换,比较,操作。对null值支持。
undo log 回滚日志:是InnoDB存储引擎层生成的日志,实现了事务中的原子性,主要用于事务回滚和MVCC
redo log 重做日志:是InnoDB 存储引擎层生成的日志,实现了事务中的持久性,主要用于掉电等故障恢复
binlog 是Server层生成的日志,主要用于数据备份和主从复制
进程间通信方式
管道:管道传输数据是单向的,内核里的一串缓存
消息队列:保存在内核中的消息链表,在发送数据时,会分成一个一个独立的数据单元,也就是消息体
共享内存:拿出一块虚拟地址空间来,映射到相同的物理内存中
信号量:实现进程间的互斥与同步,而不是用于缓存进程间通信的数据
MyBatis一级,二级缓存作用
一级缓存:基于PerpetualCache的HashMap本地缓存,其存储作用域为Session,当Session flush或close之后,该Session中的所有Cache就将清空,默认打开一级缓存
二级缓存:默认采用PerpetualCache,HashMap存储,不同在于其存储作用域为Mapper(Namespace)。默认不打开二级缓存,要开启二级缓存,使用二级缓存属性类需要实现Serializable序列化接口,可在他的映射文件中配置<cache/>
什么是中断
CPU停下当前的工作任务,去处理其他事情,处理完后回来继续执行刚才的任务
发生中断:当外部设备或软件程序需要处理器的注意或响应时,会发出中断信号,处理器在接收到中断信号后,会停止当前执行的指令,保存当前执行现场,并跳转到中断处理程序执行
中断响应:处理器接收到中断信号后,会根据中断向量表找到对应的中断处理程序的入口地址。处理器会保存当前执行现场(如程序计数器,寄存器状态) 以便在中断处理完成后能够恢复执行
中断处理:处理器跳转到中断处理程序的入口地址开始执行中断处理程序,中断处理程序会根据中断类型进行相应的处理,可能涉及保存现场,处理中断事件,执行特定任务
范式
第一范式(1NF):要求数据库表的每一列都是不可分割的原子数据项
第二范式(2NF):非码属性必须完全依赖于候选码(消除非主属性对主码的部分函数依赖)
第三范式(3NF):任何非主属性不依赖于其他非主属性(消除传递依赖)
半连接队列和全连接队列
服务端收到客户端发起的SYN请求后,内核会把该连接存储到半连接队列,并向客户端响应SYN+ACK,接着客户端返回ACK,服务端收到第三次握手的ACK后,内核会把连接从半连接队列移除,然后创建新的完全的连接,并将其添加到accept队列,等待进程调用accept函数时把连接取出来
全局锁:通过flush tables with read lock语句会将整个数据库就处于只读状态
表级锁:通过lock tables 语句可以对表加表锁
记录锁:锁住一条记录,记录锁是有S锁和X锁之分的,满足读写互斥,写写互斥
相关文章:
计算机基础知识复习1.4
数据库事务 #开启一个事务 start transaction #执行SQL语句 SQL1 SQL2 .. #提交事务 commit 类加载器 启动类加载器:负责加载Java的核心库 用C编写,是JVM的一部分,启动类加载器无法被Java程序直接引用 扩展类加载器:是Java语…...

SpringMVC(三)请求
目录 一、RequestMapping注解 1.RequestMapping的属性 实例 1.在这里创建文件,命名为Test: 2.复现-返回一个页面: 创建test界面(随便写点什么): Test文件中编写: 编辑 运行: 3.不返回…...

Node.js应用程序遇到了内存溢出的问题
vue 项目 跑起来,一直报错,内存溢出 在 文件node_modules 里 .bin > vue-cli-service.cmd 在依赖包这个文件第一行加上这个 node --max-old-space-size102400 "%~dp0\..\vue\cli-service\bin\vue-cli-service.js" %* node --max-old-s…...

如何构建云原生时空大数据平台?
在现代企业中,随着对技术的依赖日益加深,空间数据的重要性愈发显著。它通过结合地理成分(如纬度、经度、地址、邮编等)与业务数据,成为解决复杂问题的重要工具。地理空间数据可从多种来源获取,例如卫星影像…...

二极管钳位电路分享
二极管钳位(I/O的过压/浪涌保护等) 如果我们的电路环境接收外部输入信号容易受到噪声影响,那我们必须采取过压和浪涌保护措施,其中一个方式就是二极管钳位保护。 像上图,从INPUT输入的电压被钳位在-Vf与VCCVf之间&…...

腾讯云智能结构化 OCR:驱动多行业数字化转型的核心引擎
在当今数字化时代的汹涌浪潮中,数据已跃升为企业发展的关键要素,其高效、精准的处理成为企业在激烈市场竞争中脱颖而出的核心竞争力。腾讯云智能结构化 OCR 技术凭借其前沿的科技架构与卓越的功能特性,宛如一颗璀璨的明星,在交通、…...
19.3、Unix Linux安全分析与防护
目录 UNIX/Linux系统的安全分析与防护UNIX/Linux系统安全增强技术UNIX/Linux安全模块应用参考国产操作系统安全分析与防护 UNIX/Linux系统的安全分析与防护 unix和linux操作系统分成三层,分别是硬件层,系统内核层以及应用层。Windows系统也是分成三层&a…...

JVM对象内存结构
1对象内存结构说明 注意: 如果对象为数组对象,在对象头后面有4字节存储数组长度; 1.1对象头 对象头分为Mark Word和Class Pointer两部分; Mark Word:对象基础信息 32位操作系统中占4字节,64位操作系统中占8…...
联邦学习和大模型相结合: 数据隐私,提升训练效率,架构优化
联邦学习和大模型相结合: 数据隐私,提升训练效率,架构优化 数据隐私保护方面 增强隐私保护机制:大模型通常需要大量的数据进行训练,而联邦学习可以在不共享原始数据的情况下进行模型训练。结合两者,可以设计出更强大的隐私保护机制,如利用联邦学习的加密技术和差分隐私…...

命令别名和命令历史
1.1命名别名 别名是命令的快捷方式。对于需要经常执行,并需要很长时间输入的长命令创建快捷方式很有用。 语法: alias 别名 ’ 原命令 [ 选项 ]…… [ 参数 ]……’ 1.2命令历史...
打造三甲医院人工智能矩阵新引擎(二):医学影像大模型篇--“火眼金睛”TransUNet
一、引言 1.1 研究背景与意义 在现代医疗领域,医学影像作为疾病诊断与治疗的关键依据,发挥着不可替代的作用。从传统的X射线、CT(计算机断层扫描)到MRI(磁共振成像)等先进技术,医学影像能够直观呈现人体内部结构,为医生提供丰富的诊断信息,涵盖疾病识别、病灶定位、…...
Scade pragma: separate_io
概述 在 Scade 语言中,支持对用户自定义算子使用 separate_io pragma 进行修饰。其形式如: function #pragma kcg separate_io #end N(x: int8) returns (y,z: int8) let y x;z x; tel在上例中,算子N 就被 pragma #pragma kcg separate_i…...

IWOA-GRU和GRU时间序列预测(改进的鲸鱼算法优化门控循环单元)
时序预测 | MATLAB实现IWOA-GRU和GRU时间序列预测(改进的鲸鱼算法优化门控循环单元) 目录 时序预测 | MATLAB实现IWOA-GRU和GRU时间序列预测(改进的鲸鱼算法优化门控循环单元)预测效果基本介绍模型描述程序设计参考资料 预测效果 基本介绍 MATLAB实现IWOA-GRU和GRU时间序列预测…...

“知识图谱AI教学辅助系统:点亮智慧学习的新灯塔
嘿,各位教育界的小伙伴们!今天咱们来聊聊一个超级有料的话题——知识图谱AI教学辅助系统。想象一下,如果有一个智能导师能根据你的需求定制专属的学习路径,还能像百科全书一样随时解答疑问,是不是感觉学习变得更高效、…...

产品 防尘防水IP等级 划分与实验方法
概述: 我们经常听到或看到有关IP防护等级的说法。比如:xx产品的防护级别为IP54;xx产品的防护级别为IP65等等。IP54、IP65是外壳防护等级代码。 一款产品,在实验室内按照GB/T 2421规范对其外壳的防护能力进行实验,并将…...

【微服务】1、引入;注册中心;OpenFeign
微服务技术学习引入 - 微服务自2016年起搜索指数持续增长,已成为企业开发大型项目的必备技术,中高级java工程师招聘多要求熟悉微服务相关技术。微服务架构介绍 概念:微服务是一种软件架构风格,以专注于单一职责的多个响应项目为基…...
01、Docker学习,第一天:简单入门与安装
Docker学习,第一天:简单入门与安装 一、Docker简介 环境配置如此之麻烦,换台机器,重来一次,费事费力。安装的时候,把原始环境一模一样的复制过来。开发人员利用Docker可以消除写作编码时,”在…...
C++STL中iomanip的使用与细节
C标准模板库(STL)中的<iomanip>头文件提供了一组用于格式化输入输出流的函数和操纵符。这些函数和操纵符可以用来控制输出的布局、精度、宽度等。以下是一些常用的<iomanip>函数及其使用方式: setprecision(n):设置浮…...
3.C语言变量的基础概念与使用
目录 1.变量名2.变量声明3.变量赋值4.变量作用域 1.变量名 本篇原文为:C语言变量的基础概念与使用 更多C进阶、rust、python、逆向等等教程,可点击此链接查看:酷程网 变量(variable)可以理解成一块内存区域的名字。…...
Go语言中的逃逸分析:深入浅出
Go语言中的逃逸分析:深入浅出 在Go语言中,逃逸分析(Escape Analysis)是一个非常重要且强大的编译器优化技术。它帮助编译器决定一个变量是在栈上分配还是在堆上分配,从而影响程序的性能和内存管理。本文将深入探讨Go语…...

接口测试中缓存处理策略
在接口测试中,缓存处理策略是一个关键环节,直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性,避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明: 一、缓存处理的核…...

RocketMQ延迟消息机制
两种延迟消息 RocketMQ中提供了两种延迟消息机制 指定固定的延迟级别 通过在Message中设定一个MessageDelayLevel参数,对应18个预设的延迟级别指定时间点的延迟级别 通过在Message中设定一个DeliverTimeMS指定一个Long类型表示的具体时间点。到了时间点后…...

K8S认证|CKS题库+答案| 11. AppArmor
目录 11. AppArmor 免费获取并激活 CKA_v1.31_模拟系统 题目 开始操作: 1)、切换集群 2)、切换节点 3)、切换到 apparmor 的目录 4)、执行 apparmor 策略模块 5)、修改 pod 文件 6)、…...

基于ASP.NET+ SQL Server实现(Web)医院信息管理系统
医院信息管理系统 1. 课程设计内容 在 visual studio 2017 平台上,开发一个“医院信息管理系统”Web 程序。 2. 课程设计目的 综合运用 c#.net 知识,在 vs 2017 平台上,进行 ASP.NET 应用程序和简易网站的开发;初步熟悉开发一…...

Springcloud:Eureka 高可用集群搭建实战(服务注册与发现的底层原理与避坑指南)
引言:为什么 Eureka 依然是存量系统的核心? 尽管 Nacos 等新注册中心崛起,但金融、电力等保守行业仍有大量系统运行在 Eureka 上。理解其高可用设计与自我保护机制,是保障分布式系统稳定的必修课。本文将手把手带你搭建生产级 Eur…...

NLP学习路线图(二十三):长短期记忆网络(LSTM)
在自然语言处理(NLP)领域,我们时刻面临着处理序列数据的核心挑战。无论是理解句子的结构、分析文本的情感,还是实现语言的翻译,都需要模型能够捕捉词语之间依时序产生的复杂依赖关系。传统的神经网络结构在处理这种序列依赖时显得力不从心,而循环神经网络(RNN) 曾被视为…...

IoT/HCIP实验-3/LiteOS操作系统内核实验(任务、内存、信号量、CMSIS..)
文章目录 概述HelloWorld 工程C/C配置编译器主配置Makefile脚本烧录器主配置运行结果程序调用栈 任务管理实验实验结果osal 系统适配层osal_task_create 其他实验实验源码内存管理实验互斥锁实验信号量实验 CMISIS接口实验还是得JlINKCMSIS 简介LiteOS->CMSIS任务间消息交互…...
【HTTP三个基础问题】
面试官您好!HTTP是超文本传输协议,是互联网上客户端和服务器之间传输超文本数据(比如文字、图片、音频、视频等)的核心协议,当前互联网应用最广泛的版本是HTTP1.1,它基于经典的C/S模型,也就是客…...
智能AI电话机器人系统的识别能力现状与发展水平
一、引言 随着人工智能技术的飞速发展,AI电话机器人系统已经从简单的自动应答工具演变为具备复杂交互能力的智能助手。这类系统结合了语音识别、自然语言处理、情感计算和机器学习等多项前沿技术,在客户服务、营销推广、信息查询等领域发挥着越来越重要…...
现有的 Redis 分布式锁库(如 Redisson)提供了哪些便利?
现有的 Redis 分布式锁库(如 Redisson)相比于开发者自己基于 Redis 命令(如 SETNX, EXPIRE, DEL)手动实现分布式锁,提供了巨大的便利性和健壮性。主要体现在以下几个方面: 原子性保证 (Atomicity)ÿ…...