从零开始学习 Go 语言的切片
这篇文章受到了我与同事讨论使用切片slice作为栈stack的一次聊天的启发。后来话题聊到了 Go 语言中的切片是如何工作的。我认为这些信息对别人也有用,所以就把它记录了下来。 ### 数组 {#toc_1} 任何关于 Go 语言切片的讨论都要从另一个数据结构也就是数组array开始。Go 的数组有两个特性: 1. 数组的长度是固定的;`[5]int` 是由 5 个 `i...
51工具盒子
这篇文章受到了我与同事讨论使用切片slice作为栈stack的一次聊天的启发。后来话题聊到了 Go 语言中的切片是如何工作的。我认为这些信息对别人也有用,所以就把它记录了下来。 ### 数组 {#toc_1} 任何关于 Go 语言切片的讨论都要从另一个数据结构也就是数组array开始。Go 的数组有两个特性: 1. 数组的长度是固定的;`[5]int` 是由 5 个 `i...
Go被设计为一种后台语言,它通常也被用于后端程序中。服务端程序是GO语言最常见的软件产品。在这我要解决的问题是:如何干净利落地升级正在运行的服务端程序。 。多年来,它一直是一种无处不在(有时甚至是唯一的)与计算机交互的界面。在图形用户界面(GUI)出现和流行之前,终端和 Shell 是唯一的机制,可以让计算机按照...
代码中的缩进指的是你在代码行的开头处的空格。像其他代码编辑器和 IDE 一样,VSCode 允许你自动缩进你的代码。 你可以设置使用制表符或空格或任何你喜欢的缩进方式。 听起来不错吧?让我们来看看怎么做。 ### 在 VSCode 中启用自动缩进 {#%E5%9C%A8-vscode-%E4%B8%AD%E5%90%AF%E7%94%A8%E8%87%AA%E5%8A%A...
Shell 脚本很棒,你可以非常轻松地写出有用的东西来。甚至像是下面这个傻瓜式的命令: # 用含有 Go 的词汇起名字: $ grep -i ^go /usr/share/dict/* | cut -d: -f2 | sort -R | head -n1 goldfish 如果用其他编程语言,就需要花费更多的脑力,用多行代码实现,比如用 Ruby 的...
[CommandlineFu](https://www.commandlinefu.com/) 是一个记录脚本片段的网站,每个片段都有对应的功能说明和对应的标签。我想要做的就是尝试用 shell 写一个多进程的爬虫把这些代码片段记录在一个 org 文件中。 ### 参数定义 这个脚本需要能够通过 `-n` 参数指定并发的爬虫数(默认为 CPU 核的数量),还要能通过 `-f...
> Loki 扩展了 Prometheus 用于度量监测和日志聚合的模型。 [Loki](https://github.com/grafana/loki) 是一个 Apache 2.0 许可的开源日志聚合框架,由 Grafana 实验室设计,并在不断发展的社区的巨大支持之下建立。它也是我每天为之努力的项目。在这篇文章中,我将不只是谈论 Loki 如何工作,而是提供一个实...
> FRR(free range routing)给了你实现多种协议的选择。本指南将帮助你入门。 最近,我写了一篇文章,解释了如何使用 [Quagga](https://51tbox.com/) 路由套件实现开放式最短路径优先Open Shortest Path First(OSPF)。可以使用多个软件套件代替 Quagga 来实现不同的路由协议。其中一种是 FRR(f...