• Kfc

    在 KFC 打过工吗?很想体验一下诸如此类,这样的生活,送外卖啊啥的。但可能体验不到了。没这个勇气吧。

  • Life

    这两天都是两点睡的,现在好困,今天要12点左右睡。

    这两天工作也没干啥,就昨天破解了信安的那个傻屌插件,还挺兴奋的。

  • Life

    元旦去了长沙,玩了五天,每天一杯奶茶。感觉长沙是一个适合居住的地方,有吃的玩的,房价又便宜。就是也有点堵车。

    最后一天回来的时候,赛赛可哭惨了,拉了一点屎之后,就一直哭了要拉屎,后面看应该可能是没有了,只是当时不知道怎么回事,哭上头了。

    中间和刚磊廉柯喝了一次酒,喝多了,晚上睡到10点左右,起来打麻将,赛赛在边上睡,后面他醒了,过来抱着继续打。。

  • Life

    晚上忘了给赛赛刷牙了。哄他睡觉的时候,他又哭着要喝奶。妈妈说,刷完牙不能喝奶了,他说“没有刷牙~~”

    最后还是给他热奶去了,我把水烧着,又到床上和他说话。他说,“爸爸热奶”,然后拿手指着奶瓶,说“奶瓶拿到那边去去热”。懂的可真多。

    今天爸爸生气了,可能积攒了很久的怒气,今天发泄了一下。

  • Life

    儿子在边上折腾,我也半醒半睡的,他平时都是七八点钟就醒了,我以为才七八点。 谁知道他今天睡到了10点才醒。。。破记录了。导致我起床已经10点多了。

    周五麻将到3点。

    周六和管陈涛一起去逛山姆,晚上又去麻将,又到3点。

    周日上午去约西瓜同学在世纪公园吃饭,然后去看浮世绘的展。查票不严,应该从出口进来的。。

    晚上拼完了挖挖车,中间肯定有错的地方。最后运转不起来。。好玩,以后再买别的车。拼车的时候,赛赛回来了,一边捣乱一边说,小恶魔回来了~

    白天弄了一下转 Cilium,又大量失败,需要手工处理的,想想就头疼了。

    查了一下为啥一个 Mirror 磁盘一直增长(另外两台正常),是 Redis 有问题导致 onBlobExpire 失败了。

    晚上回来写写 SixPage。

  • Life

    中午和赛赛玩翻跟斗的游戏,前面没掌握好,一直把赛赛头朝下的时候就扔床上了,不过他觉得好玩,一直喊,再来再来。

    昨天德州太晚了,搞到12点过后。还一边玩一边在看 skopeo copy image 遇到 EOF 报错的事。 只有往 ECR 其中一个 Region 复制的时候才报错,往其他 Region 或者是 ACR,都没问题。 今天开了一个 Case。

  • Life

    看见工作上的事情就头疼。觉得好没劲。

    今天好像啥也没干,处理了几个小 Case,什么磁盘满了,什么磁盘只读了,还有 neutron 转 Cilium。

    然后统计了一下 Mirror 和 Hub 的相关数据。 现在到 Mirror 的请求约 20% 透传到后端,感觉这个效果还不错吧。

    看了一下 temporal,这东西还要写 Go 或者 Java 代码来提交任务?还没有 API?这样的话,感觉有点不好用。

    回家回家,头痛。

  • Life

    昨天中午金桥聚餐,下午带赛赛去小姨家里。晚上去九亭饭店吃饭。

    周末两天有点冷。

    今天晚上要回来的时候,赛赛爬楼梯玩,把楼梯上放着笔记本和笔扔到了地上,我严厉的说,你去捡回来。他下去一边捡一边说,宝宝是小天使,以后不扔东西了。

    晚上回来又同步了一下 OY 的镜像到 RB,后面就把 OY 下线了。

  • Macos Add Ip

    ifconfig lo0 alias 127.0.0.2

  • Mirror Through To Backend Twice

    问题1,一个打到 Docker Registry Mirror 的请求,为什么透传了两次到后端呢?

    问题2,Proxy 里面的 inflight 又能起什么作用呢?

    问题3,为什么有的机器把同一时间到来的所有请求都打到了后端,而有的机器只透传了非常少的几个请求,后面就走缓存了呢?

    问题 1 回答,因为 pbs.copyContent(ctx, dgst, w) 里面请求了一次,pbs.storeLocal(ctx, dgst) 里面又请求了一次。

    问题 2 回答,inflight 是为了避免两个同样的请求都 storeLocal 。

    问题 3 Debug 方向:

    1. inflight 打印一下,看看哪哪请求进到里面?
    2. 本地调试,断点看一下 filesystem.GetContent 是哪里调用来的。
    3. pbs.serveLocal(ctx, w, r, dgst) 之前先 sleep random,拿一个小 Layer 来测试的时候,sleep 短的那个请求肯定已经完成了,所以只能会一次请求到后面。
    4. 拿大 Layer 来测,两个请求应该会一起透传到后面吧。

    5. filesystem.GetContent 是 Stat 的时候,需要先读取 link 内容,然后再去 stat link 文件。在 (bh *blobHandler) GetBlob -> desc, err := blobs.Stat(bh, bh.Digest) 里面有一次,然后再 serveLocal 里面又有一次。

    之前问题 3 一直稳定复现的,但是加了一些 Debug 日志之后,这个问题复制不了了。。