Hcy Blog

保持激情,只有激情,才有动力

java rc4加密

本文主旨 Rc4加密解密例子 Shadowsocks 使用的Rc4 Shadowsocks改进Rc4为Rc4Md5算法 加强密钥 避免特征 在我们程序中借鉴此方案 优缺点 更新2020-04-13本文主旨​ Rc4是一种对称加密方式,且属于流加密,本文讲解如何使用Java做Rc4的加密解密操作,并且讲解Shadowsocks是如何使用Rc4加密和Rc4md5加密的。Rc4加密解密例子Rc4需要一...

netty利用IdleStateHandler实现pingPong

IdleStateHandler这个类能实现三种工作模式 长时间未读 长时间未写 长时间未读写,三种模式可以同时工作看一下它的构造方法 public IdleStateHandler( int readerIdleTimeSeconds, int writerIdleTimeSeconds, int allIdleTimeSeconds) { this(re...

linux设置crontab定时任务

本文演示如何使用linux的crontab功能定时执行脚本。cron表达式linux使用的是五段的cron表达式,分别是:分钟,小时,天,月,星期 可选值分钟 0 - 59小时 0 - 23天 1 - 31月 1 - 12星期 1-6 0 表示周日输入 crontab --help 查看usage: crontab [-u user] file cronta...

maven打包成minijar

本文演示使用maven的maven-shade-plugin插件实现打包成minijar功能,并解决缺少依赖问题。maven打包成可执行jar包时需要将依赖的jar包也一同打包到jar包内,最终可能导致得到的可执行jar体积太大,但是第三方jar的部分class可能是从未使用到的,即使移除也不会影响程序运行,这样可以大大减少打包的体积。插件maven-shade-plugin为我们提供了这样的功能,他会自动分析jar包内的依赖,将不需要的class移除。...

maven多环境打包

本文演示使用maven自带的profile功能实现多环境的打包,配合jenkins一键使用不同的配置文件发布到不同的环境中。1. 创建SpringBoot测试项目2. 创建多环境配置文件创建三个环境使用不同的环境变量即测试环境使用 application-test.properties,开发环境使用application-dev.properties,正式环境使用 application-prod.properties。然后原来的application.pr...

linux ls没有彩色显示了

给ls --color -l 起个别名叫 ls,这样输入ls就能出彩色了。同理,创建个sh文件放在 /etc/profile.d文件夹下,连接自动运行shell,自动设置一下别名#!/bin/bashalias egrep='egrep --color=auto'alias fgrep='fgrep --color=auto'alias grep='grep --color=auto'alias l='ls -CF'alias la='ls...

服务器安装jekyll,搭建自己的博客

​ 本来图方便使用gitpage做静态博客,但国内访问速度太慢,并且因为自己也有服务器,打算移动到自己服务器上,然后定时从github上同步代码,自己写博客仍然直接push到github,使用方式不变。​ 并且这样也可以在DNS上将国内解析到服务器,国外解析到gitpage,这样一方面节省流量,一方面国内国外速度都能得到保障。下面讲具体步骤。1 安装ruby 更新apt索引1apt -get update 安装ruby-full1apt-get i...

给服务器开启bbr

​ 首先要求服务器内核版本 > 4.9,通过命令uname -a查看内核版本。如果内核版本小,请升级内核吧,不同发行版本升级方式不太一样,自行搜索。一,开启bbr在这里前提是内核版本 > 4.9, bbr是自带的,我们只要开启即可。修改系统变量:12echo "net.core.default_qdisc=fq" >> /etc/sysctl.confecho "net.ipv4.tcp_congestion_control=bbr" >...

netty将channel设为自动读取

​​ 是这样的一个小技巧,这是我在写ss时学到的,有时候要实现私有协议需要将netty设为非自动读取,等前面工作处理好了在转变成自动读取。​ 要实现channel数据的转发工作,第二个channel未创建完成时是不能读取第一个channel内数据的,所以我们经常将第一个channel设为不自动读取。先前我看netty例子里有这样的写法,转换数据 out.writeAndFlush(msg).addListene...

h2数据库初探

首先是这个h2数据库的官网http://www.h2database.com当前最新的maven: <dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> <version>1.4.200</version&...