计算资源效率


工业经济的历史就是有限资源消耗的历史。 在用电方面,有一个明显的傍晚高峰,因此,发电厂的所有者游说现代城市交通,实际上是从零开始的消费电子行业。 也就是说,它们改变了数以百万计的生活方式,从而使发电厂的负载更加均匀。

计算资源也有类似的故事。 很少有人能充分有效地使用它们。 让我们谈谈利用,以及有关在这样的环境下共享资源非常灵活的下一代编程的一些知识。

季节性消费


季节性客户的季节性消费看起来像是11个月的平静和一个月的三倍负荷。 每个人都知道自己的巅峰。 零售冻结了12月和新年销售之前的所有活动,并获得了虚拟机。 每个人仍然都有自己的折扣季和销售旺季-9月1日送给某人,3月8日送给某人,等等。 所有B2C服务都仅在营业时间(例如,在Internet银行)具有可理解的季节性活动。 Technoserv Cloud不在这些期间计划维护工作。

地质学家从远征归来,开始在云中计算化石。 在大型公司中,到期末的报告是从一堆子系统收集的,这些子系统效率很高,有些地方吱吱作响,几乎达到了影响点。 机器学习和分析会带来非常大的负担,但它们不会永久地这样做。

夏季高峰是旅游业,但涨幅不大,但通常会有DDoS,通常是人们在五月假期购买门票时。

正常消费


我们云中的普通客户通过“每日看​​”来消耗资源:在工作日开始的早晨,上升开始,午餐时间短暂下降,晚上下降2-3倍。 在晚上,将启动系统任务-备份,分析中的数据溢出,零售库存和物流库存计算,销售预测。 金融有不同的信用记录和其他缓存。 云中没有ABS,他们,移动运营商和像铁路这样的公司都在夜间清理,也就是说,所有运营的每日余额都减少了。 相对而言,这不是在晚上进入,而是将类似的交易收集到包裹中并在此期间相互抵消。

一般来说,一个普通的办公室“见”。 最高级的管理员已经规定了缩放比例,但是到目前为止,我们仅看到一些孤立的示例。

在一个简单的情况下,它看起来像这样:在11:00提出另一个虚拟机,将其与服务放到平衡器中,在19:00之前轻轻地迁移,然后还清。 也就是说,仅支付一天的三分之一,在高峰时间,可用性与永久租用其他虚拟机的可用性相同。

这是因为我们有时钟离散化


我们的客户通常对该脚本的另一个变体-自动缩放感兴趣。 当资源消耗上升到80%时,另一台机器也会上升。 下降到一定限度-汽车熄火。 在财务合同中,我们采用即付即用的方式,即对实际消耗的资源进行后付款,按小时对VM进行量化。 在控制台中,您可以自己举起许多汽车。 管理员在负载下(例如,在黑色星期五,当站点上的负载增加时)用手进入并执行此操作,或者他编写了启动并熄灭VM的脚本。 有一家公司(有条件地)是开发银行应用程序的公司-他们需要自动扩展进行测试和数据库磨削的高峰。 它们具有非常适合的自动化体系结构,并且当云本身分配了适当数量的VM时,我们使用它们测试了全自动系统。 也就是说,如何通过单独的vitnes服务器(专用VM或外部计算机)本身来管理,该服务器可以通过API管理负载,应用程序分发和平衡。 他们首先获得自动缩放,帮助正确确定优先级。 实际上,他们同时也是我们的测试人员。 根据他们的需求,该产品的价格非常便宜:我们在云中没有像插件服务那样的服务,但是我们正在尝试。 到目前为止,所有内容都是手动的,外加这个alpha:我们拥有产品技术人员与开发人员进行工作的所有报告和详细的对话。 因此,诞生了所有此类团队都需要的产品。

软件架构功能


为什么自动缩放管理员很少,尽管这更有利可图? 因为要正确扩展云中的负载,您必须具有准备好的应用程序和数据库体系结构。 如果像Web Front这样的应用程序通常易于扩展,那么写入数据库已经是一个更有趣的问题。 并非所有应用程序都可以简单地分为前后服务或微服务以将它们分发到不同的机器。

那些拥有它的人-当然可以保存。 它们在稳定性方面有加分,我们在此处有关常见架构错误的文章中对此进行了描述。

自然,您需要为此重写软件。 从原则上讲,这并不总是可能很快,也不总是可能。

但是下一代云历史看起来更加有趣。

容器虚拟化


下一代是容器。 现在看来,一种带有微服务的轻量级虚拟机会在处理过程中上升,并在没有活动的情况下从RAM中卸载。 也就是说,它们会弹出并被替换为RAM中的应用程序和现代操作系统的交换-使用它们。 听起来很简单,许多主要参与者已经重新编写了专门用于容器的体系结构。

也就是说,它们甚至不是独立的VM,而只是在它们上进行处理,类似于Citrix Xen应用程序。 或容器外壳中的老式旧VM –即具有深度自动缩放功能的同一台计算机。

但这只是第一步。 事实是,还有一个更有趣的事情是函数的容器化。 这仍然是架构师的幻想,但是如果您在弹出容器系统下立即编写代码,则可以将其包装在每个函数中。 有输入,有输出,还有一个“黑匣子”-容器本身。 该函数在代码中被调用-容器“弹出”,计算出并返回以等待下一次调用。

当然,该代码将必须重构和重新优化整体。 但这是值得的,这是未来可能的分支之一。 根据我们的评估,这确实是很遥远的-至少三年,直到第一批巨头将其引入为止,而距俄罗斯工业化应用才15年。

同时,容器-las,这是极客的产品,因为它们不能很好地工作。 俄罗斯没有针对它们的请求,但是有自动缩放的请求。 没有按需付费的新合同。

Source: https://habr.com/ru/post/zh-CN414617/


All Articles