- 博客(14)
- 收藏
- 关注
原创 Redis
string1.单值缓存2.分布式(不推荐)3.计数器hashkey value(key:value)结构1.对象缓存2.电商购物车优于string,但分布式不适合大量使用list左右push(加) 和pop(取)stack =lpush+lpop=fifoqueue=lpush=rpopbkmq=lp+bp(阻塞拿)1.微博和微信公众号信息流方式一(push): 不用排序用户的list集合中塞信息LRANGE msg:{userid} 0 4 查看最新微博信息问题:.
2021-12-04 15:05:11 245
原创 Spring源码逻辑梳理
一. 调用this()无参构造方法去实例化AnnotatedBeanDefinitionReader(初始化创世类)和ClassPathBeanDefinitionScanner(手动调用才会用到)二. 调用register(annotatedClasses)去将我们传入的配置类注册进beanDefinitionMap三. 调用refresh() 进行bean的初始化 @Override public void refresh() throws BeansException, IllegalStat
2021-09-10 23:23:42 212
原创 23_深入理解MVCC
MVCC多版本并发控制机制Mysql在可重复读隔离级别下如何保证事务较高的隔离性,我们上节课给大家演示过,同样的sql查询语句在一个事务 里多次执行查询结果相同,就算其它事务对数据有修改也不会影响当前事务sql语句的查询结果。 这个隔离性就是靠MVCC(Multi-Version Concurrency Control)机制来保证的,对一行数据的读和写两个操作默认 是不会通过加锁互斥来保证隔离性,避免了频繁加锁互斥,而在串行化隔离级别为了保证较高的隔离性是通过将所有操 作加锁互斥来实现的。 Mysql在读
2021-09-03 22:36:09 200
原创 03_Jvm对象创建与内存分配机制
我的blog地址一.对象的创建对象创建的主要流程:1. 类加载检查虚拟机遇到一条new指令时,首先将去检查这个指令的参数是否能在常量池中定位到一个类的符号引用,并且检查这个 符号引用代表的类是否已被加载、解析和初始化过。如果没有,那必须先执行相应的类加载过程。new指令对应到语言层面上讲是,new关键词、对象克隆、对象序列化等。2.分配内存在类加载检查通过后,接下来虚拟机将为新生对象分配内存。对象所需内存的大小在类加载完成后便可完全确定,为对象分配空间的任务等同于把一块确定大小的内存从Ja
2021-09-01 15:41:28 171
原创 02_JVM内存模型笔记
一.JVM 整体结构及内存模型二.JVM内存参数设置Spring Boot程序的JVM参数设置格式(Tomcat启动直接加在bin目录下catalina.sh文件里):java ‐Xms2048M ‐Xmx2048M ‐Xmn1024M ‐Xss512K ‐XX:MetaspaceSize=256M ‐XX:MaxMetaspaceSize=256M ‐jar microservice‐eurek a‐server.jar堆与年轻代-Xms:初始堆大小-Xmx:最大堆大小-Xmn:年轻代
2021-09-01 15:12:13 149
原创 01_类加载机制复习笔记
类加载运行全过程一.类加载过程加载文件>验证格式>准备赋默认值>解析符号引用>初始化代码1.加载在硬盘上查找并通过IO读入字节码文件,使用到类时才会加载,例如调用类的main方法,new对象等等,在加载阶段会在内存中生成一个代表这个类的java.lang.Class对象,作为 方法区 这个类的各种数据的访问入口简述:在类被使用到的时候,将class文件加载到内存的方法区中.2. 验证验证加载的字节码文件正确性3. 准备给类的静态变量分配内存,并赋予默认值4. 解
2021-09-01 13:22:25 102
原创 RabbitMq学习笔记(理论)
代码写生成交换机,及信息确认机制,监听模式,一.什么是MQ1.1 MQ描述MQ 全程 Message Queue(信息队列),是在信息传输过程中保存信息的容器。多用于分布式系统之间通信。在多个系统之间的作用类似于服务器的角色1.2 MQ优势应用解耦:提高系统容错性和可维护性异步提速:(提高用户体验和系统吞吐量(单位时间内处理的请求数)削峰请求:提高系统稳定性1.3MQ的劣势系统可用性降低(解决方案:集群)系统复杂度提高1.4常见MQRabbitMq: 最安全Act..
2021-08-31 00:16:41 153
原创 AbstractQueuedSynchronizer 解析
Setup to support compareAndSet. We need to natively implement this here: For the sake of permitting future enhancements, we cannot explicitly subclass AtomicInteger, which would be efficient and useful otherwise. So, as the lesser of evils, we natively imp
2021-08-01 01:29:36 224
原创 解决android gradle下载太慢的问题
在AndroidStudio的build.gradle(Project:projectName)里边添加如下的阿里云镜像仓库地址:buildscript { repositories { google() jcenter() //阿里云镜像仓库地址 maven{ url 'http://maven.aliyun.com/nexus/content/groups/public/'} }}allprojects {...
2020-12-02 11:01:39 516
原创 Android9.0网络请求错误的解决方法
一位博主总结的:https://www.jianshu.com/p/6ce99e03080f1. android:usesCleartextTraffic="true" 2.在 res 下新建一个 xml 目录,并新建一个 network_security_config.xml 文件,文件内容如下: 1 2 3 4 ...
2020-11-15 23:28:44 415
原创 矩阵运算笔记
本文仍在更新,也是博主第一次写博客,写的不好望见谅!如有什么建议请在评论区留言。1.Matrix本质上是一个3X3的矩阵Matrix矩阵对应 MSCALE_X MSKEW_X MTRANS_X MSKEW_Y MSCALE_Y MTRANS_Y MPERSP_0 MPERSP_1 MPERSP_2 两个矩阵相乘要求:...
2020-11-15 23:20:57 249
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人