iptables
参考文献
iptables 及 docker 容器网络分析
iptables详解(1): iptables概念
iptables
聊聊Iptables 的五表五链,你学会了吗?
企业防火墙之iptables
iptables
iptables有一个很重要的设置概念就是5表5链
一个filter表,一个nat表,一个mangle表,一个raw表,一个security.它们分别作用于不同的方向,
filter表: 此表用于数据包过滤.它有三个内置链: INPUT(用于本地传递的数据包),FORWARD(用于通过系统路由的数据包)和 OUTPUT(用于本地生成的数据包)
内核模块: iptable_filter
nat表network address translation,网络地址转换功能;
此表用于网络地址转换(nat).它有三个内置链: PREROUTING(用于到达网络接口的数据包),INPUT(用于本地生成的数据包)和 OUTPUT(用于离开网络接口的数据包)
内核模块: iptable_nat
NAT又分为SNAT(Source NAT)和DNAT(De ...
Nginx遇到问题
起始页为403 Forbidden
由于启动用户和nginx工作用户不一致所致
看nginx的启动用户,发现是nobody,而为是用root启动的
ps aux | grep "nginx: worker process" | awk '{print $1}'
解决方法: 将nginx.config的user改为和启动用户一致
12vi conf/nginx.conf// 修改 user 配置项
缺少index.html或者index.php文件,就是配置文件中index index.html index.htm这行中的指定的文件。
权限问题,如果nginx没有web目录的操作权限,也会出现403错误。
解决办法:修改web目录的读写权限,或者是把nginx的启动用户改成目录的所属用户,重启Nginx即可解决
SELinux设置为开启状态(enabled)的原因。
查看当前selinux的状态 /usr/sbin/sestatus
将SELINUX=enforcing修改为SELINUX=disabl ...
Redis-持久化
Redis持久化
持久化(Persistence),即把数据(如内存中的对象)保存到可永久保存的存储设备中(如磁盘)。持久化的主要应用是将内存中的对象存储在数据库中,或者存储在磁盘文件中、XML数据文件中等等。
还可以从如下两个层面简单的理解持久化:
应用层:如果关闭(shutdown)你的应用然后重新启动则先前的数据依然存在。
系统层:如果关闭(shutdown)你的系统(电脑)然后重新启动则先前的数据依然存在。
Redis为什么要持久化
Redis是内存数据库,为了保证效率所有的操作都是在内存中完成。数据都是缓存在内存中,当你重启系统或者关闭系统,之前缓存在内存中的数据都会丢失再也不能找回。因此为了避免这种情况,Redis需要实现持久化将内存中的数据存储起来。
Redis如何实现持久化?
Redis官方提供了不同级别的持久化方式:
RDB持久化:能够在指定的时间间隔能对你的数据进行快照存储。
AOF持久化:记录每次对服务器写的操作,当服务器重启的时候会重新执行这些命令来恢复原始的数据,AOF命令以redis协议追加保存每次写的操作到文件末尾。Redis还能对 ...
Redis-主从复制
参考文献
极客时间专栏: Redis核心技术与实战
Redis主从复制
参与复制的Redis实例划分为主节点(master)和从节点(slave).
主从复制的开启,完全是在从节点发起的;不需要我们在主节点做任何事情.
默认情况下,Redis都是主节点.每个从节点只能有一个主节点,而主节点可以同时有多个从节点.
复制的数据流是单向的,只能由主节点复制到从节点;
Redis主从复制的作用
数据冗余:主从复制实现了数据的热备份,是持久化之外的一种数据冗余方式.
故障恢复:当主节点出现问题时,可以由从节点提供服务,实现快速的故障恢复;实际上是一种服务的冗余.
负载均衡:在主从复制的基础上,配合读写分离,可以由主节点提供写服务,由从节点提供读服务,分担服务器负载;尤其是在写少读多的场景下,通过多个从节点分担读负载,可以大大提高Redis服务器的并发量.
高可用基石:主从复制还是哨兵和集群能够实施的基础,因此说主从复制是Redis高可用的基础.
Redis 的同步机制
Redis 可以使用主从同步,从从同步.第一次同步时,主节点做一次 bgsave,并同时将后续修改操作记录到内 ...
Redis-数据结构以及使用场景
参考文献
一口气说出Redis 5种数据结构及对应使用场景,面试要加分的
《Redis开发与运维》
3w字深度好文|Redis面试全攻略,读完这个就可以和面试官大战几个回合了
极客时间专栏: Redis核心技术与实战
Redis数据结构以及使用场景
数据结构和内部编码
对外常用的数据结构: string(字符串),hash(哈希),list(列表),set(集合),zset(有序集合);
Redis底层的数据结构: 简单动态数组SDS、链表、字典、跳跃链表、整数集合、压缩列表、对象.
查看内部编码:object encoding key
数据结构
结构源码位置
内部编码
raw
string
src/sds.h和src/sds.c
int
embstr
hash
src/dict.h
hashtable
ziplist压缩列表
list
linkedlist双端队列表
ziplist压缩列表
quicklist
set
hashtable
intset
sorted set
src/t_z ...
Redis-特性以及运维操作
Redis特性以及使用场景
Redis的特性
速度快
Redis所有数据都放在内存中;
Redis是用C语言实现的,一般来说C语言实现的程序离操作系统更近,执行速度相对会更快;
Redis使用了单线程架构,预防了多线程可能产生的竞争问题;
基于键值对的数据结构服务器
Redis 全称为REmote Dictionary Server,它主要提供了5种数据结构:字符串、哈希、列表、集合、有序列表,同时在字符串的基础上演变出了位图(Bitmaps)和HyperLogLog,随着(LBS[Location Based Service 基于位置服务]的发展,Redis3.2版本中加入了有关**GEO(地理信息定位)**的功能.
丰富的功能
提供了键过期功能,可以用来实现缓存;
提供发布订阅功能,可以实现消息系统;
支持Lua脚本,可以利用Lua创造新的Redis命令;
提供了简单的事务功能,能在一定程度上保证事务特性;
提供了**流水线(Piepeline)**功能,客户端可以将一批命令一次性传到Redis中,减少了网络的开销;
简单稳定
客户端语言多
Redis提供了简 ...
Docker-杂项
参考文献
docker扫盲,面试连这都不会就等着挂吧!
Ubuntu离线安装NVIDIA Docker
Docker开启远程安全访问
Docker基础概念与操作
Docker核心概念: 镜像,容器,仓库.
镜像是Docker容器启动的先决条件.
容器是镜像的运行实体,镜像是静态的只读文件,容器带有运行时需要的可写文件层,并且容器中的进程存于运行状态.即容器运行着真正的应用程序.
仓库用来存储和分发Docker镜像.镜像仓库分为公共镜像仓库和私有镜像仓库.
镜像,容器,仓库三者之间的关系
镜像是容器的基石,容器是由镜像创建的.
一个镜像可以创建多个容器,容器是镜像运行的实体.
仓库用来存放和分发镜像的.
安装Docker
123456789101112131415161718192021curl -fsSL https://get.docker.com | sudo sh -s -- --mirror Aliyunsudo usermod -aG docker $USERsudo mkdir -p /etc/dockersudo tee /etc/docker/dae ...
Elasticsearch字段类型
ElasticSearch 字段类型
普通类型
binary: Binary value encoded as a Base64 string.
The binary type accepts a binary value as a Base64 encoded string. The field is not stored by default and is not searchable:
BINARY类型接受二进制值作为Base64编码字符串。默认情况下,该字段不存储且不可搜索
The following parameters are accepted by binary fields:
参数名称
说明
doc_values
字段是否应该以跨列方式存储在磁盘上,以便以后可以用于排序、聚合或编写脚本?接受true或false
store
字段值是否应与_source字段分开存储和检索。接受true或false
123456789101112131415161718192021PUT my-index-000001{ "mappin ...
ElasticSearch(二)-结构化搜索
参考文献
白日梦的Elasticsearch笔记—进阶篇、32种查询方法、15中聚合方式、7种优化后的查询技巧
目录
搜索基本信息
使用URL限制搜索范围
搜索请求的基本模块
基于URL的搜索请求
基于请求主体的搜索请求
搜索用途
精确值检索
term
bool fliter
terms
terms_set
范围检索
range
存在与否检索
exists
前缀检索
prefix
通配符检索
wildcard
正则表达式检索
regexp
模糊检索
fuzzy
ID检索
ids
全文检索
分词全文检索 match
短语检索match_phrase
间隔检索intervals
短语前缀检索: match_phrase_prefix
多字段匹配检索: multi_match
query_string
simple_query_string
match_boolean_prefix
复合检索
固定得分检索 constant_score
改变评分检索
dis_max
function_score ...