07 2019 档案
摘要:一、并发控制 为啥要进行并发控制? 并发的任务对同一个临界资源进行操作,如果不采取措施,可能导致不一致,故必须进行并发控制(Concurrency Control)。 技术上,通常如何进行并发控制? 通过并发控制保证数据一致性的常见手段有: 锁(Locking) 数据多版本(Multi Versio
阅读全文
摘要:分布式系统的CAP理论是由Eric Brewer于1999年首先提出的,又被称作布鲁尔定理(Brewer's theorem),CAP是对Consistency(一致性)、Availability(可用性)、Partition tolerance(分区容忍性)的一种简称,如下图所示: 它指出对于一个
阅读全文
摘要:Nginx的产生 没有听过Nginx?那么一定听过它的"同行"Apache吧!Nginx同Apache一样都是一种WEB服务器。基于REST架构风格,以统一资源描述符(Uniform Resources Identifier)URI或者统一资源定位符(Uniform Resources Locato
阅读全文
摘要:RSA加密算法简介 SA加密算法是一种非对称加密算法。在公开密钥加密和电子商业中RSA被广泛使用。对极大整数做因数分解的难度决定了RSA算法的可靠性。换言之,对一极大整数做因数分解愈困难,RSA算法愈可靠。假如有人找到一种快速因数分解的算法的话,那么用RSA加密的信息的可靠性就肯定会极度下降。但找到
阅读全文
摘要:一、前言 中大型项目中,一旦遇到数据量比较大,小伙伴应该都知道就应该对数据进行拆分了。有垂直和水平两种。 垂直拆分比较简单,也就是本来一个数据库,数据量大之后,从业务角度进行拆分多个库。如下图,独立的拆分出订单库和用户库。 水平拆分的概念,是同一个业务数据量大之后,进行水平拆分。 上图中订单数据达到
阅读全文
摘要:数据库表结构: create table user ( id int primary key, name varchar(20), sex varchar(5), index(name) )engine=innodb; select id,name where name='shenjian' sel
阅读全文
摘要:1:数据库 2:主流框架:Spring、myBatis、springboot、docker等 3:中间件:redis、zookeeper等 4:全文搜索引擎:ElasticSearch 5:服务器知识 6:网络
阅读全文
摘要:数据库字段允许空值,会遇到一些问题,此处包含的一些知识点,和大家聊一聊。 数据准备: 说明: id为索引,非唯一(non unique),允许空(null)。 知识点1(热身):负向查询不能命中索引,会导致全表扫描。 索引字段id上的不等于查询,如上图所示: (1)type=ALL,全表扫描; (2
阅读全文
摘要:问题1. 数据库为什么要设计索引? 图书馆存了1000W本图书,要从中找到《架构师之路》,一本本查,要查到什么时候去? 于是,图书管理员设计了一套规则: (1)一楼放历史类,二楼放文学类,三楼放IT类… (2)IT类,又分软件类,硬件类… (3)软件类,又按照书名音序排序… 以便快速找到一本书。 与
阅读全文
摘要:explain结果中有一个Extra字段,对分析与优化SQL有很大的帮助 数据准备: 数据说明: 用户表:id主键索引,name普通索引(非唯一),sex无索引; 四行记录:其中name普通索引存在重复记录lisi; 实验目的: 通过构造各类SQL语句,对explain的Extra字段进行说明,启发
阅读全文
摘要:问题:explain结果中的type字段代表什么意思? MySQL的官网解释非常简洁,只用了3个单词:连接类型(the join type)。它描述了找到所需数据使用的扫描方式。 最为常见的扫描方式有: system:系统表,少量数据,往往不需要进行磁盘IO; const:常量连接; eq_ref:
阅读全文
摘要:HTTP请求报文格式就如下图所示: 1. 请求报文 一个HTTP请求报文由请求行(request line)、请求头部(header)、空行和请求数据4个部分组成。 大致结构是这样的: 一个简单的例子: 1.1 请求行 请求行由三部分组成:请求方法,请求URL(不包括域名),HTTP协议版本 请求方
阅读全文
摘要:一:采用sqlplus连接登录(确保安装了sqlplus) 1:先登陆进入到oracle的数据库的服务器环境下 2:切换到sqlplus操作: sqlplus /nolog 3:conn /as sysdba 4:连接我们具体想要操作的数据库用户 conn username/passwd@IP:po
阅读全文
摘要:线上问题诸如: 1、线上服务器CPU占用率高如何排查? 2、线上服务器Load飙高如何排查? 3、线上服务器频繁发生Full GC如何排查? 4、线上服务器发生死锁如何排查? 一:线上服务器CPU占用率高如何排查? 问题发现: 在每次大促之前,我们的测试人员都会对网站进行压力测试,这个时候会查看服务
阅读全文
摘要:名词解释 PV Page View,网页浏览量。网页被读者调用浏览的次数。网页每次打开或刷新一次页面,记录一次。用户对同一页面的多次访问,访问量累计。 UV Unique Visitor,独立访问者。是指通过互联网访问、浏览这个网页的自然人。在一定时间内,访问网站的不同访客的数量,且每个访客只被统计
阅读全文
摘要:杀僵尸进程 部分程序员,肯定喜欢下面命令: ps -ef | grep java (先查java进程ID) kill -9 PID(生产环境谨慎使用) kill、killall、pkill命令的区别 kill:通过pid来杀死进程 killall (killall [参数] [进程名]):Linux
阅读全文
摘要:对于一些数据量较大的系统,数据库面临的问题除了查询效率低下,还有就是数据入库时间长。特别像报表系统,每天花费在数据导入上的时间可能会长达几个小时或十几个小时之久。因此,优化数据库插入性能是很有意义的。 经过对MySQL InnoDB的一些性能测试,发现一些可以提高insert效率的方法,供大家参考参
阅读全文