命令模式

Redis的五种数据类型---String, Hash, List, Set, Zset

会有一股神秘感。 提交于 2020-02-04 23:39:56
前言 Redis有五种数据类型: String, Hash, List, Set, Zset,下面对对这几种类型作详细的介绍 一. String (相当于Java中的字符串) 1.1简介: string 是redis最基本的类型,一个key对应一个value string类型是二进制安全的,意思是redis的string可以包含任何数据。比如jpg图片或者序列化对象。 string 类型是Redis最基本的数据类型,一个键最大能存储512MB 二进制安全是指,在传输数据时,保证二进制数据的信息安全,也就是不被篡改,破译等。如果被攻击,能够及时检测出来。 二进制安全特点: <1>编码,解码发生在客户端完成,执行效率高 <2>不需要频繁的编解码,不会出现乱码 1.2 String命令: (命令不用区分大小写) 赋值语法: [1] Redis set 命令常用于设置key的值,如果key已存储值,set 就是写旧值,且无视类型 set key_name value [2] 只有在key不存在时设置key的值。 Setnx(SET if Not exists) 命令在指定的key不存在时,为key设置指定的值 setnx key value //(面试问题) 解决分布锁的方案之一 [3] 同时设置一个或多个key-value对 mset key value [key value....]

Docker Compose 30

点点圈 提交于 2020-02-04 22:34:22
Docker Compose 30 什么是 Docker Compose 概述 Docker Compose 安装与卸载 二进制包 PIP 安装 bash 补全命令 容器中执行 卸载 Docker Compose 使用 术语 场景 web 应用 Dockerfile docker-compose.yml 运行 compose 项目 Docker Compose 命令说明 命令对象与格式 命令选项 build config down exec help images kill logs pause port ps pull push restart rm run scale start stop top up version Docker Compose 模板文件 build cap_add, cap_drop command configs cgroup_parent container_name deploy devices depends_on dns dns_search tmpfs env_file environment expose external_links extra_hosts healthcheck image labels links logging network_mode networks pid ports secrets security_opt

tcpdump过滤某个端口

本小妞迷上赌 提交于 2020-02-04 19:59:54
一般我们使用Tcpdump时都是使用: Java 代码 tcpdump -i ethx www.2cto.com 下面这条命令就是查看80端口的访问量,进行排序,取前20位 Java代码 tcpdump -i eth0 -tnn dst port 80 -c 1000 | awk -F"." '{print $1"."$2"."$3"."$4}' | sort | uniq -c | sort -nr |head -20 过滤掉22端口 Java代码 tcpdump -i eth1 -s 1500 port not 22 tcpdump -i eth1 -s 1500 port not 22 and port not 53 tcpdump -i eth1 port not 22 and host 1.2.3.4 www.2cto.com 二、tcpdump详细用法 第一种是关于类型的关键字,主要包括host,net,port, 例如 host 210.27.48.2,指明 210.27.48.2是一台主机,net 202.0.0.0 指明 202.0.0.0是一个网络地址,port 23 指明端口号是23。如果没有指定类型,缺省的类型是host. 第二种是确定传输方向的关键字,主要包括src , dst ,dst or src, dst and src ,这些关键字指明了传输的方向

[TCP/HTTP]用tcpdump解决HTTP截包

耗尽温柔 提交于 2020-02-04 19:58:30
最近,要在MAC下跟踪一个HTTP协议的问题,没有强大的Fiddler之后,回归到tcpdump里面。 强大的一句话搞定 tcpdump -A host ** and port 80 一定要指定-A才能看到包的内容,再指定host与port即可 最后转一篇文章: [原创] 超级详细Tcpdump 的用法(原创) http://www.chinaunix.net 作者: jeffyan 发表于:2008-05-29 17:14:18 【 发表评论 】 【 查看原文 】 【 网络安全讨论区 】【 关闭 】 第一种是关于类型的关键字,主要包括host,net,port, 例如 host 210.27.48.2,指明 210.27.48.2是一台主机,net 202.0.0.0 指明 202.0.0.0是一个网络地址,port 23 指明端口号是23。如果没有指定类型,缺省的类型是host. 第二种是确定传输方向的关键字,主要包括src , dst ,dst or src, dst and src ,这些关键字指明了传输的方向。举例说明,src 210.27.48.2 ,指明ip包中源地址是210.27.48.2 , dst net 202.0.0.0 指明目的网络地址是202.0.0.0 。如果没有指明方向关键字,则缺省是src or dst关键字。 第三种是协议的关键字

