反码补码 原码:第一位表示符号位,0是正,1是负。其余表示值。 反码:正数的反码和原码相同。负数时第一个符号位不变,其他取反。 补码:正数的补码与
cicd工作原理 gitlab-runner 使用流程 安装gitlab服务器 安装gitlab-runner 注册gitlab-runner,在这个步骤中,我们要知道执行器
UUID UUID是由一组32位数的16进制数字所构成,所以UUID理论上的总数为16^32=2^128。 以连字号分为五段,形式为8-4-4-4-1
配置文件 一份标准配置文件应该包含 version、services、networks 三大部分,其中最关键的就是 services 和 networks 两个部分。 version: '2' services: web: image: dockercloud/hello-world ports: -
平衡二叉树 平衡二叉树是基于二分法的策略提高数据的查找速度的二叉树的数据结构。 特点 非叶子节点只能允许最多两个子节点存在。 每一个非叶子节点数据分
安装启动 elasticsearch需要依赖jdk elastic默认是9200端口 ctrl+c elastic就会停止 默认情况下,Elastic 只允许本机
es mysql同步 go-mysql-elasticsearch是用于同步mysql数据到ES集群的一个开源工具。 go-mysql-elasti
普通hash 假如现在需要向4个redis存取图片,以图片的名字为key,value为图片实际存放的路径,我们可以取到key的hash值,然后
linux主要目录 /bin 放二进制文件,都是可以运行的 /lib 存放系统最基本的动态连接共享库 /dev 放置外接设备,光盘u判断等,外接设备是不能直接使用的,需要
用户空间与内核空间 现在操作系统都是采用虚拟存储器,那么对32位操作系统而言,它的寻址空间(虚拟存储空间)为4G(2的32次方)。操作系统的核
gzip 压缩单个文件 gzip命令的使用方式很简单,命令后直接跟输入文件即可,gzip命令压缩后默认会覆盖源文件,生成以.gz为后缀的文件。 命令加-
nsq消息队列 NSQ是一个基于Go语言的分布式实时消息平台,它基于MIT开源协议发布,由bitly公司开源出来的一款简单易用的消息中间件。 Features
简介 RabbitMQ是一个实现了AMQP(Advanced Message Queuing Protocol)高级消息队列协议的消息队列服务,用Erlang语言的。 在我们
认证鉴权 HTTP协议是无状态的和Connection: keep-alive的区别: 无状态是指协议对于事务处理没有记忆能力,服务器不知道客户端
排序 我们通常所说的排序算法往往指的是内部排序算法,即数据记录在内存中进行排序。 排序算法大体可分为两种: 一种是比较排序,时间复杂度O(nlog
动态字符串 redis是C语言编写,但是字符串并不是简单地的C字符串。它是SDS(simple dynamic string)。 /* * 保存字符串对象的结构 */ struct sdshdr
主从 需要注意,主从复制的开启,完全是在从节点发起的;不需要我们在主节点做任何事情。 从节点开启主从复制,有3种方式: (1)配置文件 在从服务器的
上篇主要讲到redis的基础命令,这篇涉及到redis的配置、持久化、主从、事务、内存淘汰策略 redis的配置 启动redis服务器的时候会指
此篇主要介绍redis的一些机制 expire删除机制 大家有没有想过redis是怎么实现key的过期删除的,作为有经验的开发人员,也许大家很容
缓存穿透 概念 访问一个不存在的key,缓存不起作用,请求会穿透到DB,流量大时DB会挂掉。 解决方案 第一种:采用布隆过滤器,使用一个足够大的bi