w1100n
This site is best viewed in Google Chrome
wiloon, 11/13/2018 18:45

http://hold-on.iteye.com/blog/1943436 前段时间项目中需要 统计接口连接时间,考虑到连接时间一般都是零点几毫秒级别的,为了拿到更精确地数值,没有使用System.currentTimeMillis(),而是贸然地使用System.nanoTime()来统计时间,后来分析服务器上的数据,发现 竟然有10-15%的数据数值竟然超过了 10的13次方。 原因: System.currentTimeMillis() 起始时间是基于 1970.1.1 0:00:00 这个确定的时间的,而System.nanoTime()是基于cpu核心的时钟周期来计时,它的开始时间是不确定的。(有篇文章说是更加cpu核心的启动时间开始计算的) 但是在多核处理器上,由于每个核心的开始时间不确定,但是在多核处理器上, Java代码 收藏代码 long start = System.nanoTime(); String ip = Utilities.getIpByUrl(url); long cost = System.nanoTime() – start; 这段代码有可能会运行在两个不同的cpu核心上,从而导致得到的结果完全不符逻辑。 Returns the current timestamp of the most precise timer available on … Continue reading

wiloon, 11/13/2018 0:12

http://shiguanghui.iteye.com/blog/2323327

wiloon, 11/12/2018 20:59

基本概念 ASCII 是用128(2的8次方)个字符,对二进制数据进行编码的方式 base64编码是用64(2的6次方)个字符,对二进制数据进行编码的方式 base32就是用32(2的5次方)个字符,对二进制数据进行编码的方式 base16就是用16(2的4次方)个字符,对二进制数据进行编码的方式 Base-64编码保证了二进制数据的安全 Base-64编码可以将任意一组字节转换为较长的常见文本字符序列,从而可以合法地作为首部字段值。Base-64编码将用户输入或二进制数据,打包成一种安全格式,将其作为HTTP首部字段的值发送出去,而无须担心其中包含会破坏HTTP分析程序的冒号、换行符或二进制值。 Base-64编码是作为MIME多媒体电子邮件标准的一部分开发的,这样MIME就可以在不同的合法电子邮件网关之间传输富文本和任意的二进制数据里。Base-64编码与将二进制数据文本化表示的uuencode和BinHex标准在本质上类似,但空间效率更高。 1.Base64简介 Base64是一种基于64个可打印字符来表示二进制数据的表示方法。base64编码一般有下面两个用途: a)所有的二进制文件,都可以因此转化为可打印的文本编码(都变成ASCII码可打印字符),使用文本软件进行编辑; b)能够对文本进行简单的加密。 说白了,一段由0和1组成的串或文件,都能按照base64的编码规则转换成一段由64个字符任意组合的串。 2.Base64编码规则 所谓Base64,就是说选出64个字符—-小写字母a-z、大写字母A-Z、数字0-9、符号”+”、”/”(再加上作为垫字的”=”,实际上是65个字符)—-作为一个基本字符集。然后,其他所有符号都转换成这个字符集中的字符。 具体来说,转换方式可以分为四步: 第一步,将每三个字节作为一组,一共是24个二进制位 第二步,将这24个二进制位分为四组,每个组有6个二进制位 第三步,在每组前面加两个00,扩展成32个二进制位,即四个字节 第四步,根据下表,得到扩展后的每个字节的对应符号,这就是Base64的编码值 http://www.voidcn.com/article/p-hsyppdrh-bnz.html https://blog.csdn.net/wangjianno2/article/details/52464208

wiloon, 11/6/2018 15:36

https://blog.csdn.net/rznice/article/details/79840261

wiloon, 11/6/2018 10:19

Redis 字符串数据类型的相关命令用于管理 redis 字符串值

wiloon, 11/3/2018 23:08

https://docs.google.com/document/d/18TU22gueH5OKYHZVJ5nXuqHnk2GN6nDvfu2Hbrb4YLE/pub#h.bta4pj6t7nhs

wiloon, 11/3/2018 13:45

安装ipset opkg install ipset 创建一个网络地址的“集合” ipset create vlist hash:net gfwlist > ipset https://github.com/cokebar/gfwlist2dnsmasq 配置dnsmasq http://blog.wiloon.com/?p=12638 install v2ray https://github.com/v2ray/v2ray-core/releases for R7800 v2ray-linux-arm.zip config v2ray xxx config iptables

wiloon, 11/3/2018 12:38

http://openwrt.iteye.com/blog/2306421 https://xu3352.github.io/linux/2017/06/08/openvpn-use-username-and-password-authentication OpenVPN 使用账号+密码方式登陆 使用账号+密码方式方便给多人分配不同的账号和密码,多人使用更加方便 原文链接:配置OpenVPN使用User/Pass方式验证登录,不过有个大坑,后面讲 鉴于上一篇文章已经成功的搭建好 OpenVPN 了,不过客户端直接使用证书就可以连接了,但是多个人使用的话,建议还是改为账号+密码方式的,这里介绍比较简单的一种方式 服务端配置 修改服务端配置文件,文件最后追加几行 $ vim /etc/openvpn/delta.conf use username and password login auth-user-pass-verify /etc/openvpn/checkpsw.sh via-env client-cert-not-required username-as-common-name script-security 3 execve 如果加上client-cert-not-required则代表只使用用户名密码方式验证登录,如果不加,则代表需要证书和用户名密码双重验证登录! /etc/openvpn/checkpsw.sh 文件内容: #!/bin/sh ########################################################### checkpsw.sh (C) 2004 Mathias Sundman mathias@openvpn.se # This … Continue reading

wiloon, 11/2/2018 22:08

