小编use*_*694的帖子

当我可以直接访问IP时,为什么需要xip io?

xip.io欢迎屏幕说:

10.0.0.1.xip.io解析为10.0.0.1

当我可以直接使用IP时,为什么需要通过xip io?

是否用于通过域名而不是IP访问服务器?

dns xip.io

18
推荐指数
1
解决办法
7084
查看次数

Go 切片容量在追加时如何变化?

在服务器上运行示例The Go Tour(当前版本为 1.12.7),我发现如果新切片长度大于当前支持数组的长度,则切片的容量会加倍到 2 的下一个幂。

如果我在我的机器上运行相同的程序(Windows 上的版本为 1.10.3),切片容量将更改为下一个 2 的倍数。

为什么它们不同?是因为 Go 版本还是运行时实现?容量变化是确定性的吗?

远程服务器上的输出是这样的

len=0 cap=0 []
len=1 cap=2 [0]
len=2 cap=2 [0 1]
len=5 cap=8 [0 1 2 3 4]
Run Code Online (Sandbox Code Playgroud)

本地机器上的输出是这样的

len=0 cap=0 []
len=1 cap=1 [0]
len=2 cap=2 [0 1]
len=5 cap=6 [0 1 2 3 4]
Run Code Online (Sandbox Code Playgroud)

这是参考代码

package main

import "fmt"

func main() {
    var s []int
    printSlice(s)

    // append works on nil slices.
    s = append(s, 0)
    printSlice(s)

    // The slice grows as …
Run Code Online (Sandbox Code Playgroud)

go slice

8
推荐指数
1
解决办法
9728
查看次数

Docker 如何保持镜像不变

从 Docker 文档:

Docker 映像是只读的。当 Docker 从镜像运行容器时,它会在应用程序运行所在的镜像(使用 UnionFS)之上添加一个读写层。

如何跨层协调更改?如果我更改文件的内容,Docker 是只跟踪增量还是将更改后的文件存储在新层中?

在 superuser 上查看了这个讨论,但仍然不确定最终的图像结构。

docker unionfs

6
推荐指数
2
解决办法
1594
查看次数

每个 git commit 的树对象内容存储哪些信息

每个 Git 提交对象都指向一个树对象。每个提交树对象是否都存储其所有条目,还是仅添加新条目并且仅包含来自提交父级的增量?

例如,Linux 源代码有 1M 提交和数千个对象(master 有 70,000 个)。如果每个提交对象都包含所有对象的条目,从长远来看将占用巨大的空间。即使提交/推送一行更改,也会进行大量处理和传输。

我理解 Git 的理念是存储快照而不是文件的增量,但在这种情况下,只存储更改的文件。

在下面的示例中,70951b429e0e1191a8c1d9e34248cd76453ef544 包含(或显示为 containsig)所有 5 个文件,即使只添加了一个文件。

[test]$ls
a.txt  b.txt  c.txt  d.txt
[test]$echo r5 > e.txt
[test]$git add -A && git commit -m "r5"
[master 51f6941] r5
[test]$git cat-file -p 51f6941
tree 70951b429e0e1191a8c1d9e34248cd76453ef544
[test]$git cat-file -p 70951b429e0e1191a8c1d9e34248cd76453ef544
100644 blob 9a6c8d12dea8859b821b2ba705f7efd6cc914aa5    a.txt
100644 blob 9a6c8d12dea8859b821b2ba705f7efd6cc914aa5    b.txt
100644 blob b6693b64f528de38cde5533acd781fde743bc3df    c.txt
100644 blob 91174caefafdc81d34e302874c86c6e4d5212075    d.txt
100644 blob 29f4cfc46ba3a0bde55bce8f44ac3590e2108da4    e.txt
Run Code Online (Sandbox Code Playgroud)

git

4
推荐指数
1
解决办法
994
查看次数

为什么 AWS NACL 是无状态的?

据我所知,无状态防火墙更多地用于数据包过滤。为什么 AWS NACL 是无状态的?

NACL 强制为临时端口打开的端口范围太大。

除了安全组,还有其他方法可以在 AWS 上创建有状态防火墙吗?安全组感觉过于细化,可能会被错误地忽略。

amazon-web-services amazon-vpc aws-security-group aws-nacl

1
推荐指数
1
解决办法
2064
查看次数