java面试杂记

· 杂记

数据库知识 4-1.数据库设计原则 单张数据表字段不宜超过20个,如果超过20个,需要考虑拆分表 数据表字段都应该是not null,如果有null值,需要考虑用无意义值填充 索引不应该过多,最多不需要超过6个 不过度遵守数据库范式,通过字段冗余来优化查询并减少表的关联 4-2.索引结构 索引的最左匹配原则,对于联合索引,查询条件必须从最左边开始匹配,否则索引失效,需要注意索引字段的顺序...

Read More →
#杂记

分布式中的一致性paxos算法以及其实现zab协议

· 杂记

分布式中的一致性paxos算法以及其实现zab协议 分布式最重要的问题就是如何解决,不同节点中数据的一致性。paxos算法就是最重要的解决这个问题的理论。 paxos基础 Quorum机制 Quorum机制是表示在分布式系统中,只要大于总数-被修改数时,就能读到修改值 Quorum是分布式系统中的一种机制,用来保证数据冗余和最终一致性的投票算法。Quorum机制不是一个强一致性的,无法保证每个...

Read More →
#paxos算法 #zab协议

《java8实战》读书笔记

· 杂记

《java8实战》读书笔记 主要是关于java8的一些笔记。 基础 java8中设计的三个编程概念 流处理 函数传递 并行与共享的可变数据 函数传递 行为参数化(函数传递)就是可以帮助你处理频繁变更的需求的一种软件开发模式 例1:用Comparator来排序 List<Integer> ls = Lists.newArrayList(12,13,14,15,16); //Comp...

Read More →
#java

gradle的安装与使用

· 杂记

gradle的安装与使用 由于新的项目大多是使用gradle进行依赖管理,因此在这里将其用法做一下总结 安装 主要步骤是: 下载安装包 配置环境变量 查看版本号 gradle -v 显示对应版本号表示安装成功 基础知识 gradle是一个基于Ant和Maven的理念的项目自动化构建工具。基于Groovy的特定领域语言(DSL)来声明项目设置。 gradle与maven的对比 灵...

Read More →
#gradle #编译工具

最长公共前缀_LeetCode08

· 算法

最长公共前缀_LeetCode08 题目 编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀,返回空字符串 “”。 示例 1: 输入: ["flower","flow","flight"] 输出: "fl" 示例 2: 输入: ["dog","racecar&quo...

Read More →
#LeetCode

mysql基础知识

· 文章收藏

mysql基础知识 收藏于三太子敖丙的数据库基础知识 这个公众号的原创文章非常不错,值得推荐 mysql的执行流程 主要分为一下几个流程: 连接器 查询缓存 分析器 优化器 执行器 执行引擎 连接器 连接器是负责和客户端建立连接、获取权限、维持和管理连接的。TCP连接成功之后,我们的连接是处于空闲状态的,可以通过来查看连接状态 show processlist 也可以查看服务端设置...

Read More →
#mysql