linux创建文件/touch(最适合创建空文件)

最后都变了- 提交于 2020-02-04 18:04:35
目录 1、在 Linux 上使用重定向符(>)创建一个文件 2、 在 Linux 上使用 touch 命令创建一个文件 3、 在 Linux 上使用 echo 命令创建一个文件 4、 在 Linux 上使用 printf 命令创建一个新的文件 5、 在 Linux 中使用 cat 创建一个文件 6、 在 Linux 上使用 vi/vim 命令创建一个文件 7、在 Linux 上使用 nano 命令创建一个文件 8、 在 Linux 上使用 head 命令创建一个文件 9、 在 Linux 上使用 tail 创建一个文件 10、 在 Linux 上使用 truncate 命令创建一个文件 摘自 linux创建文件 1、在 Linux 上使用重定向符(>)创建一个文件 标准重定向符允许我们创建一个 0KB 的空文件。它通常用于重定向一个命令的输出到一个新文件中。在没有命令的情况下使用重定向符号时,它会创建一个文件。 但是它不允许你在创建文件时向其中输入任何文本。然而它对于不是很勤劳的管理员是非常简单有用的。只需要输入重定向符后面跟着你想要的文件名。 2、 在 Linux 上使用 touch 命令创建一个文件 touch 命令常用于将每个文件的访问和修改时间更新为当前时间。 如果指定的文件名不存在,将会创建一个新的文件。touch 不允许我们在创建文件的同时向其中输入一些文本

oracle监控参数

老子叫甜甜 提交于 2020-02-04 12:25:53
Sar –u 检查CPU的繁忙程度 列 说明 Usr 用户模式下cpu运行所占的百分比 Sys 系统模式下cpu运行所占的百分比 Wio 因为有进程等待块I/O而使cpu处于闲置状态所占百分比 Idle Cpu为闲置状态所占百分比 sar –u 10 8 第一个数字展示二次相邻的sar读取之间隔了多少秒,第二数字是打算好了让sar运行的次数。 较低的idel时间可能说明有些进程正消耗大量的cpu时间,或是说明cpu的处理能力不足。请使用ps或是top命令去找出cpu密集型的作业吧 写得很差,需要大量磁盘访问的查询,同样能够消耗大量的cpu资源 值得关注wio返回的高额数值与cpu的沉重负荷 展示的高额wio,即io等待时间,表明有磁盘争用的问题。可以用iostate命令来准确定位磁盘争用究竟发生在哪里 需要检查输出结果 较低的cpu空闲时间值 高比例的io等待时间 或是用wio>10来判断 Sys>15的瓶颈,这表明交换,调页或备份可能造成了瓶颈 异常高的usr 这可能是由于没有好好的给应用程序调过优,或是由于过度使用了cpu Sar –d命令找出i 大专栏 oracle监控参数 o问题 需要注意 Busy大于50%的设备 如果avwait大于avserv 不均衡的磁盘io负载 Busy和avque取值高表明存在着磁盘io瓶颈。 Sar –d 5 2

操作 Docker 容器 访问 Docker 仓库28

我是研究僧i 提交于 2020-02-04 12:07:23
操作 Docker 容器 28 启动容器 新建并启动 启动已终止容器 守护态运行 终止容器 进入容器 attach 命令 exec 命令 -i -t 参数 访问 Docker 仓库 Docker Hub 注册 登录 拉取镜像 推送镜像 自动创建 Docker 私有仓库 安装运行 docker-registry 容器运行 在私有仓库上传、搜索、下载镜像 注意事项 Ubuntu 16.04+, Debian 8+, centos 7 其他 容器是 Docker 又一核心概念。 简单的说,容器是独立运行的一个或一组应用,以及它们的运行态环境。对应的,虚拟机可以理解为模拟运行的一整套操作系统(提供了运行态环境和其他系统环境)和跑在上面的应用。 本章将具体介绍如何来管理一个容器,包括创建、启动和停止等。 启动容器 启动容器有两种方式,一种是基于镜像新建一个容器并启动,另外一个是将在终止状态( stopped )的容器重新启动。 因为 Docker 的容器实在太轻量级了,很多时候用户都是随时删除和新创建容器。 新建并启动 所需要的命令主要为 docker run 。 例如,下面的命令输出一个 “Hello World”,之后终止容器。 $ docker run ubuntu:14.04 /bin/echo 'Hello world' Hello world 这跟在本地直接执行 /bin

