前言 最近接到一个需求,要将centos服务器的一些文件,定时增量下载到本地的winserver中。 测试环境如下: 服务端(Centos 7.9) 客户端(window 10) 服务端配置 服务器安装rsync yum install -y rsync 修改配置文件(/etc/rsyncd.conf) 没有这个文件就创建一个 # /etc/rsyncd: configuration file for rsync daemon mode # See rsyncd.conf man page for more opt…

2023年7月13日 0条评论 351点热度 0人点赞 王谷雨 阅读全文

前言 Disruptor的高性能,是多种技术结合以及本身架构的结果。本文主要讲源码,涉及到的相关知识点需要读者自行去了解,以下列出: 锁和CAS 伪共享和缓存行 volatile和内存屏障 原理 此节结合demo来看更容易理解:传送门 添加了中文注释的源码:Disruptor 下图来自官方文档 官方原图有点乱,我翻译一下 在讲原理前,先了解 Disruptor 定义的术语 Event 存放数据的单位,对应 demo 中的 LongEvent Ring Buffer 环形数据缓冲区:这是一个首尾相接的环,用于存放 E…

2023年4月17日 4条评论 721点热度 0人点赞 王谷雨 阅读全文

前言 Disruptor是一个高性能的无锁并发框架,其主要应用场景是在高并发、低延迟的系统中,如金融领域的交易系统,游戏服务器等。其优点就是非常快,号称能支撑每秒600万订单。需要注意的是,Disruptor是单机框架,对标JDK中的Queue,而非可用于分布式系统的MQ 本文基于Disruptor v3.4.*版本 Demo 既然是简单使用,这阶段只需要关注: 生产者 消费者:EventHandler 消息的传递:消息的载体Event 简单例子 首先,我们定义消息的载体Event,生产者向消费者传递的消息通过Ev…

2023年4月10日 0条评论 583点热度 0人点赞 王谷雨 阅读全文

前言 之前想对图片素材进行分类管理,除了打标签,还有一种是通过主题色进行分类。于是开始寻找能提取主题色的工具,最后找到了大名鼎鼎的 Leptonica 库,其中就有中位切割算法的实现。下面附上中位切割算法的其他语言版本的实现。 JavaScript版:quantize (此库有提取颜色数量不对的问题,见 issues/9) Java版:theme-color (我自己基于 quantize 实现的Java版) 中位切割算法(Median cut) theme-color 项目的效果如下: 在介绍中位切分法之前,我们…

2023年3月9日 0条评论 679点热度 0人点赞 王谷雨 阅读全文

前言 先叠个甲:本软件免费,请别拿去卖钱。TX有反爬机制,一次性爬几百篇文章有封号风险(只是封接口,不影响微信正常使用)。最后,摊上事别赖我。。。 弄这个软件的起因是经常看的一个微信公众号的文章经常发出去没几天就被404,那不如将文章保存到本地。加上最近在学Electron和TypeScript,于是就有了WechatDownload 软件 下载链接:WechatDownload 源码地址:https://github.com/xiaoguyu/wechatDownload 页面 使用 单篇文章下载 直接输入链接,…

2023年2月7日 53条评论 8272点热度 7人点赞 王谷雨 阅读全文

记一个浏览器坑爹的问题。。。 今天上去腾讯云的控制台,突然发现服务器列表加载失败。打开 F12 开发者工具看了下请求,发现如下。请求状态码是200,但是无法加载响应数据。 因为这个请求是页面发起的,然后我尝试将 url 复制直接在浏览器访问,又是有响应数据的。这就有点玄学了。 这种情况之前也碰到过,导致我访问知乎报错,博客园没法登录等。搜索引擎走起,N久,找不到解决方法。主要是换个浏览器又可以(这还导致了我从chrom切换到edge),遂搁置。。。 今天逛论坛,看到有个帖子也是问这个问题,有人说试试把浏览器扩展插件…

2023年2月1日 0条评论 2127点热度 0人点赞 王谷雨 阅读全文

前言 先说几句废话,本人是一名 web 后端开发,主语言是 java,在学 Electron 之前,只会一点点 HTML和 JavaScript。本文讲的也是我学习 Electron 的过程,而非教程,请酌情参考。 Electron是什么 Electron是一个使用 JavaScript、HTML 和 CSS 构建桌面应用程序的框架。 嵌入 Chromiu 和 Node.js 到 二进制的 Electron 允许您保持一个 JavaScript 代码代码库并创建 在Windows上运行的跨平台应用 macOS和Li…

2023年2月1日 0条评论 307点热度 0人点赞 王谷雨 阅读全文

前言 最近在学electron这个框架,为了练手,就模仿window的便筏,抄了一个半成品。 Electron是一个使用 JavaScript、HTML 和 CSS 构建桌面应用程序的框架。 嵌入 Chromium 和 Node.js 到 二进制的 Electron 允许您保持一个 JavaScript 代码代码库并创建 在Windows上运行的跨平台应用 macOS和Linux——不需要本地开发经验。 便利贴开发 界面展示 源码地址:stickyNote 开发过程 项目搭建 我使用的是 electron-vite…

2022年12月30日 0条评论 370点热度 0人点赞 王谷雨 阅读全文

第一章 转换思路 向麦肯锡学习逻辑思维 解决问题的根本就是逻辑思考力。 逻辑思考力不是依赖经验,以前怎么做可以成功,现在也怎么做。 逻辑思考是依靠数据观察现象,提出假设,然后再求证。 不要把假设和结论混为一谈。分析数据整理出来的是现象,是假设,而不是结论。要透过现象看到本质的原因。能解决问题的才是结论,否则是现象。 “全方位努力”的想法是错的。大部分的问题都是由少部分原因造成的。 ps:这属于扩散? 验证假设时不要忘了对比实验的要求:每次只能改变一个因素。比如调查不同年龄段对消费的影响,要限制区域,不能A区域青年和…

2022年12月10日 0条评论 395点热度 0人点赞 王谷雨 阅读全文

焦油坑 过去几十年的大型系统开发就犹如这样一个焦油坑,很多大型和强壮的动物在其中剧烈地挣扎。 它们挣扎得越是猛烈,焦油纠缠得越紧,没有任何猛兽足够强壮或具有足够的技巧,能够挣脱束缚,它们最后都沉到了坑底。 人月神话 缺乏合理的时间进度是造成项目滞后的最主要原因: 对估算技术缺乏有效的研究 隐含地假设人和月可以互换 没有持续进行估算工作 对进度缺少跟踪和监督 进度偏移时,下意识的反应是增加人力。 乐观主义 系统编程的进度安排背后的第一个假设是:一切都将运作良好,每一项任务仅花费它所“应该”花费的时间。 但是进度正常的…

2022年12月7日 0条评论 590点热度 0人点赞 王谷雨 阅读全文
123457