13 chenyulancn

尚未进行身份认证

python、golang、linux、虚拟化、大数据

等级
博文 705
排名 1k+

logstash input output filter 插件总结

Logstash学习记录官方文档logstash2.3document:https://www.elastic.co/guide/en/logstash/current/index.html一:什么是Logstash1.logstash是什么?Logstash是有管道输送能力的开源数据收集引擎。它可以动态地从分散的数据源收集数据,并且标准化数据输送到你选择的目的地。它是一款日...

2019-03-28 11:17:11

python2 UnicodeDecodeError: 解决办法

在linux下,出现UnicodeDecodeError:'utf8'codeccan'tdecodebyte0xa3inposition14:invalidstartbyte错误,字符串变量str_value,有中文字符,进行str_value.decode('utf-8')操作时,出现错误原因在于:decode()第二个参数errors的默认值为严...

2019-03-07 13:32:35

TCP/IP和Socket的关系

要写网络程序就必须用Socket,这是程序员都知道的。而且,面试的时候,我们也会问对方会不会Socket编程?一般来说,很多人都会说,Socket编程基本就是listen,accept以及send,write等几个基本的操作。是的,就跟常见的文件操作一样,只要写过就一定知道。 对于网络编程,我们也言必称TCP/IP,似乎其它网络协议已经不存在了。对于TCP/IP,我们还知道TCP和U...

2019-02-20 10:07:39

mgo 批量插入--具体类型的切片 转 interface 切片解决办法

通过xml.Unmarshal获得一个[]Province然后想把它插到mongodb中,使用的是mgodriver。那么怎样将[]Province切片转为[]interface{}切片呢?法1.c:=session.DB(database).C("Provinces")varprovinces[]Provincevardocs[]interface{}...

2019-02-18 22:08:58

JVM上的随机数与熵池策略

在apache-tomcat官方文档:如何让tomcat启动更快 里面提到了一些启动时的优化项,其中一项是关于随机数生成时,采用的“熵源”(entropysource)的策略。他提到tomcat7的sessionid的生成主要通过java.security.SecureRandom生成随机数来实现,随机数算法使用的是”SHA1PRNG”privateStringsecureRan...

2019-02-01 13:42:21

关于Linux中文本出现^M问题的的原因分析和解决办法

之前遇到这么一个问题,在windows用Java程序生成的json数据放入Linux后对json数据进行处理出现数据不识别的情况,报错出现提示你所选中的数据不是标准的json结构,但是我将报错的json数据拿到json校验工具又能生成标准的json样式展示。当时百思不得其解,后来通过vim查看文本的时候发现每个json数据的最后有一个^M,而在正常情况下是不会看到这个的。  这里根本原因是编码...

2019-01-17 13:33:50

golang 截取指定长度的中英混合字符串无乱码实现

