- 博客(11)
- 收藏
- 关注
原创 java学习体系技术栈
任何脱离细节的ppt架构师都是耍流氓,向上能运筹帷幄,向下能解决一线性能问题。业务越来越复杂,服务分层,微服务架构是架构升级的必由之路。从架构设计,到应用层调优,再深入了解底层原理。高并发,高可用,海量数据。
2023-07-11 11:20:07
133
原创 什么是AQS
AQS ( Abstract Queued Synchronizer )是一个抽象的队列同步器,通过维护一个共享资源状态( Volatile Int State )和一个先进先出( FIFO )的线程等待队列来实现一个多线程访问共享资源的同步框架。
2023-07-11 09:55:49
161
原创 mysql--MVCC
其实 MVCC 是通过 “三个” 隐藏字段 (事务id,回滚指针,删除标志) 加上undo log和可见性算法来实现的版本并发控制。
2023-06-20 15:52:14
643
1
原创 Java--多线程ReentrantReadWriteLock的用法和原理
在没有读写锁之前,假设使用普通的 ReentrantLock,那么虽然保证了线程安全,但是也浪费了一定的资源,因为如果多个读操作同时进行,其实并没有线程安全问题,可以允许让多个读操作并行,以便提高程序效率。但是写操作不是线程安全的,如果多个线程同时写,或者在写的同时进行读操作,便会造成线程安全问题。读写锁就解决了这样的问题,它设定了一套规则,既可以保证多个线程同时读的效率,同时又可以保证有写入操作时的线程安全。
2023-06-15 11:41:05
219
1
原创 java--多线程队列(Queue)、使用/教程/实例
包括:DelayQueue,ConcurrentLinkedQueue,BlockingQueue。
2023-06-15 11:19:00
2368
1
原创 java--多线程ThreadLocal的用法
保存之后,后边的业务操作就可以获取(Controller或者Service都可以,只要在一个请求中)。
2023-06-15 09:58:26
239
1
原创 java--线程池技术汇总
我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题:如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。通常情况下,创建线程是需要一定的耗时的,设这个时间为T1,而连接后读/写服务的时间为T2,当T1>>T2时,我们就应当考虑一种策略或者机制来控制,使得服务对于第二种请求方式也能在较低的功耗下完成。在JDK5之前,我们必须手动实现自己的线程池,从JDK5开始,Java内置支持线程池。
2023-06-13 18:05:38
251
1
原创 面经--mysql--001
什么是死锁死锁是2+个线程在执行过程中, 因争夺资源而造成的相互等待的现象,若无外力作用,它们将无法推进下去。死锁产生的4个必要条件互斥条件指进程对所分配的资源进行排他性使用,即一段时间内某资源只有一个进程占用,其他的进程请求资源只能等待,直至被占有资源的进程得到释放。请求和保留条件指进程至少保持占用一个资源,但又提出新的资源请求,而该资源正被其他进程占用,此时请求进程阻塞,但对以获得的其他资源保持不放。不剥夺条件指进程已获得的资源,在未使用完之前,不能剥夺,只能使用完时由自己释放。环路等待条件。
2023-06-08 17:56:06
558
1
原创 面经---Java--01
起源JWT 主要用于用户登录鉴权,所以我们从最传统的 session 认证开始说起。session认证众所周知,http 协议本身是无状态的协议,那就意味着当有用户向系统使用账户名称和密码进行用户认证之后,下一次请求还要再一次用户认证才行。
2023-06-08 15:09:04
267
1
原创 面经之-卷起来
valatile:volatile 是一种关键字,用于告诉编译器和处理器,该变量的值可能在任何时候被修改,因此每次读取该变量的值都必须从内存中读取,而不是从寄存器或缓存中读取。这样可以保证多线程之间对该变量的访问是正确的。指令重排序是一种优化技术,处理器可以将指令重排以提高处理器的性能。然而,这种优化技术可能会导致代码的行为与期望的不一致。在单线程环境下,指令重排序是一个很好的优化技术。但是在多线程环境下,指令重排序可能会导致程序的行为出现问题,因为它可能会让线程读取到错误的变量值或执行错误的指令。
2023-06-06 11:52:36
249
原创 标准的研发流程
PRD评审:产品、业务方、设计、后端、前段、测试、业务或者是平台上下游。UED评审:设计、产品、业务方、后端、前段、测试、上下游。后端系分:后端、前段、测试、产品、上下游。前段系分:后端、前段、测试、产品、上下游。BRD评审:业务方、产品、技术一号。测试系分:前端、后端、测试。开发周期:前端、后端。联调周期:前段、后端。
2023-06-05 10:38:21
163
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人