笔记

混江龙づ霸主 提交于 2020-01-12 14:49:58

1.监控系统,监控哪些数据查询比较频繁,哪些服务调用频繁

2.临时活动是否结束通过前端js cookie来判断,减少对服务器的请求次数。

3消息队列 RocketMQ,消息堆积能力强,单机堆积上亿条

3.日志系统建议用 kafka,可以增加storm ,hdfs.logstash等配套设施。

4。限流,算法 令牌桶,漏桶;

5.程序在CPU工作原理,CUP运行原理

6.悲观锁,乐观锁: 读取-》操作-》存储
悲观锁 从读取开始加锁
自旋锁,适应性自旋锁:尝试的次数区别

无锁,偏向锁,轻量级锁,重量级锁,公平锁,非公平锁,可重入锁,非可重入锁,共享锁,排他锁

6.算法和数据结构:时间复杂度,空间复杂度
数组链表,排序:选择,冒泡,插入,快速,桶,堆,kim。

7.synchronzied lock bus,悲观锁

8.lock 和synchronzied区别:
性能没啥区别,lock可以更加细腻操作锁,很多接口 trylock ,lok,…

9.微服务架构:第一代 micro service 第二代:mesh service

10.volatitle 修饰变量使得多线程间变量可见性,并不能说是线程安全,应属多线程通信。
JUC(java.util.concurrent)包实现CAS多线程安全方式。

CAS缺点
CAS存在一个很明显的问题,即ABA问题。

问题:如果变量V初次读取的时候是A,并且在准备赋值的时候检查到它仍然是A,那能说明它的值没有被其他线程修改过了吗?

如果在这段期间曾经被改成B,然后又改回A,那CAS操作就会误认为它从来没有被修改过。针对这种情况,java并发包中提供了一个带有标记的原子引用类AtomicStampedReference,它可以通过控制变量值的版本来保证CAS的正确性。

令牌通在这里插入图片描述在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!