w1100n
This site is best viewed in Google Chrome
wiloon, 3/24/2019 11:49

# 生成私钥 openssl genrsa -out server.key 2048 openssl req -new -key server.key -out server.csr # Common Name: 输入 *.wiloon.com 这种方式生成通配符域名证书 # A challenge password: 密码可以留空 # 查看证书请求文件的内容 openssl req -text -noout -in server.csr openssl x509 -req -in server.csr -out server.crt … Continue reading

wiloon, 3/21/2019 22:18

Binary operators (MACAO) Prio Operators Note 1 * / % << >> & &^ Multiplicative 2 + – ^ Additive 3 == != < <= > >= Comparison 4 && And 5 | Or

wiloon, 3/21/2019 12:04

从奇偶校验说起 所谓通讯过程的校验是指在通讯数据后加上一些附加信息,通过这些附加信息来判断接收到的数据是否和发送出的数据相同。比如说RS232串行通讯可以设置奇偶校验位,所谓奇偶校验就是在发送的每一个字节后都加上一位,使得每个字节中1的个数为奇数个或偶数个。比如我们要发送的字节是0x1a,二进制表示为0001 1010。 采用奇校验,则在数据后补上个0,数据变为0001 1010 0,数据中1的个数为奇数个(3个) 采用偶校验,则在数据后补上个1,数据变为0001 1010 1,数据中1的个数为偶数个(4个) 接收方通过计算数据中1个数是否满足奇偶性来确定数据是否有错。 奇偶校验的缺点也很明显,首先,它对错误的检测概率大约只有50%。也就是只有一半的错误它能够检测出来。另外,每传输一个字节都要附加一位校验位,对传输效率的影响很大。因此,在高速数据通讯中很少采用奇偶校验。奇偶校验优点也很明显,它很简单,因此可以用硬件来实现,这样可以减少软件的负担。因此,奇偶校验也被广泛的应用着。 奇偶校验就先介绍到这来,之所以从奇偶校验说起,是因为这种校验方式最简单,而且后面将会知道奇偶校验其实就是CRC 校验的一种(CRC-1)。 累加和校验 另一种常见的校验方式是累加和校验。所谓累加和校验实现方式有很多种,最常用的一种是在一次通讯数据包的最后加入一个字节的校验数据。这个字节内容为前面数据包中全部数据的忽略进位的按字节累加和。比如下面的例子: 我们要传输的信息为: 6、23、4 加上校验和后的数据包:6、23、4、33 这里 33 为前三个字节的校验和。接收方收到全部数据后对前三个数据进行同样的累加计算,如果累加和与最后一个字节相同的话就认为传输的数据没有错误。 累加和校验由于实现起来非常简单,也被广泛的采用。但是这种校验方式的检错能力也比较一般,对于单字节的校验和大概有1/256 的概率将原本是错误的通讯数据误判为正确数据。之所以这里介绍这种校验,是因为CRC校验在传输数据的形式上与累加和校验是相同的,都可以表示为:通讯数据 校验字节(也可能是多个字节) 初识 CRC 算法 CRC 算法的基本思想是将传输的数据当做一个位数很长的数。将这个数除以另一个数。得到的余数作为校验数据附加到原数据后面。还以上面例子中的数据为例: 6、23、4 可以看做一个2进制数: 0000011000010111 00000010 假如被除数选9,二进制表示为:1001 https://blog.csdn.net/liyuanbhu/article/details/7882789

wiloon, 3/21/2019 11:15

http://www.01happy.com/golang-base64-encode-decode/ golang中base64编码和解码 Golang 3年前 (2016-08-05) 1011浏览 0评论 golang中base64的编码和解码可以用内置库encoding/base64 package main import ( “encoding/base64” “fmt” “log” ) func main() { input := []byte(“hello golang base64 快乐编程http://www.01happy.com +~”) // 演示base64编码 encodeString := base64.StdEncoding.EncodeToString(input) fmt.Println(encodeString) // 对上面的编码结果进行base64解码 decodeBytes, err := base64.StdEncoding.DecodeString(encodeString) if err … Continue reading

wiloon, 3/21/2019 10:43

