sessionid怎么生成的 是一个会话的key,浏览器第一次访问服务器会在服务器端生成一个session,有一个sessionid和它对应。tomcat生成的sessionid叫做jsessionid。 session在访问tomcat服务器HttpServletRequest的getSession(true)的时候创建,tomcat的ManagerBase类提供创建sessionid的方法:随机数+时间+jvmid; 2024-06-03 博客 #JAVA
Netty-2 Java NIO 1. Channel1NIO中一个连接就是用一个Channel来表示。从更广泛的层面来说,一个通道可以表示一个底层的文件描述符。例如硬件设备、文件、网络连接等。Java NIO中的通道更加细化,例如。对应不同的网络传输协议类型,再JAVA中都用不同的JAVA NIO Channel实现。 Channel类型:1.FileChannel : 文件通道,用于文件的数据读写,不适合I/O多路复用。 2024-06-03 博客
Redis集群如何保证高可用 ## 1、前言 Redis是单线程的,可以通过在单机开多个Redis实例,避免CPU多核的浪费,但是单机仍然存在瓶颈。 Redis集群是Redis的分布式解决方案,当一个服务挂了可以快速的切换到另外一个服务,当遇到单机内存、并发等瓶颈时,常使用此方案。 集群的部署方式也就是Redis cluster,采用主从同步读写分离,类似Mysql的主从同步,Redis cluster支撑 N 2024-05-09 博客 #Redis
CommandLineRunner和ApplicationRunner 文章目录 在Spring Boot应用程序中,CommandLineRunner和ApplicationRunner是两个重要的接口,它们允许我们在应用程序启动后执行一些初始化任务。本文将介绍CommandLineRunner和ApplicationRunner的区别,并提供代码示例和使用场景,让我们更好地理解和使用这两个接口。 CommandLineRunner和ApplicationRun 2024-04-30 博客 #Spring
Netty-1 IO网络模型 名词解释12Linux 内核会将所有外部设备都看做一个文件来操作,对一个文件的读写操作会调用内核提供的系统命令,返回一个file descriptor (fd, 文件描述符)。二队一个socket的读写也会有相应的描述符,成为socketfd,描述符就是一个数字,它指向内核中的一个机构提(文件路径,数据区等一些属性)。根据UNIX网络编程对I/O模型的分类,UNIX提供了5种I/O模型 主体内容 2024-04-30 博客 #Netty
多线程 线程状态12345678910111213141516在Java中,线程的状态包括以下几种,以及对应的状态码:1. **NEW(新建)**:线程被创建,但尚未启动。状态码:1 2. **RUNNABLE(可运行)**:线程正在Java虚拟机中执行,可能正在等待CPU时间片。状态码:2 3. **BLOCKED(阻塞)**:线程正在等待获取一个锁,以便进入同步块/方法。状态码:3 2024-04-24 博客
消息队列-名词解释 点对点:1:1发布订阅:1:n 12345678910AMQ: 1:1 发布消息到queue 1:n 发布消息到topicRABBIT:(PUSH) (队列中的消息,消费者轮训消费,不是都消费) 1:1 exchange只绑定一个队列,队列中只有一个消费者 1:n exchange绑定多个队列KAFKA(PULL) 1:1 发布到topic,消费者组只有一个消费者拉取 1:n 发布到topic 2024-04-24 博客 #消息队列、
守护线程 在这篇简短的文章中,我们将讲解下 Java 中的守护线程,看看它们可以做什么。我们还将解释守护线程和用户线程之间的区别。 守护线程和用户线程的区别Java 提供了两种类型的线程:守护线程 和 用户线程 用户线程 是高优先级线程。JVM 会在终止之前等待任何用户线程完成其任务。 用户线程 是低优先级线程。其唯一作用是为用户线程提供服务。 由于守护线程的作用是为用户线程提供服务,并且仅在用户线程 2024-04-18 博客 #JAVA
彻底搞懂Log4J、Log4J2、LogBack,SLF4J 最近系统被扫出来还在使用老旧的log4j,需要升级到最新的log4j。但是在升级的发现,Java相关的日志处理库有log4j, log4j2,slf4j和logback,初一看确实有点头大,那么区别是啥呢?之前也大概知道一些,查找了大量相关资料,这里好好总结一下,相信你读完就会熟练掌握 Log4J、Log4J2和LogBack的历史故事使用过Log4J和LogBack的同学肯定能发现,这两 2024-04-16 博客 #log4j
AMQP和JMS的区别 1. 高级消息队列协议: 它是一种用于应用程序之间通信的协议。它是一种轻量级协议,支持应用程序进行数据传输。该协议具有可扩展性和模块化的特点。 2. Java消息服务(JMS): 它是一种支持网络中计算机通信的应用程序接口(API)。它是一个功能强大的API,用于接收通信过程中生成的消息。 AMQP和JMS的区别: 比较基础 AMQP JMS 缩写 高级消息队列协议(Advan 2024-04-09 博客 #activemq #Rabbitmq