自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 jvm垃圾回收

1、新生代由eden区、from survivor区和to suivivor区组成,内存占比默认为80%、10%、10%2、新建的对象都由新生代分配内存,eden空间不足时,会把存活的对象转移到survivor3、新生代由于存活时间短,所以GC比较频繁1、用于存放在新生代多次回收依然存在的对象。

2022-12-01 09:40:32 209 1

原创 mysql常用命令

show grants for testplatform 查看用户权限 grant all privileges on。进入mysql命令行,source /usr/local/mysql/all.sql。

2022-12-01 09:38:51 342

原创 程序是怎么跑起来的

指示计算机每一步动作的一组指令cpu是具有各种功能的寄存器的集合cpu中,程序计数器记录了指令的内存地址,程序通过程序计数器来控制流程。程序每次从程序计数器对应的内存地址中读取指令,通过cpu中的各种寄存器来记录程序执行时的临时状态、数据等来执行程序,最终计算完成后输出结果比如两个数字a、b相加,执行过程如下:1、程序计数器0100。从内存地址0100处读取指令:将内存地址0105的数字a保存到累加寄存器2、程序计数器0101。

2022-12-01 09:36:46 389

原创 《计算机是怎么跑起来的》读书笔记

8个元器件有 28=256 种不同的组合,16个元器件有 216=65536(汉字为什么是两个字节,因为汉字的数量大于256,所以一个字节无法全部标识所有汉字,用两个字节16位,有65536种组合,此时就足够表示所有汉字了) 种不同的组合。接收方收到信息后从末尾取到签名,然后对接受到的内容用相同算法计算,将结果与传过来的结果比较,如果无误,说明传输内容完整。内存存储了程序,也就是指令和数据,计算机的执行流程其实就是一条一条指令的顺序执行。所有程序的流程都只有三种:顺序执行、循环执行、条件分支执行。

2022-12-01 09:35:05 591

原创 幂等问题解决方案

幂等与你是不是分布式高并发还有JavaEE都没有关系。关键是你的操作是不是幂等的。一个幂等的操作典型如:把编号为5的记录的A字段设置为0这种操作不管执行多少次都是幂等的。一个非幂等的操作典型如:把编号为5的记录的A字段增加1这种操作显然就不是幂等的。要做到幂等性,从接口设计上来说不设计任何非幂等的操作即可。譬如说需求是:当用户点击赞同时,将答案的赞同数量+1。改为:当用户点击赞同时,确保答案赞同表中存在一条记录,用户、答案。赞同数量由答案赞同表统计出来。

2022-11-30 17:56:34 289 1

原创 java线程学习笔记

线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位。程序员可以通过它进行多处理器编程,你可以使用多线程对 运算密集型任务提速。比如,如果一个线程完成一个任务要100毫秒,那么用十个线程完成改任务只需10毫秒。Java在语言层面对多线程提供了卓越的支 持,它也是一个很好的卖点。如果你的代码所在的进程中有多个线程在同时运行,而这些线程可能会同时运行这段代码。如果每次运行结果和单线程运行的结果是一样的,而且其他的变量 的值也和预期的是一样的,就是线程安全的。

2022-11-30 17:54:38 66

原创 java map学习笔记

①、重要的常量:当为负数时,-1 表示正在初始化,-N 表示 N - 1 个线程正在进行扩容;当为 0 时,表示 table 还没有初始化;当为其他正数时,表示初始化或者下一次进行扩容的大小。②、数据结构:Node 是存储结构的基本单元,继承 HashMap 中的 Entry,用于存储数据;TreeNode 继承 Node,但是数据结构换成了二叉树结构,是红黑树的存储结构,用于红黑树中存储数据;

2022-11-30 17:53:42 151

原创 java面试题总结

equals相等的对象hashcode一定相等;hashcode相等的对象,equals不一定相等;hashcode()的作用是获取哈希码,也成为散列码,是一个int值。这个哈希码的作用是确定对象在表中的索引位置,哈希表存储的是key-value,哈希码就是key我们以“HashSet 如何检查重复”为例子来说明为什么要有 hashCode?

2022-11-30 17:53:05 100

原创 rocketMq学习笔记

