Unknown

Universe

改变公有云接口调用的凭据系统

公有云在调用云产品接口的时候通常需要 secretId 和 secretKey 。而 Kubernetes 里面有一类对象叫做 secret ,所以我在想,这两块内容能不能结合起来。 当公有云管理员创建子账户的时候,这两部分信息会自动注入到相应 Kubernetes 的关联 namespace 的 secret 中,这样用户连这部分信息都不需要保存,只需要上传自己的容器镜像,之后CD会自...

CDN往事录

2018年3月,我正式陆续接管阿米巴集团公司的所有数字资产,成为实际意义上的运维负责人。 由于领导很看重我(老板不舍得花钱),有很长的一段时间,都是我一个人在负责所有事情。 特别是在CDN这一领域,由于涉及到历史遗留项目,域名解析,TTL,国内傻逼互联网运营商(比如长城宽带),这块工作内容更要谨慎处理。 我们先回到根源问题,为什么需要 CDN ,CDN 到底解决了什么问题。 为什么需...

云原生开发工程师的五重境界

Cloud Native Engineers go to heaven

斯芬克斯是 地狱双头犬 的女儿,她有一个经典的谜语。叫做斯芬克斯之谜: Which creature has one voice and yet becomes four-footed and two-footed and three-footed? 斯芬克斯的这个谜语代表了自我认知的困难。今天,我就来试着解答这个谜语。 《Docker源码分析》 要想成为一个优秀的云原生开发...

时间序列数据库怎么处理电商订单

time series

一道面试题 最近我在面试。有一次,面试官问了我一个电商秒杀的问题。 对于这个问题,无论前端如何耍猴(比如像以前小米页面弄个无限loading),怎么各种分布式消息队列,多级缓存,读写分离。到最后都会发现,数据库都会是最大的瓶颈。 淘宝商城的双十一搞了很多年,但说实话,每年都崩。也就是说,连支付宝这么优秀的团队,服务可用性也是有上限的。 (非)关系型数据库的解决方案 基本上都是数据库...

屠龙勇士Java是如何一步步变成恶龙的?

fuck Java

如果你是一个资深Java爱好者,建议直接按 Ctrl + W 完成阅读。 1995年,Sun正式对外公布了Java,并且发布了JDK 1.0。 弱鸡的语法 我2014年的时候是做ASP.NET MVC,也就是C#起步的。C#的语法相当优美,10年前的语法都吊打当前的 Java10 十条街。 C#的泛型是一个很优美的设计。这个设计,直到今天,Java 还是在用类型擦除的方式去实现。 ...

微软2.0

Microsoft 2.0

我在2011年的时候接触 C# 这门语言,当时学校用的是 .net framework 3.5 的教程。 而 C# 这门语言,单就语言特性,10年的版本前就比 Java8 优秀得多。可惜狮子难敌群狼,也许也是一开始就对搜索引擎不友好,一直命途多舛。 面世至今18年,在我看来基本是原地踏步。 优美的C#语言 C#的泛型是一个很优美的设计。这个设计,直到今天,Java 还是在用类型擦除...

Dragonfly Nydus——下一代容器格式的一种实现

OCIv2 implement

最近在学习造核弹,刚好碰到 Dragonfly 群里,来自蚂蚁金服的巴德大佬在直播分享另外一个子项目Nydus。 按照我的理解,Nydus是下一代容器格式的一种实现。其存在主要是为了解决旧的容器格式(container format)存在的问题。 那么问题来了,什么是 Nydus?什么是 container format? Nydus 具体解决了什么问题。这里先来一波名词扫盲。 名词扫...

某运维负责人之死

缘起 2018年3月,我正式成为运维负责人,接管集团内部的云平台账户。 上一任运维负责人是个天才,他给我留了一堆完全没有密码的服务器,涵盖了腾讯云和阿里云,此外还有一大堆无效的DNS记录,CDN域名,处理这些垃圾的善后工作,陆陆续续花了我一年多时间。 2018年6月,因缘巧合之下,阿里云P8口授我 Kubernetes,我当天下午立即决定,无论遇到多大的困难,必定要将其落地。 当...

云计算时代的CRUD

希望大家尽快认识到,云计算时代的CRUD跟传统开发模式的区别。 历史回顾(二维) 2014年的时候,我们公司还有自己的服务器,后来由于一次断电没处理好,没UPS,数据库在里面,然后就哭了。 后来逐渐转向云计算平台(Infrastructure-as-a-service)。 当时我负责一个用户中心的ASP.NET后端。 里面有一个叫做下载数据包的功能。下载数据包,需要缓存图片,然后复...

节点异常连接数

常用命令 1 iftop -i eth0 -nNB -m 10M 查看不同状态的连接数数量 1 netstat -an | awk '/^tcp/ {++y[$NF]} END {for(w in y) print w, y[w]}' 1 2 3 4 5 6 7 8 9 10 11 12 [root@dddd ~]# ss -s Total: 9599 (kernel 9...