- 博客(14)
- 收藏
- 关注
原创 客户端的一些积累
subscribeOn指定事件产生的线程 observeOn指定事件消费的线程 subscribe指定处理的方法 retrofit Post 表单跟注解FormUrlEncoded 字段Field 如果不需要post参数 就不用呆FormUrlENcoded参数 Get 字段跟query PendingIntent是一种延迟的Intent 用于持续性的一些操作 Activity消失 PendingIntent始终作用 例子 通知栏 retrofit实例 public class MainActivity
2021-03-11 11:10:55
122
原创 八股文的一些总结
Volatile为什么不能保证原子性(两个线程分别执行100次自增 但是为什么值不等于200) 简单的说,修改volatile变量分为四步: 1)读取volatile变量到local 2)修改变量值 3)local值写回 4)插入内存屏障,即lock指令,让其他线程可见 这样就很容易看出来,前三步都是不安全的,取值和写回之间,不能保证没有其他线程修改。原子性需要锁来保证。 这也就是为什么,volatile只用来保证变量可见性,但不保证原子性。 volatile 变量写入并不保证线程安全,也不具备原子性。原因
2021-03-06 17:19:36
933
原创 狂神redis 自己总结 阿里巴巴演进分析
商品界面的应用 1.商品的基本信息 名称\价格\商家信息 关系型数据库就能解决 MySQL/Oracle 2.商品的描述、评论 文档型数据中,MongoDB 3.图片 分布式文件系统 FastDFS 淘宝自己的 TFS Google的 GFS Hadoop HDFS 阿里云的 oss 4.商品的关键字(搜索) 搜索引擎 solr elasticsearch 5.商品的热门的波段信息(秒杀) 内存数据库 redis tair memacache 6.外部的支付接口 三方应用 NoSQL的四大分类: KV键值对
2020-12-03 20:30:09
233
原创 Redis学习-单机mysql的演进 企业架构分析 什么是NoSQL
redis五大基本数据类型: String List Set Zset Hash 三种特殊数据类型: geo hyperloglog bitmap Nosql概述 为什么要用nosql? 网站百分之80的情况都是在读,每次都要去查询数据库的话就十分的麻烦,所以我们希望减轻数据的压力,我们可以使用缓存来保证效率 用户的个人信息,社交网络,地理位置.用户自己产生的数据,用户日志等等爆发式增长,这时候需要使用到Nosql数据库,nosql可以很好的处理以上的情况 历史数据库模型的发展历程: 1.单机mysql-
2020-11-29 18:57:07
144
原创 Mysql调优
CBO基于成本优化 RBO基于规则优化 执行计划优化 explain关键字需要注意的几个列: select type 查询类型 type 至少是范围查询range possible key:可能用到的索引列 key:实际用到的索引列 key_len:所用到的索引长度 rows和filtered都是预估值 using indexi condition表示使用到了索引下推 索引优化 索引面试常问:索引分类 索引数据结构 索引数据结构的选择 回表 最左匹配 索引下推 索引优化 索引失效 聚簇索引和非聚
2020-11-09 22:48:57
184
原创 Mysql-事务及锁机制
事务的基本概念 数据库事务是构成单一逻辑工作单元的操作集合 注意点: 1.数据库事务可以包含一个或多个数据库操作,但这些操作构成一个逻辑上的整体 2.构成逻辑整体的这些数据库操作,要么全部执行成功,要么全部不执行 3.构成事务的所有操作,要么全部对数据库产生影响,要么全部都不产生影响,即数据库保持一致性状态 4.并发操作下,事务的控制尤为关键。 事务的种类: 基本事务 声明式事务 分布式事务 ACID Atomicity :事务中的所有操作作为一个整体像原子一样不可分 要么成功要么失败 快照保证原子性 un
2020-11-07 23:22:09
138
原创 Mysq主从复制和读写分离
Mysql主从复制和读写分离 原理 为什么需要主从复制? 1.试想在一个复杂的业务系统中,有一个场景 有一句sql需要锁表 导致暂时不能使用读的服务,那么就很影响运行中的业务,使用主从复制,让主库负责写,从库负责读,这样及时主库出现了锁表的情景,通过读从库也能保证业务的正常运作。 2.做数据的热备 3.业务量变大 单机无法满足做集群 做多库存储 降低磁盘IO 什么是mysql的主从复制? Mysql主从复制是指数据可以从一个Mysql数据库服务器主节点复制到一个或者是多个从结点。Mysql默认采用异步复制方
2020-11-07 17:16:24
117
原创 Mysql-索引的优化
索引的优化 回表:在innodb从其他字段索引查到主键,在回主索引那张表上面去找到记录的内容 索引覆盖:不需要回表的索引查找就叫做索引覆盖 最左匹配:只要查询条件的列中包含组合索引最左边的那一列,不管该列在查询条件中的位置,都会使用索引进行查询 索引下推: 例子:(name,age) 1.先根据name列从存储引擎中把符合规则的数据拉去到mysql的server层 2.在server层按照age进行数据过滤 1.直接从存储引擎拉取数据的时候直接按照name和age做判断,将符合的结果返回给mysql ser
2020-11-07 15:17:10
171
原创 Mysql面试总结-索引
常见索引面试题 1.数据库中最常见的慢查询优化方式是什么 2.为什么加索引能优化慢查询 3.哪些数据结构能够提高查询速度 4.为什么这些数据结构能优化查询速度 Mysql还要选择b+树 索引是什么 索引是帮助mysql高效获取数据的数据结构 索引存储在文件系统中 索引的文件存储形式与存储引擎相关 索引的结构: hash 二叉树 b树 b+树 hash存储的缺点 :需要将所有的数据文件添加到内存,比较耗费内存空间 范围查询用不了 二叉树/红黑树:无论是二叉树还是红黑树,都会因为树的深度过深而造成io次数变多,
2020-11-06 20:58:25
94
原创 红黑树个人总结
写在前面:看了好多文章解释红黑树 看得不明不白的 这里的红黑树总结是看了敖丙的文章总结来的 首先确定 红黑树的本质是对概念模型:2-3-4树的一种实现,因此先了解2-3-4树 2-3-4树: 2结点 节点里面存储一个数 左右指针分别存储大于结点值的子结点和大于结点值的子节点 3结点 结点里面存储两个数 有三个指针 分别指向小于最小结点值的字节点 介于最大结点值和最小结点值中间的子节点 和大于最大结点值得子节点 4结点以此类推 我们再来了解从2-3-4树到红黑树的转换 2结点对应红黑树中的黑色结点 而2-3
2020-11-06 02:29:54
240
原创 2020-11-03 春招复习
函数基础、函数种类、形实参及映射 耦合:各个代码块中重复的代码太多了 编程的基本原则:高内聚、低耦合 -> 模块的单一责任制 解耦合 -> 函数 //最基本的函数写法 - 函数声明 function test(参数){ 函数的执行语句; } 函数名的命名规则 //不能数字开头 //字母_$ //包含数字 //小驼峰命名 复合单词myWonderfulTest 在函数内声明变量的时候尽量不要这样写 var a = b = 1; 可能会造成b泄漏的问题 因为这里省略了 var b; 表达式
2020-11-03 22:44:48
155
原创 2020年11月02日14-47-03 卢禹龙春招准备
基本语法、规范、运算符、等 错误分为两大类:语法(SyntaxError:代码一句都不会执行)和通用:中断执行,在错误之前的语句都会执行 代码块与代码块之前的错误是互不影响的 括号运算>普通运算>赋值; +数学运算 任何数据类型的值 + 字符串都是字符串 var c=0/0; console.log©; NaN(数字类型) -> Not a Number非数 var c = 1/0 infinity -> 数字类型 -infinity - > 数字类型 比较运算符 numbe
2020-11-02 22:26:09
170
1
原创 2020年11月01日 卢禹龙春招前端学习准备
2020年11月01日12:38:45 卢禹龙春招前端学习准备 Javascript知识点 1.五大主流浏览器 内核 IE trident chrome webkit blink safari webkit firebox gecko opera presto在webkit上面嵌套的 2.浏览器的历史 和 js的诞生 2.1 1990年 蒂姆 博纳斯李 超文本分享资讯的人 world wide web移植到C libwww、nexus 允许别人浏览他人编写的网站 2.2 1993年 美国伊利诺大学NCS
2020-11-02 14:40:00
215
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人