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并行流
相关推荐
小李不想说话20 分钟前
HTTPS 加密原理
java·网络·网络协议·学习·安全·http·https
秋野酱1 小时前
基于javaweb的SpringBoot驾校预约学习系统设计与实现(源码+文档+部署讲解)
spring boot·后端·学习
houliabc2 小时前
【2025年软考中级】第一章1.5 输入输出技术(外设)
笔记·学习·证书·软考·计算机系统
请你喝好果汁6412 小时前
学习笔记:Conda 环境共享
笔记·学习·conda
qq_386322693 小时前
华为网路设备学习-22(路由器OSPF-LSA及特殊详解)
学习·华为·智能路由器
oneDay++4 小时前
# IntelliJ IDEA企业版集成AI插件「通义灵码」全流程详解:从安装到实战
java·经验分享·学习·intellij-idea·学习方法
代码小将4 小时前
Leetcode76覆盖最小子串
笔记·学习·算法
努力的小帅4 小时前
C++_STL_map与set
开发语言·数据结构·c++·学习·leetcode·刷题
邝邝邝邝丹4 小时前
React学习———React Router
前端·学习·react.js
yuhouxiyang4 小时前
学习海康VisionMaster之直方图工具
学习·计算机视觉