用 diff 命令生成 patch,用 patch 命令打 patch

最近遇到了很多停更的 github 仓库,作者已明显放弃了维护。当我们需要修改软件包源代码的时候,就麻烦了。如果自己 fork 后发布重新发布新包,维护成本比较高。对于这种情况,更高效的办法是通过打 patch 的方式来修正软件包的代码。下面介绍一下具体的实现办法:为单个文件生成补丁复制源文件...

Chrome net::ERR_INCOMPLETE_CHUNKED_ENCODING

通过 proxy_pass 代理的时候,如果文件比较大就会出现文件还没有传输完毕就被关闭的情况,只需要在 nginx 站点配置增加这个就可以解决了:server { ... location / { ... proxy_buffers 8 10...

端口号如何选择

该绑定到哪个端口这对于每一个编写服务器的程序员而言都是一个非常重要的考量。应该选择随机端口吗?该如何知道是否已经有其他的程序将某个端口宣为己有?任何在 0~65535 之间的端口都可以使用,但是在选用之前别忘了一些重要的约定。规则1: 不要使用 0~1024 之间的端口。这些端口是作为熟知 (...

字体子集 - 字体压缩方案

思源宋体出现了以后一直想用到自己博客上面,做法一般是用工具把现成的字体给子集化(subsetting),有印象的是 Fontmin,然后又找到一个 font-carrier 。这些字体子集化的工具都是用 node.js 写的。但是对于思源字体的 otf 支持很差劲,fontmin 根本没有支持...

目前做windows桌面应用程序,MFC、QT、C#哪个更好?

WPF和WinForm技术有什么区别?哪个更加有前景?https://www.zhihu.com/question/36859063wpf的底层是DirectX,意味着你的显示效果不仅可以更炫更酷,同时显卡(集显独显均可)提供的加速也不会拖累你的运行速度。winform的底层是GDI/GDI+...

网络请求库对比

r2 是比较早期的替代品,算是 request next 早期比较通用的产品,core 大约 3.17kbnode-fetch 是仿造 fetch API 写的 NodeJS HTTP 客户端,如果你对 fetch 比较熟悉考虑这个,有点是一直在更新,启动堆栈差不多 20k 。大家比较熟就不多...

高阶组件

高阶函数:对传入的函数进行增强, 并返回一个添加了额外行为的新函数。const HoC = Component => EnhancedComponent 高阶组件其实就是函数,它接收组件作为参数,对组件进行增强后返回。

Kubernetes 容器生命周期钩子

从上面这张图我们可以直观的看到 PostStart 和 PreStop 包括 liveness 和 readiness 是属于主容器的生命周期范围内的,而 Init Container 是独立于主容器之外的,当然他们都属于 Pod 的生命周期范畴之内的,现在我们应该明白 Init Contai...

不使用 sudo 命令执行 Docker

将当前用户加入到 docker 用户组因为 Docker 运行时需要特殊权限,所以默认执行命令时都必须在前面加上 sudo。但这样做确实使人厌烦,一个可行的解决方法是把用户放进 docker 用户组里。在 Ubuntu 下你可以输入:sudo usermod -aG docker $USER重...

依赖 Github 实线持续集成与持续发布 CI&CD

持续集成(Continuous integration,CI)指的是在开发过程中持续地将所有开发人员的代码合并到代码库的主线上,然后对该主线代码进行编译、测试运行等操作对代码进行检验,其目的是尽可能早的发现代码集成后导致的问题。实现持续集成的要点主要有:共享的代码库、自动化编译、自动化测试等,...