##bytes.buffer是 bytes.buffer是一个缓冲byte类型的缓冲器,这个缓冲器里存放着都是byte ##创建一个缓冲器 ###NewBuffer 如果在使用bytes.NewBuffer的时候,参数是[]byte的slice的话 缓冲器里就是这个slice的内容,如果参数是nil的话,意思是New一个空的缓冲器里 ###NewBufferString 还可以用bytes.NewBufferString(“hello”)来建立一个内容是hello的缓冲器 buf1:=bytes.NewBufferString(“hello”) buf2:=bytes.NewBuffer([]byte(“hello”)) buf3:=bytes.NewBuffer([]byte{“h”,”e”,”l”,”l”,”o”}) 以上三者等效 buf4:=bytes.NewBufferString(“”) buf5:=bytes.NewBuffer([]byte{}) 以上两者等效 如果buffer在new的时候是空的也没关系,因为可以用Write来写入,写在尾部 ##写入到缓冲器(缓冲器变大) ###Write—- func (b *Buffer) Write(p []byte) (n int, err error) 使用Write方法,将一个byte类型的slice放到缓冲器的尾部 https://my.oschina.net/u/943306/blog/127981

wiloon, 3/19/2019 12:29

https://www.infoq.cn/article/Hx61r30V8*Ur5ltrQjXu?utm_source=rss&utm_medium=article https://openjdk.java.net/jeps/343 OpenJDK 社区发布了JEP 343:打包工具的早期访问版本。JEP 343:打包工具,又名 jpackage,是打包自包含 Java 应用程序和 Java 运行时环境的新工具。这个基于JavaFX javapackager 工具的原型适用于对 jpackage 感兴趣的开发人员。

wiloon, 3/19/2019 10:52

https://blog.csdn.net/raoqin/article/details/8875089 []:内的内容意思是:可写可不写 例如:/home下就一个list 文件,使用ls –help中的 Usage: ls [OPTION]… [FILE]… {}:那就必须要在{}内给出的选择里选一个。 <>:表示必选 在数据库中 Transact-SQL 语法规则 Transact-SQL 引用中的语法关系图使用下列规则。 规范 用于 大写 Transact-SQL 关键字。 斜体 Transact-SQL 语法中用户提供的参数。 | (竖线) 分隔括号或大括号内的语法项目。只能选择一个项目。 [ ] (方括号) 可选语法项目。不必键入方括号。 {}(大括号) 必选语法项。不要键入大括号。 [ ,…n ] 表示前面的项可重复 n 次。每一项由逗号分隔。 [ … Continue reading

wiloon, 3/18/2019 18:16

相同点: 1.truncate和不带where子句的delete、以及drop都会删除表内的数据。 2.drop、truncate都是DDL语句(数据定义语言),执行后会自动提交。 不同点: truncate 和 delete 只删除数据不删除表的结构(定义) drop 语句将删除表的结构被依赖的约束(constrain)、触发器(trigger)、索引(index);依赖于该表的存储过程/函数将保留,但是变为 invalid 状态。 delete 语句是数据库操作语言(dml),这个操作会放到 rollback segement 中,事务提交之后才生效;如果有相应的 trigger,执行的时候将被触发。 truncate、drop 是数据库定义语言(ddl),操作立即生效,原数据不放到 rollback segment 中,不能回滚,操作不触发 trigger。 3.delete 语句不影响表所占用的 extent,高水线(high watermark)保持原位置不动 drop 语句将表所占用的空间全部释放。 truncate 语句缺省情况下见空间释放到 minextents个 extent,除非使用reuse storage;truncate 会将高水线复位(回到最开始)。 4.速度,一般来说: drop> truncate > … Continue reading

wiloon, 3/18/2019 18:15

