自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 常见问题

1. java -jar 报错:Error: Could not find or load main classpom.xml 中添加:```<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin<...

2019-10-17 09:48:58 66

原创 Helm 使用问题积累

1. helm install 报错:Error: error validating "": error validating data: the server could not find the requested resourceA:看下tiller pod 是否正常。2.

2019-10-10 17:38:50 121

原创 resolv.conf 中nameserver 、search 、domain解释

(1) nameserver x.x.x.x 指定DNS服务器的IP地址,可以为多个,换行写。(2) domain mydomain.com用来指定本地的域名,在没有设置search的情况下,search默认为domain的值。这个值可以随便配,目前在我看来,domain除了当search的默认值外,没有其它用途。也就说一旦配置search,那domain就没用了。(3) se...

2019-07-09 17:47:40 2715

原创 读书6 ---《万历十五年》

生平不读十五年,便称明粉也枉然。  作者:  [美] 黄仁宇 出版社: 中华书局副标题: 增订纪念本原作名: 1587, A Year of No Significance出版年: 2006-8 关注公众号(新新生活志) 回复 "书单" 可获取所有书籍下载信息。千本电子书免费下载:...

2019-01-05 19:46:58 168

原创 读书5 ---《看见》

看见世界,看见自己。 作者:  柴静出版社: 广西师范大学出版社出品方:理想国出版年: 2013-1-1豆瓣评分:8.8 关注公众号(新新生活志) 回复 "书单" 可获取所有书籍下载信息。千本电子书免费下载:...

2019-01-05 17:07:44 186

原创 读书4 ---《小王子》

每一个大人都曾经是孩子。作者:  安东尼·德·圣-埃克苏佩里出版社: 人民文学出版社原作名: Le Petit Prince译者: 马振聘 出版年: 2003-8 关注公众号(新新生活志) 回复 "书单" 可获取所有书籍下载信息。千本电子书免费下载:   ...

2019-01-05 15:10:56 149

转载 分布式系统中的幂等性

现如今我们的系统大多拆分为分布式SOA,或者微服务,一套系统中包含了多个子系统服务,而一个子系统服务往往会去调用另一个服务,而服务调用服务无非就是使用RPC通信或者restful,既然是通信,那么就有可能再服务器处理完毕后返回结果的时候挂掉,这个时候用户端发现很久没有反应,那么就会多次点击按钮,这样请求有多次,那么处理数据的结果是否要统一呢?那是肯定的!尤其再支付场景。 幂等性:就是用户对...

2018-12-27 20:41:00 123

原创 读书3 ---《1984》

多一个人看奥威尔,就多了一份自由的保障。 作者:  [英] 乔治·奥威尔 出版社: 吉林出版集团有限责任公司译者:  柳青 出版年: 2013-5页数: 274豆瓣评分:9.2 关注公众号(新新生活志) 回复 "书单" 可获取所有书籍下载信息。千本电子书免费下载: ...

2018-12-24 19:52:37 138

原创 读书2 ---《动物庄园》

 作者:[英]乔治.奥威尔出版社:上海译文出版社出版年:2007-3页数:119豆瓣评分:9.2 关注公众号(新新生活志)回复 "书单" 可获取所有书籍下载信息。千本电子书免费下载: ...

2018-12-23 20:08:45 313

原创 读书1--《白鹿原》

书名:白鹿原作者:陈忠实出版社:人民文学出版社出版年:2015-2页数:632豆瓣评分:9.5  关注公众号(新新生活志)回复 "书单" 可获取所有书籍下载信息。千本电子书免费下载: ...

2018-12-14 22:33:02 80

原创 yum 安装mysql

操作系统:Centos7.x# 卸载自带的mariadb[root@node1 ~]# yum remove -y maria*# 删除数据库文件[root@node1 ~]# rm -rf /var/lib/mysql*# 安装mysql yum源[root@node1 ~]# wget http://repo.mysql.com/mysql-community-rele...

2018-08-30 19:53:31 161

原创 defer、匿名函数和闭包

go中的defer在return之前执行,类似于析构函数,一般用在资源清理、关闭连接、释放锁等操作。多个defer的调用顺序和定义顺序相反,和析构函数类似。 闭包的含义:闭包是由函数及其相关引用环境组合而成的实体(即:闭包=函数+引用环境)。闭包在运行时可以有多个实例,不同的引用环境和相同的函数组合可以产生不同的实例。由闭包的实质含义,我们可以推论:闭包获取捕获变量相当于引用传递,而非值传递;对于...

2018-05-02 14:11:37 10943

转载 CRUSH算法

Ceph作为最近关注度比较高的统一分布式存储系统,其有别于其他分布式系统就在于它采用Crush(Controlled Replication Under Scalable Hashing)算法使得数据的存储位置都是计算出来的而不是去查询专门的元数据服务器得来的。另外,Crush算法还有效缓解了普通hash算法在处理存储设备增删时带来的数据迁移问题。接下面我会分三篇博文介绍这个重量级的算法,第一篇主...

2018-02-28 20:52:53 1138

原创 创建和使用私有仓库

环境:Centos7.21. 修改 Docker 配置 客户端和仓库之间使用 https 协议,默认 docker push 只能使用 127.0.0.1,如果需要支持外部 push 到此仓库需要对 Docker 的配置文件进行修改。修改配置文件: /etc/sysconfig/docker,OPTIONS 中加入需要的地址信息(私有仓库内/外网 IP):--insecure-registry I

2017-12-28 14:58:24 451

原创 利用老版本 Redis 漏洞获取服务器 root 权限。

1. 背景介绍redis 服务默认情况下是未配置密码的,如果所在服务器恰好开了外网则此时很容易借助 redis 的漏洞获取到目标服务器的 root 权限。 yum 安装的 3.x 系列的 redis 一般默认开启了 protected 模式,此时只能从 127.0.0.1 连接操作 redis-server: 如果远程连接上,则不能进行操作: 如果用户从本地连上 redis-serve

2017-12-26 19:41:48 5105

转载 https原理:证书传递、验证和数据加密、解密过程解析

我们都知道HTTPS能够加密信息,以免敏感信息被第三方获取。所以很多银行网站或电子邮箱等等安全级别较高的服务都会采用HTTPS协议。HTTPS简介HTTPS其实是有两部分组成:HTTP + SSL / TLS,也就是在HTTP上又加了一层处理加密信息的模块。服务端和客户端的信息传输都会通过TLS进行加密,所以传输的数据都是加密后的数据。具体是如何进行加密,解密,验证的,且看下图。

2017-12-01 12:28:22 630

原创 查看云厂商主机CPU超售

一般云厂商的服务器 CPU 都会进行超售,如果用工具测试出超售比为 0 或者接近 0 一般是不可信的,除非是虚拟机被调度到一台很空的物理机上(此时可以多测几台看看),一般是厂商做了 vcpu pin 设置,但实际是超售的。可以通过top 中的%st(steal time)查看超售情况。 st 的全称是 Steal Time ,就是 Xen Hypervisor 分配给运行在其它虚拟机上的任务的实际

2017-11-24 19:51:45 1119

原创 python 最佳实践--编辑器

本文讲解 python 常用编辑器vim在开发中的常用配置。1. 一键执行 将如下数据加入到vim配置文件vimrc最后,python文件保存后按F5即可执行程序,无需保存退出文件:"""""""""""""""""""""""Quickly Run""&

2017-11-23 21:10:22 1869

原创 python 最佳实践--常用小工具

1. 简单下载服务器 在需要下载的路径中执行如下命令:python -m SimpleHTTPServer此进程会在端口8000监听,访问IP:8000即可浏览到当前目录的文件: 点击文件即可进行下载。 也可直接对文件进行wget:wget 192.168.93.156:/8000/1.log2. JSON解析小工具# echo '{"age":10, "name":"name1"}' |

2017-11-23 20:52:34 3123

原创 测试 mysql 实际连接数

最近公司有部分产品从自己机房迁移到网易云,由虚拟机转到网易云的容器服务,另外本次迁移还涉及到几个 mysql 实例的迁移,由于自己机房中 mysql跑在物理机上,且每天会有业务的高峰,因此需要测试一下网易云关系数据库实例(以 mysql 为例)的一些指标。以 mysql 测试 myqsl 的实际连接数为例,mysql 版本5.5,规格 4 核 8 GB(网易云mysql默认连接数跟规格相关),此规格

2017-11-20 20:40:17 559

转载 RabbitMQ四种交换机

1. 简介RabbitMQ作为一个消息队列提供一个通用的消息发送和接收平台,并且保证消息在传输过程中的安全可靠。消息(Message)由Client发送,RabbitMQ接收到消息之后通过交换机转发到对应的队列上面。Worker会从队列中获取未被读取的数据处理。消息处理的过程有4种不同的交换机类型:直连交换机:Direct exchange扇形交换机:Fanout exchange主

2017-10-27 16:44:22 4029 1

原创 kafka(4)--使用Streams处理数据

1. 简介 Kafka Streams 是Kafka的客户端库, 用来做实时流处理和分析存储在Kafka代理服务器的数据。本文将演示如何运行这个流应用库。具体操作过程为:文件file-input.txt数据导入topic streams-file-input , 示例程序从topic streams-file-input中获取数据并计算各个单词的出现频率后将单词频率统计结果输出到topic str

2017-10-27 11:22:03 856

原创 kafka(3) -- 连接导入、导出数据

有些场景下Kafka需要使用其他来源的数据或导出Kafka的数据到其他系统,相对于许多系统需要编写定制集成的代码,使用Kafka连接到系统去导入或导出数据更加简单。Kafka Connect是包括在Kafka中一个工具,用来导入导出数据到Kafka。它是connectors的一个可扩展工具,其执行定制逻辑,用于与外部系统交互。本文介绍如何使用Kafka Connect做一些简单的连接器从一个文件导入

2017-10-26 17:47:24 2431

原创 Centos7安装postgresql

1. 环境 操作系统版本:Centos7.2 数据库版本:postgresql9.5.32. 安装1) 添加RPM yum install https://download.postgresql.org/pub/repos/yum/9.5/redhat/rhel-7-x86_64/pgdg-centos95-9.5-2.noarch.rpm2) 安装PostgreSQL 9.5 yum ins

2017-10-26 13:44:23 298

原创 [ERROR] Table gym_api_utf8/membership_students contains 2 indexes inside InnoDB, which is different

1. 问题描述 alter table add index(xxx);时出现此问题,mysql服务版本5.5。 新特性“Fast index creation in Innodb”未出现以前,Innodb中创建索引的流程如下: 通过创建一个新的空的带有要创建索引的表,然后拷贝存在的行到新表中,同时更新索引,当此时key没有排序时插入条目极慢。在所有的行都被拷贝完成以后,旧表被删除,新表被改名。

2017-10-26 13:24:52 366

原创 kafka(2)--多节点

多节点集群只是比单节点集群多了一些代理实例,其他并没有什么太大的变化,本文以本机三个节点为例搭建kafka集群。1. kafka程序准备下载程序:wget http://mirror.bit.edu.cn/apache/kafka/0.10.2.0/kafka_2.11-0.10.2.0.tgz解压:tar -zxvf kafka_2.11-0.10.2.0.tgzcd kafka_2.11

2017-10-24 21:11:48 1600

原创 kafka(1)--单节点

本文描述 Linux 上搭建单节点kafka,以Centos7.2为例。1. 准备kafka代码wget http://mirror.bit.edu.cn/apache/kafka/0.10.2.0/kafka_2.11-0.10.2.0.tgz 解压压缩包: tar -zxvf kafka_2.11-0.10.2.0.tgz cd kafka_2.11-0.10.2.0其中bin目录下存放了操

2017-10-24 19:41:41 295

原创 常见问题

1. .net core 不支持KeyedHashAlgotithm .net core 中不支持KeyedHashAlgorithm.Create方法,因此可以使用new 来替代。 代码://比如要使用HMACSHA1加密方法.//.net framework下// var algorithm = KeyedHashAlgorithm.Create("HMACSHA1")//.net co

2017-10-23 10:17:46 359

转载 nf_conntrack连接跟踪模块

nf_conntrack连接跟踪模块在iptables里,包是和被跟踪连接的四种不同状态有关的。它们分别是NEW,ESTABLISHED,RELATED和INVALID。后面我们会深入地讨论每一个状态。使用iptables的state模块可以匹配操作这几种状态,我们能很容易地控制“谁或什么能发起新的会话”。为什么需要这种状态跟踪机制呢?比如你的80端口开启,而你的程序被植入反弹式木马,导致

2017-10-20 10:38:04 27203 1

原创 Redis pipline

1. 简介 Redis本身是一个cs模式的tcp server, client可以通过一个socket连续发起多个请求命令。 每个请求命令发出后client通常会阻塞并等待redis服务端处理,redis服务端处理完后将结果返回给client。 redis的pipeline(管道)功能在命令行中没有,但redis是支持pipeline的,而且在各个语言版的client中都有相应的

2017-10-18 10:34:17 476

原创 mysql 共享表空间、独立表空间

1 简介    Innodb存储引擎可将所有数据存放于ibdata*的共享表空间,也可将每张表存放于独立的.ibd文件的独立表空间。    共享表空间以及独立表空间都是针对数据的存储方式而言的。    共享表空间:  某一个数据库的所有的表数据,索引文件全部放在一个文件中,默认这个共享表空间的文件路径在data目录下。 默认的文件名为:ibdata1  初始化为10M。

2017-10-14 15:17:50 2908

原创 Redis命令精要--列表

1. lpush 向列表插入数据 lpush l1 v12. rpush 列表中插入元素,与lpush方向相反 rpush l1 v13. lset 为列表中指定index设置设置值,即修改已有的数据。 lset l1 0 v1 设置index为0的位置值为v1 注:被lset的列表必须存在,否则报错。4. lpop 移除并返回列表的头元素(被移除的元素)。 lpop l15.

2017-10-12 17:07:21 167

原创 mysql 测试数据库employees导入

employees是mysql官方提供的测试库,安装步骤如下: 1. 下载库git clone https://github.com/datacharmer/test_db.git2. 导入测试库 从解压后的employees.sql中可以看到默认的存储引擎是InnoDB,可以根据需要进行修改,导入:mysql -t < employees.sql数据量较大,导入需要耗费一点时间。 查看数据库

2017-10-11 21:13:04 4098

原创 Redis 命令精要--哈希表

1.

2017-10-11 17:12:09 167

原创 Redis 命令精要--string

1. append 为指定的key的值追加数据,如果key不存在则会进行新建。 set k1 a append k1 bc2. bitcount 计算字符串中1的位数。 setbit bit1 0 1 setbit bit1 1 0 bitcount bit1 可以用来统计网站中每个用户的登录次数: setbit personID dayNumber 1; bitcount per

2017-10-11 17:11:15 152

原创 Redis 存储自定义的数据类型

Redis自带的基本类型的操作可以自行查阅资料,网上可以轻易找到很多的相关的资料。 存储自定义类型时需要进行序列化、反序列化。1. Java示例代码//定义需要存储的数据 StudentVo studentVo = newStudentVo(); studentVo.setId(student.getId()); studentVo.setApplyTeacherState(stude

2017-10-10 12:40:42 1342

原创 Python数据库连接池DBUtils.PooledDB

1. 未使用连接池连接mysqlimport MySQLdbconn = MySQLdb.connect(host = '127.0.0.1', user ='user1', passwd = 'your-password', db ='db1', port = 3306) cur = conn.cursor()SQL ="select * from t1"r = cur.execute(

2017-10-09 15:19:16 2304

原创 codeblocks for windows

1. 下载安装包 官网下载包含编译器的二进制安装包。 建议下载包含编译器的安装包,否则编译器需要额外安装配置。2. 安装二进制包 下载完成后,双击安装即可,安装完毕后需要配置一下编译器的路径: setting->Complier->Gloabl complier setting->gnu gcc compiler->Toolchain executable,选择安装目录为MinGW(编译器安

2017-10-09 08:14:49 154

原创 测试服务器UDP/TCP丢包率

1. 测试UDP丢包率 30个现成以5Mbps速度测试60siperf -u -c 目的IP -b 5M -P 30 -t 602. 测试TCP丢包率iperf -c 目的IP -b 5M -P 30 -t 60

2017-10-09 08:09:00 11370 2

原创 Redis 命令精要--key相关命令

1. expire 为key设置生存时间。 expire 的时间值可以被set、getset、del、persist覆盖或者删除,rename、hset对expire无影响。 此命令在redis2.4延时在1s内,redis2.6延时在1ms内。2. expireat 与expire一样都是为key设置生存时间,区别在于expireat中时间为unix时间戳,ttl时返回的时间也为时间戳。3

2017-09-27 17:25:58 423

提示
确定要删除当前文章?
取消 删除