网上大部分使用 rune 实现中文无乱码截取,但这种方法适合纯中文字符串,并不适合中英文混合且不知道各多少个的情况。使用字符的最小存储单元,进行字符类型判定是比较好的解决办法。代码入下:funcSubstrByByte(strstring,lengthint)string{ bs:=[]byte(str)[:length] bl:=0 fori:=len(...

2018-12-21 16:16:41

shell脚本:base64加密、解密字符串并赋值给变量方法

几经波折才能够实现使用 base64 加密、解密字符串并赋值给变量。网上绝大多数是使用 echo 管道实现 加密和解密字符串的输出。代码如下:pwd=$(base64-d<<<MQo=)#解码in=$(base64<<<"123456")#加密另外一种方式:test=$(printf"%s""1234...

2018-11-22 15:41:48

ResourceBundle.getBundle 报错 Can't find bundle for base name 解决方法(eclipse中)

最近在学习ResourseBundle时遇到了“Can'tfindbundleforbasename”这个错误搞了很久才解决了。我的config.properties文件位置在java工程根目录下的config中;java工程目录结构如下,CheersJava(工程目录)-------src-------lib-------target-------confi...

2018-11-05 20:50:26

MongoDB 用时间筛选_id字段

下面的代码来自stackoverflow,在MongoDBshell中运行>functionobjectIdWithTimestamp(timestamp){//ConvertstringdatetoDateobject(otherwiseassumetimestampisadate)if(typeof(timestamp)...

2018-10-31 16:12:06

ZABBIX集成OneAlert实现高级告警压缩

前言《Zabbix集成OneAlert来实现短信、邮件、微信、电话告警》的技术文章,它帮助我们非常的轻松的支持了各种告警通知方式,但是存在一个严重的问题,我们经常接到各种相类似或者相关联告警,短信太多,难免会出现漏看情况,告警通知几乎变成垃圾短信。为此OneAlert提供了一个适配方案:【高级告警压缩】备注:OneAlert目前正在支持更多告警方式,例如:钉钉、webhook、QQ、APP...

2018-10-26 09:25:55

golang笔记——命令

1、GO命令一览  GO提供了很多命令,包括打包、格式化代码、文档生成、下载第三方包等等诸多功能,我们可以通过在控制台下执行go来查看内置的所有命令  下面来逐个介绍,也可以详细参考 https://github.com/hyper-carrot/go_command_tutorial 2、gobuild  这个命令可以直接使用,也可以带上代码包或源码文件使用。 ...

2018-10-21 22:31:52

Golang开发新手常犯的50个错误

《50ShadesofGo:Traps,Gotchas,andCommonMistakesforNewGolangDevs》原文地址:http://devs.cloudimmunity.com/gotchas-and-common-mistakes-in-go-golang/index.html一、初级1、不允许左大括号单独一行2、不允许出现未使用的变量...

2018-10-18 11:06:53

golang中json与struct中tag

使用 Golang的 encoding/json 库已经提供了很好的封装,可以让我们很方便地进行JSON数据的转换。Go语言中数据结构和JSON类型的对应关系如下表:golang类型 JSON类型 注意事项 bool JSONbooleans   浮点数、整数 JSONnumbers   字符串 JSONs...

2018-10-03 08:10:37

golang中使用 mongoDB ObjectId

ObjectIdmongoDB中存储的文档必须有一个”_id”键,这个键的值可以是任何类型的,默认是ObjectId对象。在一个集合里面,每个文档都有唯一的”_id”值,来确保集合里面每个文档都能被唯一标识。那么你可能会问,既然ObjectId的作用是用来标识文档,那为什么不用普通递增id呢?后文有解释。这就需要了解MongoDB的特点,MongoDB是一个基于分布式文件存储的数据库。因此在...

2018-09-30 15:09:00

Golang- import 导入包的语法

一、包的导入语法   在写Go代码的时候经常用到import这个命令用来导入包文件,看到的方式参考如下:   import(     "fmt"   )  然后在代码里面可以通过如下的方式调用   fmt.Println("helloworld")      上面这个fmt是Go语言的标准库,他其实是去GOROOT下去加载该模块...

2018-09-12 13:35:45

centos7 启动MongoDB 4.0 失败问题

1.首先检查文件  /etc/systemd/system/mongodb.service 是否存在,不存在则创建。2. 查看内容:[Unit]Description=High-performance,schema-freedocument-orienteddatabaseAfter=network.target[Service]User=rootExecStart...

2018-09-11 15:06:44

centos 7 上 yum 安装 vscode

rpm--importhttps://packages.microsoft.com/keys/microsoft.ascsh-c'echo-e"[code]\nname=VisualStudioCode\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\ngpgcheck=1\ngpgkey=...

2018-09-03 15:01:21

/usr/share/rubygems/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file -- re

创建Redis-Cluster集群时遇到的问题" /usr/share/rubygems/rubygems/core_ext/kernel_require.rb:55:in`require':cannotloadsuchfile--redis(LoadError)"如下图:解决办法:Ruby的redis接口没有安装,需要安装Redis接口,输入命令"gem...

2018-08-30 16:50:02

汉明距离——提高海量查询性能的方法

    汉明距离(Hammingdistance)两个字符串之间的汉明距离是指两个相等长度的字符串,对应位置上不同字符的个数。例子如下:A=abcdefB=adddef则A与B之间的汉明距离是2,因为第二位和第三位不同。虽然比较两个hash值的汉明距离非常快,但受不住数据的爆发式增长,在海量的数据中找出两个相似的hash值,性能也会慢慢变差,显然这种最基本的顺序查找...

2018-08-30 15:33:13
奖章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!