avatar
文章
200
标签
94
分类
0
首页
书单
歌单
关于
LeFer
首页
书单
歌单
关于

LeFer

在 Centos 7 中使用shadowsocks
发表于2018-08-11
本文不讨论,如何搭建或者获取shadowsocks服务,仅仅从技术角度探讨下如何在centos 7中使用这种socks5代理。 安装shadowsocks-qt5 wget https://copr.fedorainfracloud.org/coprs/librehat/shadowsocks/repo/epel-7/librehat-shadowsocks-epel-7.reposudo mv librehat-shadowsocks-epel-7.repo /etc/yum.repos.d/sudo yum updatesudo yum install -y shadowsocks-qt5 安装proxychains wget https://github.com/rofl0r/proxychains-ng/archive/master.zipunzip master.zipcd master./configuremakesudo make installsudo cp ./src/proxychains.conf /etc/proxychains.conf 配置p...
使用wrk测试api性能
发表于2018-08-06
Restful Api 压力测试有很多专业工具,但那些工具对于开发人员说过于复杂了(我觉得那些是给测试人员用的)。wrk 是一个简单的多线程的基于命令行的测试工具,它的一个很好的特性是用很少的线程压出很大的并发,能快速的验证接口的性能,比较适合开发场景。下面是使用过程记录。需要注意的是 wrk 只能运行在 linux 平台。 安装wrk需要从github拉代码并编译 git clone https://github.com/wg/wrk.git cd wrk make 编译成功后,会在当前目录中生成可执行的wrk。将其copy到bin目录。 sudo cp wrk /usr/local/binwhick wrk 使用wrk简单使用 命令 wrk -t4 -c10 -d10s -T3s --latency http://www.lefer.cn -t4 开启四个线程 -c10 保持10个连接 -d10s 持续测试10秒 -T3s 超时设置为3秒 –latency 统计延迟分布 执行结果 [web@localhost ~]$ wrk -t4 -c10 -...
Centos7安装最新内核并开启BBR
发表于2018-08-05
Google 开源了 TCP BBR 拥塞控制算法,并提交到了 Linux 内核(> 4.9)。据悉,特别适用于网速不稳定的场景。根据网上的测试,在开启BBR后,网速甚至可以提升好几个数量级。 以下是我在GCP上开启BBR的步骤。系统版本是Centos 7。 # 更新系统yum update -y# 安装内核rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.orgrpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpmyum --enablerepo=elrepo-kernel install kernel-ml# 查看安装内核并设置,从返回结果中找到版本号最大的一行的序号,设置为默认启动awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg# 0是版本号最大的一...
Spring Boot 多数据源的另一种实现
发表于2018-08-03
Spring Boot提供了一套比较完善的多数据源的自动化配置机制,比如这里,但它的缺点是无法应对数据源不确定的场景,即软件在真正交付使用之前不知道到底会配置多少数据源。所以我这里提供多数据源自动化配置的另一种实现方法。可以把数据源配置放在库里或者放在配置文件里,程序启动时会自动根据你配置的多少初始化为对应的连接池供程序使用。 实现思路st=>start: 开始op0=>operation: 创建单例模式类:>https://www.lefer.cn/posts/10448/op1=>operation: 读取配置op2=>operation: 循环初始化连接池op3=>operation: 放入map中op4=>operation: 对外提供获取方法e=>end: 结束st->op0(right)->op1(right)->op2(right)->op3(right)->op4->e 核心代码初始化连接池这里使用的是hikar作为连接池。dataSourceMap是存放连接池的map。 H...
disruptor的理解和应用
发表于2018-08-01
disruptor是一个大名鼎鼎的高性能的线程间的消息传递库,国内的资料不是很多。我近期在一个项目中使用了disruptor,有了一点理解,尝试着表达出来。可能不对,希望大家指正。 disruptor能干什么,不能干什么disruptor是Java阻塞队列,比如 ArrayBlockingQueue的替代,它在性能上高于阻塞队列。disruptor是线程级的,无法在进程间共享,也不会提供持久化、灾备等系统级的功能。disruptor的用处是通过线程级的消息传递来做线程间的解耦,通过发布订阅模式,去实现线程级的并发。但disruptor不是HQ,MQ等消息队列容器的替代品,没有监控API,没有宕掉后的自动恢复机制,也不能被其他程序访问。 为什么用disruptor,而不是queue下图是queue的处理示意。queue的线程安全的读写,至少需要维持3个变量:尾部位置,头部位置,容量。写入线程需要争用头部位置,以便写入数据;读取线程需要争用尾部位置,以便读到数据(假定是不重复读场景);同时都要争用容量,容量满了不能再写,容量空了,也不应再读,读写成功后容量要加减。此时在三个争用位...
自定义通用URL协议实现在浏览器中打开本机任意程序
发表于2018-07-20
以前写过一篇文章,总结了跨浏览器调用的方法。近期遇到一个场景,需要在浏览器中去打开本地的客户端程序,而且限定不允许使用IE。所以我实现了一个通用协议。通过这个协议,可以从浏览器去打开本机任意程序并支持传参数。以下是具体内容。 注册协议将以下文件保存为.reg文件。导入注册表项,注册协议ff。你可以将所有的ff替换成别的字符串,来实现自己的协议。 Windows Registry Editor Version 5.00[HKEY_CLASSES_ROOT\ff]"URL Protocol"=""@="Genaral Call"[HKEY_CLASSES_ROOT\ff\DefaultIcon]@=""[HKEY_CLASSES_ROOT\ff\shell][HKEY_CLASSES_ROOT\ff\shell\open][HKEY_CLASSES_ROOT\ff\shell\open\command]@="cmd /v:on /k set m=%1 &&call set n...
如何处理 gitlab fork pull request 冲突
发表于2018-07-18
gitlab提供了git的一个ui界面,但是在处理冲突方面表现的不好,一些复杂场景还需要通过命令行来解决。本文所述即是一例,解决过程记录如下。 问题背景repo A :http://ip:port/share/adminApi.git repo B: http://ip:port/esb_dept/adminApi.git B是从A里fork出来的。在实际软件开发过程中,A是框架工程,B是由A派生而出的一个实际项目。 现在A发生了更新,需要将A的变动合并到B中。 正常情况下,通过gitlab,在repo A中新建合并请求到B即可,但由于repo B中有工程师修改了框架代码,导致产生冲突,合并失败。 解决步骤 在本地 B 项目根目录,查看可用的远程仓库。默认情况下,只会有repo B [web@localhost esbadminapi]$ git remote -vorigin http://ip:port/esb_dept/adminApi.git (fetch)origin http://ip:port/esb_dept/adminApi.git (push) 将 ...
解决 Centos7 IDEA IBUS 无法输入中文的问题
发表于2018-07-18
网上很多帖子都在说环境变量的事,说要在/etc/profile 或idea.sh中增加: export XIM="ibus"export XIM_PROGRAM="ibus"export XMODIFIERS="@im=ibus"export GTK_IM_MODULE="ibus"export QT_IM_MODULE="ibus" 但很多时候问题并不出在这里,而是由于你的ibus包安装不完整,至少应该安装以下包: ibus-setup-1.5.17-2.el7.noarchlibusbmuxd-1.0.10-5.el7.x86_64ibus-libs-1.5.17-2.el7.x86_64ibus-kkc-1.5.18-7.el7.x86_64ibus-gtk3-1.5.17-2.el7.x86_64libuser-python-0.60-9.el7.x86_64libusbx-1.0.21-1.el7.x86_64ibus-gtk2-1.5.17-2.el7.x86_64i...
VMware内CentOS7 /dev/mapper/cl-root 扩容
发表于2018-07-18
刚遇到/dev/mapper/cl-root空间不足的问题,就看到了CSDN上Wang_Xin_SH写的文章,非常好,所以转载收藏 (已在原文末留言转载,侵删)。 简介CentOS7虚拟机原硬盘空间只分配了10GB,需要扩容到20GB。环境:VMware 10 VMware分配空间选中虚拟机->虚拟机设置->硬盘->实用工具->扩展->设置最大磁盘大小->点击扩展 CentOS7内部分配可以参考:http://jingyan.baidu.com/article/54b6b9c0fc8b0b2d583b47c6.html 查看当前磁盘空间,/dev/mapper/cl-root硬盘空间只有8GB,打算扩容: # df -hFilesystem Size Used Avail Use% Mounted on/dev/mapper/cl-root 8.0G 3.8G 4.3G 47% /devtmpfs 482M 0 482M 0% /devt...
CentOS 7 直接安装 gcc 7
发表于2018-07-17
在一台没有安装过低版本gcc的系统里,如何安装gcc 7 ?以下是详细步骤。 使用开发工具集安装: sudo yum install centos-release-sclsudo yum install devtoolset-7-gcc*scl enable devtoolset-7 bashwhich gccgcc --version 这种方法同样适用于安装gcc6,只需要将上面命令中7改成6即可。详情请参考:devtoolset
1…678…20
avatar
LeFer
日拱一卒,功不唐捐
文章
200
标签
94
分类
0
公告
不见五陵豪杰墓,无花无酒锄作田!
最新文章
AI热潮中的冷思考2026-04-08
一篇文章说清楚AI原生架构(AI Native)2026-03-22
人机协同时代,如何防止AI引入“隐性”技术债2026-03-08
全球智能危机(第二部分:一场来自未来的金融史思想实验)2026-02-26
全球智能危机(第一部分:Agentic AI的兴起)2026-02-25
标签
aria2 websocket 网易云 软件工程 可信数据空间 spark web emby next spring modulith ibus spring cloud gcc jointjs nas webmvc windows 随记 nodejs mac DDD mysql token spring nextcloud shadowsocks AI 转载 机器学习 jib spring boot starter proxychains sonar 数据分析 pdf spring security xml lantern cdh 项目
网站信息
文章数目 :
200
运行时间 :
本站访客数 :
本站总浏览量 :
最后更新时间 :
© 2025 - 2026 By LeFer
沪ICP备2024075747号沪公网安备31011502401302号