Postfix+Dovecot+MySQL搭建邮件服务器

拈花ヽ惹草 提交于 2020-02-04 11:47:36
网上有很多使用Postfix搭建邮件服务器的文章,但目前貌似没有看到较为完整的一篇。本例将尝试在Ubuntu系统中使用Postfix+Dovecot+MySQL搭建邮件服务器。 说到邮件服务器,网上有许多不同解决方案。Window操作系统下常见的邮件服务器有 hMailServer 、 MailEnable 、 EVOMailServer 、 Apache James(纯Java跨平台) 等。 而在Linux/Unix系统中常用的邮件服务器也有不少选择,最经典也是最常见的莫过于Postfix。这篇文章将会讲述如何在Ubuntu系统之下,通过 Postfix 、 Dovecot 、 MySQL 整合实现普通意义上「邮件服务器」的大部分功能。 开始之前 配置邮件服务器并不是一项简单的工作,其过程不仅需要一定的技术能力,同时也需要大家具有一定的耐心,同时也需要大家非常细心。为了能够「看懂」并「最终实践」这篇文章,大家还需要了解或掌握以下知识: Postfix: 是一个标准的MTA「Mail Transfer Agent」服务器,它负责通过SMTP协议管理发送到本机的邮件以及由本机发向外界的邮件。在本例中,Postfix会把邮件的本地投递工作「接受到邮件之后将邮件存档到本地磁盘」交给Dovecot的LMTP服务「Local Mail Transfer Protocol service」处理

vim 操作

点点圈 提交于 2020-02-04 09:47:03
1.单行复制19次 esc+yy+19p 2esc+:+u 回退 ctrl+r 3vim 文件名 +行数 :打开文件定义指定行数 4set number 显示行号 5异常处理 vi被强行退出 要删除佳欢文件才可继续执行 6vim 3种工作模式 命令模式 (复制粘贴翻页删除等) 末行模式(保存退出) 编辑模式(编辑文字) 命令 i 编辑 esc 命令 命令 : 末行 esc 命令 7vim 命令 h j k l 左 下 上 右 行内移动 w 后移一个 单词(不是字母) b前移 0行首 ^行首 $行尾 行数移动 gg文件顶部 G文件尾部 数字gg /数字G / 数字 移动到数字对应行 屏幕移动 ctrl+b上翻页 ctrl+f 下翻页 H屏幕顶部 M屏幕中间 L屏幕底部 段落移动 (以空行为准) {上一段 }下一段 括号切换 % 成对括号之间来回切换 选中文本命令(3种) v V ctrl+v u 撤销上次命令 ctrl+r 恢复撤销的命令 删除文本 x:删出光标所在字符或选中文件 d 删除移动命令对应的内容 dd删除光标所在行,ndd复制多行 D删除至尾行 复制和粘贴 y复制 yy复制一行 nyy复制多行 p粘贴 替换命令 r替换当前字符 R替换当前行光标后的字符 缩排和重复执行 >> 向右增加缩进 <<向左减少缩进 . 重复上次命令 查找命令 /str 查找str n向下找

Go_ go mod 命令解决墙的问题

给你一囗甜甜゛ 提交于 2020-02-04 00:35:24
简介 由于众所周知的原因,在下载一些库的时候会下载不了,比如 golang.org/x/... 相关的库。为此,网上出现了很多解决方案。 从 Go1.11 开始,Go 引入了 module,对包进行管理,通过 go mod 命令来进行相关操作。这里,我们基于 Go 目前最新版本 Go1.12,通过 module 来搭建 Goland 开发环境。 创建Project 打开 Goland,创建 project,左侧选择 Go Modules(vgo),在 Proxy 中输入: https://athens.azurefd.net (这是下载墙外包的关键),如果不行,试试输入 https://goproxy.io 编写测试代码 我们来试验通过 Colly 抓取数据 我们通过 Goland 创建一个 main.go 文件,粘贴上如下代码: package main import ( "fmt" "github.com/gocolly/colly" ) func main() { c := colly.NewCollector() // Find and visit all links c.OnHTML("a[href]", func(e *colly.HTMLElement) { e.Request.Visit(e.Attr("href")) }) c.OnRequest(func(r