FTP服务介绍

记录下一些ftp服务器相关内容,默认使用vsftpd作为服务使用

阅读更多

v2ray安装使用

前置准备

  • 一台vps机器,有外网ip
  • 一个域名可配置即可

v2ray安装脚本

1
bash <(curl -s -L https://git.io/v2ray.sh)

选择4使用ws+tls配置方式,端口与任意即可
域名使用自己一个子域名即可,例如:tizi.lephee.net

完成后有vmess的url,可以直接复制到客户端使用

以后忘记可以在服务器输入v2ray url显示

安装BBR Plus

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 升级内核安装
wget "https://github.com/cx9208/bbrplus/raw/master/ok_bbrplus_centos.sh" && chmod +x ok_bbrplus_centos.sh && ./ok_bbrplus_centos.sh

# 使用该脚本切换到bbr_plus以及配置优化
wget -N --no-check-certificate "https://raw.githubusercontent.com/chiakge/Linux-NetSpeed/master/tcp.sh" && ./tcp.sh

# 查看状态
lsmod | grep bbr

# 查看当前已经使用的TCP拥塞控制配置
cat /proc/sys/net/ipv4/tcp_congestion_control

# 查看当前配置
cat /etc/sysctl.conf

如果未开启则执行

1
sudo modprobe tcp_bbrplus

cloudflare转发配置(cdn方式)自测不如下方workers方式速度快

  1. 在cloudflare配置你的域名,根据提示在域名商处配置cf的nameserver
  2. 验证通过后,在记录配置中添加上方v2ray使用的域名tizi.lephee.net
  3. SSL/TLS页签中,将SSL/TLS encryption mode改成full

客户端配置中直接使用相同域名即可,会自动走cloudflare的cdn加速

cloudflare workers转发加速

  1. 在cloudflare中选择workers,添加新的workers
  2. 脚本代码输入下方,这里注意域名输入上方v2ray使用的域名tizi.lephee.net
1
2
3
4
5
6
7
8
9
10
addEventListener(
"fetch",event => {
let url=new URL(event.request.url);
url.hostname="tizi.lephee.net";
let request=new Request(url,event.request);
event. respondWith(
fetch(request)
)
}
)
  1. 部署完成

客户端配置中需要要使用worker分配的域名,才会经过cf的worker加速

Elasticseasrch简介

Elasticsearch相关

Elasticsearch和Mysql中概念对比

Relational DB -> Databases -> Tables -> Rows -> Columns
Elasticsearch -> Index -> Types -> Documents -> Fields
mysql和es对比

阅读更多

kafka备份方案

备份方案

使用两个kafka connectors,一个sink connector向外部数据源(S3、ES、Hive)导出数据,一个source connector从外部源恢复数据
使用connect同步数据到s3,然后清除60天以前的数据,可以达到备份+归档且释放硬盘空间的目的

阅读更多

2019年游戏总结

月份 游戏名称 平台 状态 备注
1月 超级马里奥派对 NS 通关 俊俊的NS,和耀东+图其一起组队
1月 Dota2自走棋 PC 骑士8 真·官方棋牌游戏
1月 巫师3 PC 待玩 玩马里奥暂时没空
2月 古墓丽影 PC 通关 好玩的动作游戏
2月 古墓丽影:崛起 PC 通关 好玩的动作游戏
7月 不要喂食猴子 PC 暂未通关 摄像头视奸,需要花点时间玩
8月 雨中冒险Risk of rain PC 解锁两角色 平台跳跃类以撒,有点难
9月 亿万僵尸They are billions PC 战役中 RTS打僵尸,不错的游戏
10月 莫塔:守山人Children of Morta PC 剧情中 rougue like俯视角,打击感很不错
10月 王国:两位君主Kingdom: Two Crowns PC 剧情中 rougue like横版家园建设,操作简单系统复杂
11月 血污:夜之仪式 PC 第二个boss 有点难,手残党需要练习下
11月 The Legend of Bum-bo PC 解锁第二个角色 以撒制作组第二款游戏,游戏性一般
12月 恶魔之书 PC 刷图中 中午玩一下,纸片人暗黑,怪物不太友好
12月 刺客信条:奥德赛 PC 剧情中 好玩不解释

常用shell

日志分组计数并排序

1
grep 'crawler_news_insert' stderr.log.2020-01-29-12 | awk '{print $2}' | awk -F':' '{cnt[$2]+=1}END{for(c in cnt){print c,cnt[c]}}' | sort -n -k 1

解除linux用户过期时间

1
chage -l li

nc传输文件

内网环境下可以使用nc来传输文件,使用内网带宽

在机器B开启端口监听,收取文件

1
nc -l 9999 > xxxx.zip

机器A发送文件,指定收取端(服务器端)的ip和端口

1
nc 192.168.1.3 9999 < xxxx.zip

复杂awk分词计数

1
2
3
4
5
6
# 
# 分离出每个接口每秒的请求次数、平均请求时间
grep "T07:30:" access_www.more.buzz.log access_www.morenews1.com.log | awk '{split($4, t, ":");split($6, a, "?");cnt[t[2]":"t[3]"\t"a[1]]+=1;times[t[2]":"t[3]"\t"a[1]]+=$NF}END{for(c in cnt){print c"\t"cnt[c]"\t"times[c]"\t"times[c]/cnt[c]}}'

# 时间正则匹配,统计大于10s的请求
grep '2020-05-22 11:11:[45]' access.log | awk '{if ($8 > 10000) { cnt[$5] += 1}}END{for(c in cnt){print c,cnt[c]}}'

SpringBoot项目获取客户端IP

本文主要介绍了SpringBoot项目中如何获取真实客户端IP,在应用前侧有nginx或cdn时应该如何处理。

X-Forwarded-For(简称XFF)是一个常见的(非正式使用的)传递真实用户IP的方式,其内容一般是:

1
X-Forwarded-For: real_client_ip, proxy1_ip, proxy2_ip

真实用户IP会被放在第一位

阅读更多

Linux查看CPU信息

总核数 = 物理CPU个数 X 每颗物理CPU的核数
总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数

1
2
3
4
5
6
7
8
# 查看物理CPU个数
cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l

# 查看每个物理CPU中core的个数(即核数)
cat /proc/cpuinfo| grep "cpu cores"| uniq

# 查看逻辑CPU的个数
cat /proc/cpuinfo| grep "processor"| wc -l