9.15学习记录

Cookie和session的区别

  1. cookie存储在客户但,session存储在服务端
  2. Cookie大小有限制,session一般没有限制
  3. Sessionx相对于cookie来说更安全一些

session存储在服务端哪里

  1. 一般是在内存中
  2. 可以持久化到内存中
  3. 可以放到分布式缓存中

数据库使用了哪些索引?

普通索引,唯一索引,全文索引,覆盖索引,联合索引

使用联合索引要注意什么?

  1. 尽量把区分度高的字段放在左边
  2. 避免索引失效

Spring中用到了哪些设计模式?

  1. 工厂模式:使用BeanFactory来管理Bean实例
  2. 模板方法模式:JDBCtemplate、Redistemplate等待
  3. 单例模式:默认将bean以单例管理,只有一个实例
  4. 代理模式:AOP
  5. 适配器模式:SPringMVC中的Handleradapter
  6. 建造者模式:简化对象构造过程

MAVEN常用命令

清理:clear

编译:compile

测试:test

打包:package

安装:install

部署:depoly

NIO

NIO是同步非阻塞IO模型

三个核心组件:buffer。Cannel。Selector。

Epoll的水平触发和边缘触发

水平触发: 只要一个文件描述符准备好进行 I/O 操作,epoll_wait() 就会报告该事件。即使应用程序没有处理该事件,只要条件仍然满足,epoll_wait() 在后续的调用中仍会报告相同的事件。

特点: 重复报告。 易于实现。 容错性强。

边缘触发:当一个文件描述符的状态从"未准备就绪"变成"准备就绪"的时候,epoll_wait() 会报告一次事件。如果应用程序没有及时处理事件,并且在此期间状态没有再次改变,则该事件不会再被报告。

特点: 仅报告一次。 效率更高。 要求严格。

TCP拥塞控制算法

慢开始、拥塞避免、快恢复、快重传

JMM模型

定义Java并发编程的一套规范,目的是简化多线程编程,增强程序可移植性

spring中有哪些事务传播行为?

Propagation_required:如果存在事务就加入,否则创建一个新事务

Propagation_requires-new:创建一个新的事务,如果当前有事务,挂起当前事务

Propagation_nested:如果存在事务,创建一个事务当作当前事务的嵌套事务,否则创建一个新事务

Propagation_Mandatory:存在加入,否则异常

如何保证消息顺序消费?

  1. 可以使用单个消费者
  2. 通过设置消息优先级,优先级高的先被消费
  3. 在消息上设置id,消费者端拿到消息后先进行排序
  4. 使用插件或者自定义交换机

Es有哪些重要的模块?

索引模块、查询模块、聚合模块、发现模块、存储模块、协调模块

es和mysql的比较

  1. mysql是关系型数据库,es是文档数据库
  2. mysql主要用来存储数据,es主要用来进行检索
  3. mysql使用b树和B+树等索引结构,es主要是倒排索引
  4. mysql使用sql查询语句,es使用DSL

创建线程的方式

  1. 继承thread类,重写run方法
  2. 实现Runnable接口,重写run方法
  3. 实现Callable接口,重写run方法,可以拿到返回值
  4. 使用excutors创建线程池
  5. 使用completablefuture类执行异步任务
  6. 基于Threadgroup线程组
  7. 使用futuretask匿名创建
  8. 使用timer定时器
  9. 使用forkjoinpool或许stream并行流
相关推荐
结网的兔子几秒前
前端学习笔记(实战准备篇)——用vite构建一个项目【吐血整理】
前端·学习·elementui·npm·node.js·vue
Larry_Yanan9 分钟前
QML学习笔记(六十四)动画相关:State状态、Transition过渡和Gradient渐变
开发语言·c++·笔记·qt·学习
ADHD多动联盟12 分钟前
注意力缺陷是什么?主要有哪些应对策略和干预方法?
学习·学习方法·玩游戏
hsg7722 分钟前
简述:openclaw应用二三事
人工智能·学习
承渊政道28 分钟前
C++学习之旅【unordered_map和unordered_set的使⽤以及哈希表的实现】
c语言·c++·学习·哈希算法·散列表·hash-index
嘉琪00141 分钟前
Day2 完整学习包(闭包 & 立即执行函数)——2026 0311
学习
南浦别a1 小时前
第三十一天--继续学习--TreeSet排序方式和HashSet
学习
承渊政道1 小时前
C++学习之旅【⽤哈希表封装myunordered_map和myunordered_set以及位图和布隆过滤器介绍】
数据结构·c++·学习·哈希算法·散列表·hash-index·图搜索算法
金山几座1 小时前
C#学习记录-变量与类型
学习·c#
飞Link1 小时前
深度解析 InfoNCE:对比学习背后的“核心功臣”
python·学习·数据挖掘·回归