![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
文章平均质量分 86
云哲-吉吉2021
做一个开心的程序员妈妈
展开
-
JavaWeb项目基于JSP+JavaBean+DAO三层架构实现的学生宿舍管理系统源码+数据库
JavaWeb学生宿舍管理系统项目。原创 2023-12-13 17:24:58 · 135 阅读 · 0 评论 -
Java课程设计基于JavaWeb的学生信息管理系统源码+数据库+课程设计报告
特别是近几年,学生数量的增多使学校的管理面临更大压力和挑战。目前大多数学校仍然采用传统的人工管理方式,对学生信息的管理还停留在纸介质的基础上,这既不易于规范化,管理效率也不高,浪费了大量人力物力财力。本系统针对学校及学生的信息特点,可以对学生信息进行高效率、规范化的管理,大大减轻了人员的工作负担,并避免了人工管理时容易出现的错误。Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。原创 2023-11-23 09:38:02 · 1343 阅读 · 0 评论 -
基于SpringBoot+Layui+Shiro的登录注册模板源码+数据库(邮箱短信验证)
这是一个基于SpringBoot+Layui+Shiro+Thymeleaf的登录注册模板,登录通过邮箱账号登录,注册通过邮箱验证码注册,并用Shiro作为安全框架对密码加密,这是我目前开发时在网上找的一个模板,然后把整个完善了一下,以便供日后还需要写登录时直接稍微改改使用注意:本来登录成功会跳转到后台首页,后台首页有退出登录,但是我没加上去,有些同学可能记住密码就自动登录了,你只要清以下浏览器Cookie缓存即可。原创 2023-04-17 15:32:13 · 312 阅读 · 0 评论 -
分布式协调服务:zookeeper,Paxos 算法、Multi-Paxos算法、Zab 协议
它是一个分布式协调服务,可以用来实现:znode节点类型:znode 属性:cZxid:创建时的事务id,每次的变化都会产生一个集群全局的唯一的事务id, Zxid(ZooKeeper Transaction Id),由Zookeeper的leader实例维护。ctime:创建时间mZxid:修改的事务标识,每次修改操作(set)后都会更新mZxid和mtimemtime:修改时间pZxid:子节点最后更新的事务标识,每个子节点更新变化时都会更新这个值cversion: 当子节点有变化时,版本原创 2023-04-01 12:03:58 · 331 阅读 · 0 评论 -
Kafka详解、kafka 集群、 Kafka 消息是采用 Pull 模式,还是 Push 模式?Kafka高效文件存储的原因?
当broker启动的时候,都会创建KafkaController对象,但是集群中只能有一个leader对外提供服务,每个节点上的KafkaController会在指定的zookeeper路径下创建临时节点,只有第一个成功创建的节点的KafkaController才可以成为leader,其余的都是follower。随机读写,磁盘速度慢的时候十几到几百K/s。镜像模式:在普通模式基础上做了改进,通过主节点把消息同步到每个节点的queue中去,如果主节点脱机了,则会从从节点中选举新的主节点,这就保证了高可用。原创 2023-03-25 13:14:53 · 202 阅读 · 0 评论 -
JVM 常用参数,遇到OOM问题如何排查?
在系统稳定后,多次获取GC数据(多次Full GC后老年代数据大小得出),通过取平均值的方式计算活跃数据的大小空间倍数总大小3-4 倍活跃数据的大小新生代1-1.5 活跃数据的大小老年代2-3 倍活跃数据的大小假设多次Full GC后的老年代大小为300M,那么总堆大小:300x4=1200M,新生代可以设置为:300x1.5=450M,老年代则:总大小-新生代=750M以上作为参考,实际当以系统优化目标进行调整。从实际案例聊聊Java应用的GC优化。原创 2023-03-19 13:36:31 · 103 阅读 · 0 评论 -
JVM 内存结构(java 内存结构)
借用JavaGuide哥的两张图(看过不少描述图,这两张是我最喜欢的):JDK 1.8 之前:JDK 1.8。原创 2023-03-18 09:51:21 · 97 阅读 · 0 评论 -
java 内存模型(JMM)
答:java 内存模型是一种规范,它规定所有的变量都应该存储在主内存中,每个线程都应该有自己的工作内存,工作内存中使用的变量应该为主内存的副本,线程对变量的所有操作(读取、赋值等)都必须在工作内存中进行,不同的线程之间无法直接访问对方工作内存中的变量,线程间变量值的传递均需要通过主内存来完成。原创 2023-03-12 09:18:53 · 122 阅读 · 0 评论