我们经常要将数字进行格式化,比如取2位小数,这是最常见的。Java 提供 DecimalFormat 类,帮你用最快的速度将数字格式化为你需要的样子。下面是一个例子: importjava.text.DecimalFormat;    publicclassTestNumberFormat{      publicstaticvoidmain(String[]args){     doublepi=3.1415927; //圆周率     //取一位整数     System.out.println(newDecimalFormat(“0”).format(pi));   //3     //取一位整数和两位小数     System.out.println(newDecimalFormat(“0.00”).format(pi)); //3.14     //取两位整数和三位小数,整数不足部分以0填补。     System.out.println(new DecimalFormat(“00.000”).format(pi));// 03.142     //取所有整数部分     System.out.println(newDecimalFormat(“#”).format(pi));   //3     //以百分比方式计数,并取两位小数     System.out.println(new DecimalFormat(“#.##%”).format(pi)); //314.16%        longc=299792458;  //光速     //显示为科学计数法,并取五位小数     System.out.println(newDecimalFormat(“#.#####E0”).format(c)); //2.99792E8     //显示为两位整数的科学计数法,并取四位小数     System.out.println(newDecimalFormat(“00.####E0”).format(c)); //29.9792E7     //每三位以逗号进行分隔。     System.out.println(newDecimalFormat(“,###”).format(c));   //299,792,458     //将格式嵌入文本     System.out.println(newDecimalFormat(“光速大小为每秒,###米。”).format(c));   } }   DecimalFormat 类主要靠 # 和 0 两种占位符号来指定数字长度。0 … Continue reading

wiloon, 3/18/2019 12:34

20 年代时,在芝加哥郊外一个名为“霍桑”的工厂里,研究人员在研究照明条件对工人绩效表现的影响。研究人员最初认为,随着工厂照明条件的改善,工人的生产率应当会随之提升。但事实却并非如此,研究人员后来才发现,工人绩效的提升是因为他们感觉受到了公司的关注,从而增强了工作动机,这就是“霍桑效应”的产生。 https://www.infoq.cn/article/gU*236UQhE5FYgDsYXoB?utm_source=rss&utm_medium=article

wiloon, 3/16/2019 17:52

install latest ansible https://docs.ansible.com/ansible/latest/installation_guide/intro_installation.html#latest-releases-via-apt-debian Add the following line to /etc/apt/sources.list: deb http://ppa.launchpad.net/ansible/ansible/ubuntu trusty main Then run these commands: $ sudo apt-key adv –keyserver keyserver.ubuntu.com –recv-keys 93C4A3FD7BB9C367 $ sudo apt-get update $ sudo apt-get install ansible vim local.yml – hosts: localhost … Continue reading

wiloon, 3/15/2019 15:41

openssl s_client -connect host0:port0 2>&1 | sed -ne ‘/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p’ openssl verify foo.pem openssl s_client -connect host0:port0 -state -showcerts 解码根证书 openssl x509 -text -in roch.pem https://www.ibm.com/developerworks/cn/linux/l-cn-sclient/index.html

wiloon, 3/15/2019 14:27

# 查看ntp状态 ntpq -p ntpq -4p

wiloon, 3/15/2019 13:23

https://yhz61010.iteye.com/blog/1565984 假设文件 text.txt 内容如下: …… xxxxxxxxxxxxxx yyyyyyyyyyyyyyyy zzzzzzzzzzzzzzzzzzz start_mark xxxxxx 10  aaaaa  bbbb  cccc 20  aaaaa  bbbb  cccc 30  aaaaa  bbbb  cccc 40  aaaaa  bbbb  cccc …… yyyyy end_mark …… 现要截取 start_mark 所在行与 end_mark 所在行之间的文本。注意,最终截取的文本不包括 start_mark 行和 end_mark 行。 可以使用如下 sed 命令: sed -n ‘/^start_mark/,/end_mark$/p’ text.txt | grep -Ev ‘(^start_mark|end_mark$)’ | cut … Continue reading

wiloon, 3/15/2019 8:57

openssl dhparam -out dhparam.pem 2048 # 如果你的机器性能足够强大,可以用 4096 位加密

wiloon, 3/14/2019 14:06

https://segmentfault.com/a/1190000011931608 本文介绍 PHP-FPM,Nginx,FastCGI 三者之间的关系,以及 Nginx 反向代理和负载均衡的配置。 PHP-FPM,Nginx,FastCGI 之间的关系 FastCGI 是一个协议,它是应用程序和 WEB 服务器连接的桥梁。Nginx 并不能直接与 PHP-FPM 通信,而是将请求通过 FastCGI 交给 PHP-FPM 处理。 location ~ .php$ { try_files $uri /index.php =404; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_buffers 16 16k; fastcgi_buffer_size 32k; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include … Continue reading

next page
辽ICP备14012896