Network> Firewall> Traffic Rules> Open ports on router 以80端口为例: Name: Allow HTTP (这个名字可以随便填) Protocal: TCP External port: 80 然后点击 Save & Apply ,就可以访问了 http://www.anywlan.com/thread-432580-1-1.html

wiloon, 10/30/2018 10:17

https://blog.csdn.net/zqtsx/article/details/25487185 linux下测试磁盘的读写IO速度(IO物理测速) 一:使用hdparm命令 这是一个是用来获取ATA/IDE硬盘的参数的命令,是由早期Linux IDE驱动的开发和维护人员 Mark Lord开发编写的( hdparm has been written by Mark Lord mlord@pobox.com, the primary developer and maintainer of the (E)IDE driver for Linux, with suggestions from many netfolk).该命令应该也是仅用于Linux系统,对于UNIX系统,ATA/IDE硬盘用的可能比较少,一般大型的系统都是使用磁盘阵列的. 使用方法很简单 hdparm -Tt /dev/sda /dev/sda: Timing cached reads: 6676 … Continue reading

wiloon, 10/29/2018 23:15

build R7800, Build custom Netgear R7800 firmware for a larger flash size/root space burn netgear 刷机, factory.img, sysupgrade.bin 改网段 openwrt lan 改网段 openvpn https://openwrt.org/docs/guide-user/services/vpn/openvpn/basic enable https for wget opkg install librt openssl-util opkg install wget ca-certificates

wiloon, 10/28/2018 23:48

https://openwrt.proxy.ustclug.org/ https://mirrors.ustc.edu.cn/help/lede.html

wiloon, 10/28/2018 10:49

xxx-factory.img 首先使用网线连接路由器的LAN口 和 PC的网口 路由器断电,用牙签或其他工具,捅路由器的reset口。 开启设备电源开关,观察电源灯(此时保持按住Restore Factory Settings按钮不要松手),直到电源灯由橙色闪烁状态变到绿色闪烁状态(说明设备已经进入到了TFTP修复模式) 在win下面使用DOS命令,即: tftp -i 192.168.1.1 put 文件名.img 在mac下面,同样也是使用tftp命令。 1.自己的ip改成192.168.1.10,网关即路由ip 192.168.1.1 2.把 下好的 img 固件放到用户文件夹下 3.打开终端,输入(binary的作用是改为二进制模式)>tftp>connect 192.168.1.1>binary>put 文件名.img完了之后路由器会闪灯后自动重启。 文件传送完毕后,等待80秒左右,设备会自动重启(请耐心等待,切勿将路由器手动断电)。至此,TFTP修复完成。 设备重启后,可手动断电,再重启。否则可能没有5G。这不是BUG,其他openwrt也是一样的 如果恢复过程中断或失败,重复上述步骤再做尝试。

wiloon, 10/27/2018 11:36

http://blog.51cto.com/changfei/1672147 KVM-Qemu-Libvirt三者之间的关系 Qemu Qemu是一个模拟器,它向Guest OS模拟CPU和其他硬件,Guest OS认为自己和硬件直接打交道,其实是同Qemu模拟出来的硬件打交道,Qemu将这些指令转译给真正的硬件。 由于所有的指令都要从Qemu里面过一手,因而性能较差。wKiom1WdDYyjiVZiAAECBtAEQ5E590.jpg KVM KVM是linux内核的模块,它需要CPU的支持,采用硬件辅助虚拟化技术Intel-VT,AMD-V,内存的相关如Intel的EPT和AMD的RVI技术,Guest OS的CPU指令不用再经过Qemu转译,直接运行,大大提高了速度,KVM通过/dev/kvm暴露接口,用户态程序可以通过ioctl函数来访问这个接口。见如下伪代码: open(“/dev/kvm”) ioctl(KVM_CREATE_VM) ioctl(KVM_CREATE_VCPU) for (;;) { ioctl(KVM_RUN) switch (exit_reason) { case KVM_EXIT_IO: case KVM_EXIT_HLT: } } KVM内核模块本身只能提供CPU和内存的虚拟化,所以它必须结合QEMU才能构成一个完成的虚拟化技术,这就是下面要说的qemu-kvm。 qemu-kvm Qemu将KVM整合进来,通过ioctl调用/dev/kvm接口,将有关CPU指令的部分交由内核模块来做。kvm负责cpu虚拟化+内存虚拟化,实现了cpu和内存的虚拟化,但kvm不能模拟其他设备。qemu模拟IO设备(网卡,磁盘等),kvm加上qemu之后就能实现真正意义上服务器虚拟化。因为用到了上面两个东西,所以称之为qemu-kvm。 Qemu模拟其他的硬件,如Network, Disk,同样会影响这些设备的性能,于是又产生了pass through半虚拟化设备virtio_blk, virtio_net,提高设备性能。 wKiom1WdDc2CEwy6AAGPf4VzQao172.jpg libvirt libvirt是目前使用最为广泛的对KVM虚拟机进行管理的工具和API。Libvirtd是一个daemon进程,可以被本地的virsh调用,也可以被远程的virsh调用,Libvirtd调用qemu-kvm操作虚拟机。

wiloon, 10/26/2018 17:28

-mtime:File’s data was last modified n*24 hours ago. +10:查找10天前的文件,这里用数字代表天数,+30表示查找30天前的文件 “.“:希望查找的数据类型,”.jpg”表示查找扩展名为jpg的所有文件,”“表示查找所有文件 -exec:固定写法 rm -rf:强制删除文件,包括目录 {} \; :固定写法,一对大括号+空格+/+; https://www.linuxidc.com/Linux/2013-06/85613.htm

next page
辽ICP备14012896