上周我朋友小美在微信上问:「静姐,能不能给我讲讲云计算的架构?我写了十六年代码,别人聊上云,我只能点头装懂。」
我说,你们的中台不就在云上跑着吗。
她说是啊,可那不就是几台机器吗,跟云计算有什么关系。
我愣了一下 🤦♀️。
这句话比她自己以为的准。买了云上的机器,和用上了云,中间隔着好几层。多数团队停在第一层。
这篇讲给她,也讲给所有机器已经在云上、用法还是机房那一套的人。
先说结论
云计算一句话能说完。把机器、存储、网络从「买」变成「租」,从「按台数付钱」变成「按用量付钱」。
小美她们完成的是前半句。后半句才是值钱的那一半,也正是她们还没拿到的。
一百多年前,工厂想用电得自己买发电机、雇电工、囤煤。后来电网铺开,插上插座按度数交钱,自己发电的工厂就绝迹了。计算走的是同一条路。
她们已经接上了电网,交的却是包月的固定电费。电器开不开,都一个价。
她那套系统,先摆出来
她做的是在线教育,一套给学生上直播课的平台。
架构分两摊。公司有自己的服务器,跑的是别的业务线;这套业务中台和数据底座,机器买的是公有云的。云上那几台,Nginx 分流量,Java 应用集群部署,MySQL 拆库,再配 Redis、消息队列、ES。从操作系统往上,全是自己装、自己管。
这套架构不土,十几年攒下来的判断力都在里头,稳定性一直没出过大事。
但有件事她自己也觉得别扭。好几台 8 核 32G 的机器,线上资源利用率常年很低。
第一层,她们已经拿到了:虚拟化
云厂商干的第一件事,是把一台特别大的机器用软件切成几十台小机器,一台一台租出去。你买的「服务器」摸不到,也不知道它在哪个城市,但登上去装系统、部应用,跟真机器没区别。这叫虚拟化,是整个云计算的地基。
这好处她天天在享受,只是没往云计算上想。自建机房扩容是个工程,选型、比价、走采购、等到货、上架、装系统,顺利也得两三周。云上买机器是个动作,点两下,3 分钟。
这一层她们拿到了,往上还有两层。
第二层,她们还没拿:托管服务
她的 Nginx 自己装在云主机上,挂了得自己爬起来重启。云上有现成的,叫负载均衡服务。功能一样,区别是它出事的时候,半夜爬起来的是云厂商的工程师,你接着睡 😴。
顺着这个逻辑,Redis、消息队列、ES、MySQL 全有托管版。主从、备份、监控、故障切换,云上都是现成的。
拆库的业务判断今天还是得人来做,哪个表跟哪个表分家,云不懂你的业务。但拆完的脏活累活,备份跑没跑、主从断没断、磁盘满没满,云全接走了。
| 她现在的做法 | 云上的对应物 | 换过去能少操的心 |
|---|---|---|
| 云主机上自己装 Nginx | 负载均衡服务 | 自己保活 |
| 云主机上自建 MySQL、手工拆库 | 云数据库 | 备份、主从、故障切换 |
| 云主机上自建 Redis/MQ/ES | 托管中间件 | 装机、升级、半夜报警 |
| 应用服务器本地存图片 | 对象存储 + CDN | 磁盘扩容、访问加速 |
第三层,云真正的卖点,也是那几台 8 核 32G 的答案
在线课是标准的潮汐生意。白天几乎没人,晚上七点到九点,所有人一起涌进来。
按晚高峰买机器,一天里剩下那二十来个小时,机器都在空转,钱一分不少付 💸。那几台常年低利用率的 8 核 32G 没买错,它们是按最坏情况买的,而最坏情况一天只来两个小时。
这笔浪费在自建机房里无解。
在云上有解。
云上的玩法叫弹性伸缩。给系统定个规矩,比如 CPU 超过七成就自动加机器,流量退了自动退机器。晚高峰 20 台,后半夜回到 4 台,账单只算你真用过的那些钟头。
配套的是计费分工。底座用包年包月,单价便宜;峰值用按量付费,闲下来关掉就不计费。只买包年包月,等于租了一间随时能退的房子,却签了三年长约。
她自己总结得比我好
小美听完,回了我一句:「原来我们是接了电网,还按包月交电费。」✨
这句比我讲的都好。
云对她这样的人不是新大陆,是她那份攒了十几年的痛点清单,被人打包做成了生意。
三层讲完了。这些事买了云就有人替你管吗?那是下一篇的事。