这种方式优点是消息丢失的非常少,且消息实时性不会受影响,Master 宕机后消费者可以继续从 Slave 消费,中间的过程对用户应用程序透明,不需要人工干预,性能同多 Master 方式几乎一样。功能 | 及其完备| 基于erlang语言开发,并发能力强,延时很低| 接口简单易用,功能完备,扩展性好,比如支持,普通消息(同步发送,异步发送,单向发送),定时延时消息,顺序消息,事物消息| 功能较为简单,主要支持简单的mq功能,因为功能简单,在大数据以及日志采集方面用处广|

2022-11-30 17:52:19 144

原创 redis学习笔记

如果一个查询返回的数据为空,(查询为空的数据,在Redis也查不到)仍然把这个空结果(null)进行缓存,设置短一点的空结果过期时间,之后再次访问这个数据将会从缓存中获取,保护了后端数据源。然后写一个临时的分发数据的 consumer 程序,这个程序部署上去消费积压的数据,消费之后不做耗时的处理,直接均匀轮询写入临时建立好的 10 倍数量的 queue。我们发送的消息记录是落库保存了的,而转发发送的数据也保存了,那么我们就可以通过这部分数据来找到丢失的那部分数据,再单独跑个脚本重发就可以了。

2022-11-30 17:51:23 174

原创 zookeeper学习笔记

znode 可以是临时节点,一旦创建这个 znode 的客户端与服务器失去联系,这个 znode 也将自动删除,Zookeeper 的客户端和服务器通信采用长连接方式,每个客户端和服务器通过心跳来保持连接,这个连接状态称为 session,如果 znode 是临时节点,这个 session 失效,znode 也就删除了;Ø 优先权(Priority):给所有服务器分组,给每个组定义优先权,将用户的请求分配给优先级最高的服务器组(在同一组内,采用预先设定的轮询或比率算法,分配用户的请求);

2022-11-30 17:50:43 379

原创 spring学习笔记

spring是一个轻量级的控制反转(IOC)和面向切面(AOP)的容器框架@ConditionalOnClass : classpath中存在该类时起效@ConditionalOnMissingClass : classpath中不存在该类时起效@ConditionalOnBean : DI容器中存在该类型Bean时起效@ConditionalOnMissingBean : DI容器中不存在该类型Bean时起效。

2022-11-30 17:49:29 446

原创 网络协议学习笔记

socket是一组接口,在应用层和传输层之间的一个抽象层,它把TCP/IP层复杂的操作抽象为几个简单的接口供应用层调用已实现进程在网络中通信在网站中,http请求是无状态的。也就是说即使第一次和服务器连接后并且登录成功后,第二次请求服务器依然不能知道当前请求是哪个用户。

2022-11-30 17:48:12 653

原创 jvm学习笔记

1、新生代由eden区、from survivor区和to suivivor区组成,内存占比默认为80%、10%、10%2、新建的对象都由新生代分配内存,eden空间不足时,会把存活的对象转移到survivor3、新生代由于存活时间短,所以GC比较频繁1、用于存放在新生代多次回收依然存在的对象。

2022-11-30 17:45:35 141

原创 springboot启动加载流程

我们都知道,我们平时启动springboot项目都是通过在main方法中运行SpringApplication.run来启动的,今天我们通过源码去详细了解一下springboot的启动加载流程开始看代码之前,我们回顾一下我们平时在使用springboot时的一些问题,然后带着问题去看代码。1、springboot的默认配置文件application.properties是如何加载的2、springboot是如何进行bean加载的3、springboot在启动过程中还做了哪些动作STEP1 程序启动

2020-05-22 17:37:09 2214

原创 zk事务提交

zk事务提交在zk中,客户端会随机连接到zk集群的一个节点,如果是读请求,则直接读取数据;如果是写请求,那么请求会转发给leader去提交事务,随后leader会广播事务,如果超过半数节点写入成功,那么写请求就会被提交过程:客户端发起一个写请求。如果是 follower 节点接收到该请求,那么它会将该请求转发给 leader 节点处理。leader 会把这个请求转化成一个事务 Proposal(提议),并把这个 Proposal 分发给集群中的所有 Follower 节点(Observer不会被

2020-05-15 18:22:44 638

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除