0%

本文将演示如何在 Linux 上删除重复文件文件。
删除重复文件我使用的是 rdfind 这一款软件,操作系统使用的是 debain。
接下来就开始演示了

阅读全文 »

最近要使用 http 代理发起请求,查资料的时候感觉网上的资料有点混乱,所以自己整理一下以供以后参考。

一般来说最常用的代理方式有两种 socks5 和 http 。这里我演示一下,我记得以前 使用 socks5 代理是需要使用到 官方开发库的,不知道是不是资料显示错误。但是现在是可以不用 第三方库可开发库就可以使用 socks5 的。

阅读全文 »

介绍

在 go 1.11 的时候 go 官方向 go 实验性的添加了 WebAssembly 支持,也就是说 golang 可以编译 为 wasm 以供 JavaScript 进行调用。

在这里我想说一下我的感受,在编写代码时应该是主要编写 go 的代码供 JavaScript 调用 而不是在 在 go 中调用 JavaScript 代码。

目前 go 还只是实验性的支持 wasm 以后可能会变更,我会尽量跟进。

阅读全文 »

前言

最近对 rust 比较感兴趣,打算编写一下试试,不过在进行尝试之前。我们需要确保我们编写的代码是能够正常运行的。这就需要安装编译器了。

这里我选择在 Linux 下进行安装因为这样比较容易

阅读全文 »

在使用 orm 操作数据的过程中,gorm 使用 struct 对数据库中的表进行定位。虽然虽然可以 一个表定义一套 增删查改 但是感觉需要的代码量比较多。所以我决定通过字符串访问结构体已应对简单的 增删查改。

这里简单的介绍一下原理新建一个 map ,key 为我们使用的字符串 value 为反射类型,在使用的时候从 map 中取出值,然后通过反射新建出需要使用的类型

阅读全文 »

前言

之前做一个软件的 demo ,考虑了一下直接编写太亏,所以使用 shell 教程结合几个软件出草稿。在进行实际操作。

本篇教程最开始由其它编程语言跨维而来,再开始 style 不是那么的 shell,在此特别感谢 debain 群各位大佬的建议,以及 Boyuan 菊苣的指导。虽然说编程原理相通但是细节不尽相同,如果你发现本教程中有什么错误的地方欢迎指正。

阅读全文 »

前言

debian 9 代号为 stretch ,debian 的下一个版本debian 10 版本代号为 buster。目前 debian test 已进入冻结很久了,预计会在下一个月发布。不过我已经等不及了,希望马上用上它。

其中 debian 10 最吸引我的的莫过于 gcc8 以及 python3.7 有这两个东西我们可以做很多事,其它更多的差异我就不再概括了具体的请查看 https://itsfoss.com/debian-10-buster/ 有人专门做过比较了。

阅读全文 »

前言

youtube-dl 是一款视频下载器,支持国内外上百款视频网站进行下载,比如 youtube bilibili 等,凡事国外比较知名的网站一般都是支持的。当我们的目标网站不支持下载,我一般会掏出这一款软件试一下。

youtube-dl 支持 linux windows 等,本次我主要在 linux 上进行演示。windows 下也可以,不过我不会仔细说明。

阅读全文 »

前言

前几天在群里看见群友发布的新闻,vscode宣布支持远程开发了。之前我们只能通过扩展商店的第三方插件进行远程编辑,然后我从来没有成功过。可能是我太菜了,也可能是我的 ssh 策略设置得太严格了。不成功我就没试了。直到前几天 vscode 官方支持远程编辑,我一眼就心动了。

至于我为什么这么兴奋,主要还是在 Windows 下进行开发没有 Linux 下来得爽。而且有时候我会在其他设备上编辑代码,比如手机上这样很容易造成代码分叉,到时候合并代码又是一件麻烦的事情。如果我们使用 vscode 远程开发进行远程编辑那就能很好的避免这种问题,同时我们能在本地使用现代的 IDE 并且享受 远程 Linux 优质的开发环境

使用 vscode 远程开发相较于扩展商店的第三方插件最大的优势就是不用在远程服务器预装任何软件,直接使用 ssh 进行链接。

阅读全文 »

不知道你有没有这种需求了,有大量的数据需要处理,但是系统的资源有限,所有只有开一个固定的进程数进行处理,一个进程结束下一个进程直接顶上。可能在其他语言中称这种处理方式为异步,但是在 go 中叫进程池更准确。

我之前获取了大概 两百万的数据需要处理,这两百万调数据涉及网络访问,网络响应大概在一毫秒到十秒之间。之前是在云服务器上处理数据,因为是并发的效率较低。大概是 1k goroutine 在处理数据,比较占用 cpu 所以打算迁移到位于本地的树莓派上处理。当调用 1k goroutine 时,程序大概会在过几秒钟后崩溃,调低 goroutine 数后正常了这个数字我调到了 200。这意味着效率降低了 5倍 。俗话说的好,穷则思变,或者说之前的程序只是打草稿,我本来就打算改进。改用了进程池来处理数据。改用进程池后,虽然由于树莓派的性能限制,goroutine 数降低了5倍,但是效率在原来1k goroutine 上还提升了 5 倍。

阅读全文 »