06 2019 档案
摘要:分布式系统:是一个硬件或软件组件分布在不同的网络计算机上,彼此间仅仅通过消息传递进行通信和协调的系统。 分布性 空间上随意分布,分布也会随时变动 对等性 数据副本服务副本:节点提供同样的服务 并发性 缺乏全局时钟空间上随意分布,通过消息进行通信。因此很难定义事件的先后 故障总会发生 1.1.3 分布
阅读全文
摘要:Paxos到zookeeper分布式一致性原理与实践 前言 第1章 分布式架构 1.1集中式到分布式 1.1.1 集中式的特点 1.1.2 分布式的特点 1.1.2 分布式环境中的问题 1.2 ACID到CAP/BASE 1.2.1 ACID 1.2.2 分布式事务 1.2.3 CAP 和 BASE
阅读全文
摘要:前言 什么是分布式一致性? 对一个副本更新的同时,确保其他副本也能更新,否则不同副本之间的数据将不再一致。 分布式一致性分类? 分布式系统达到一致性后是什么样的状态? 如果失去一致性约束,分布式系统是否可以依赖? 一味地追求一致性,对系统的整体架构和性能又有多大影响? 问题提出 不同产品对于一致性的
阅读全文
摘要:定义: 一组为了完成特点定功能的SQL语句集合,编译后存储在数据库中,可以通过指定存储过程形成并给出参数执行。 语法 create proc | procedure pro_name [{@参数数据类型} [=默认值] [output], {@参数数据类型} [=默认值] [output], ...
阅读全文
摘要:分析编译时间都为0 , 因为缓存了该执行计划。 SQL Server 执行时间: CPU时间:CPU执行语句的时间 占用时间:从磁盘读取数据,处理的总时间。(CPU时间+阻塞时间)
阅读全文
摘要:表数情况: CompanyBackup 803行 UserApplicationBackup 4.6w行 Company表Id非主键,有非聚集索引;UserApplication表CompanyId 有非聚集索引 Company.Id=UserApplication.CompanyId 一、 SQL
阅读全文
摘要:In this article we shall examine(检查调查检测考试) the two modes of data search and retrieval using indexes- index seek and index scan, and the differences be
阅读全文
摘要:MongoDB MySQL mycat 连接查询 视图 事务 事务隔离级别 锁 SQL语句执行过程 索引 数据页 分表分库 存储过程 锁 死锁、活锁、饥饿 预读,物理读,逻辑读 CPU时间 查询优化器 性能相关 SQL Server CPU时间 IN 和 EXIST测试 Index Seek 和 I
阅读全文
摘要:聚集索引: 逻辑顺序决定了物理存储顺序。每个表唯一存在一个。叶子结点就是数据节点。对于范围查询寻很友好。 非聚集索引: 聚集索引以外的,不唯一。叶子结点存储索引列数据和指针(指向数据)。 普通索引 唯一索引 全文索引 需不需要建立索引,要权衡索引带来的优势和不足。 优势:减少IO次数,提升查询性能
阅读全文
摘要:B树 定义: 是一种平衡的多路查找树; 一棵二m阶的B树,或为空树,或为满足下列特性的m叉树: B+树 B+树是B树的变型树。他们的差异在于:
阅读全文
摘要:分析对象,分析业务中各对象结构,行为。 设计原则 单一职责原则 职责单一 开放封闭原则 扩展开放,修改关闭 里氏替换原则 子类可替换父类的实例 接口隔离原则 接口隔离,不要将所有方法都扔到一个接口,使用多个专门功能的接口,而不是单一总接口 依赖倒转原则 依赖抽象,不要依赖具体 合成复用原则 简言之:
阅读全文
摘要:倒排 跳跃表 B数,B+树 平衡二叉树 AVL树 平衡二叉树子树高度差不超过1,为了保持高度平衡,添加和删除节点旋转较耗时。对于查询操作多的话AVL树优势还是比较大的。 红黑树 red-black tree 弱平衡二叉树,牺牲了部分平衡性以换取插入/删除操作时少量的旋转操作,增加和删除操作多的话re
阅读全文
摘要:刷题 常见算法 冒泡 折半 快排 堆排序 LRU (last recently used) 以时间为基础 LFU (last frequently used)以次数为基础
阅读全文
摘要:分布式理论系列 : Nginx:https://time.geekbang.org/course/intro/138;https://www.cnblogs.com/jingmoxukong/p/5945200.html GO:https://time.geekbang.org/course/int
阅读全文
摘要:CPU缓存结构 单核CPU 在单核CPU结构中,为了缓解CPU指令流水中cycle冲突,L1分成了指令(L1P)和数据(L1D)两部分,而L2则是指令和数据共存。 多核CPU 多核CPU的结构与单核相似,但是多了所有CPU共享的L3三级缓存。在多核CPU的结构中,L1和L2是CPU私有的,L3则是所
阅读全文
摘要:Java Memory Model 为什么需要JMM,它试图解决什么问题? happen-before保证多线程操作可见性的机制。 没有内存已执行模型的语言,依赖于处理器的内存一致性模型,不同处理器之间又有很大差异,导致同一个程序运行在不同机器上表现不一致。随着JAVA被运行在越来越多的平台,内存模
阅读全文
摘要:调优一定是针对特定场景、特定目标做的事情。 GC调优来说,首先就需要清除调优目标是什么? 从性能角度看,通常关注三个方面,内存占用(footprint)、延时(latency)和吞吐量(throughput),大多数情况调优会侧重于其中一个或者两个方面的目标,很少可以兼顾三个角度)。 除了以上通常三
阅读全文
摘要:保证一个类仅有一个实例,提供了唯一的全局访问点,控制全局访问;控制实例数量,节约了资源,对于频繁创建和销毁的对象,提高系统性能。 如线程池、打印机和显卡等的设备驱动。 要点 私有构造方法,避免被外部实例化 静态公开的获取唯一实例的方法 私有内部实例(对外部不可见,避免修改) 几种实现方式 饿汉类加载
阅读全文
摘要:死锁 死锁是一种特定的程序状态,在实体之间,由于循环依赖导致彼此一直处于等待状态,没有任何个体可以继续前进。会出现在多线程,多进程间。 死锁必要条件: 资源独占(互斥使用) 占有且等待,申请新资源的同时,保持原资源的占有 不可抢占,不能被强行夺取资源,只能主动释放 循环等待,P1等待P2占有的资源,
阅读全文

浙公网安备 33010602011771号