From: kmeaw
Date: 2022-02-08 17:37:31Z
> Чуть что, так сразу бросаются за решениями с облаками и десятками
> машин.
Как мне кажется, тому есть две причины. Когда работаешь с одним или даже
двумя физическими серверами, то легко поддаться соблазну, и начать
настраивать сервер вручную, интерактивно, вместо написания кода, который
приводит сервер в нужное состояние. Когда состояние машины будет
потеряно (умрут сразу все диски или систему взломают), повторить
некоторые его части будет проблематично. Когда серверов сильно больше,
то приходится использовать инструменты, решающие эту проблему. Но часто
они подталкивают к разрастанию инфраструктуры, потому что написаны в
первую очередь для тех, у кого она большая.
Другая причина - в необходимости строить отказоустойчивые решения. В
облаках обычно уже есть надёжные сервисы для хранения состояния, они
сразу готовы к использованию.
А по поводу мощности - согласен, сейчас можно в облаке получить одну
виртуальную машину с терабайтами ОЗУ, сотнями ядер и связностью с миром
в десятки гбит/с. И если надёжность не важна, то очень многие
практические задачи можно будет решать на этой одной машине, не
затрачивая усилий на поддержку инфраструктуры для запуска той же задачи
на кластере.
From: Sergey Matveev
Date: 2022-02-08 17:55:10Z
*** kmeaw [2022-02-08 20:36]:
>настраивать сервер вручную, интерактивно, вместо написания кода, который
>приводит сервер в нужное состояние.
Что приводит и к другому:
* люди пишут код для разворачивания, вместо написания кода для
выполнения самой задачи. Неразумно балансируют затрачиваемые силы
* люди меняют архитектуру своего ПО для того чтобы оно стало дружелюбно
к "облакам", в итоге невероятно всё переусложняя, как будто завтра их
сайт любителей хрюшек (без обид для babai.ru, просто недавно смотрел
новости на нём :-)) станет очередным Facebook-ом. И любой простейший
сайтик, который раньше бы выполнялся одним CGI на Perl -- теперь
представляет портянку из кучи микросервисов, которые уже никто не
знает как запустить "вручную"
* люди разучиваются и не знают как руками то что-то при этом поднять.
Очень слабо представляя из чего же вообще сделаны компьютеры и как
внутри них (и ОС) всё устроено хотя бы в общих чертах
В итоге за бешенный ценник мы получим зачастую нечто невероятно
переусложнённое. Хотя, грубо говоря, достаточно было бы tar cf сделать
на вручную развёрнутом сервере, если он упадёт и надо будет восстановиться.
Я тут говорю про довольно простые задачи, к которым бы отнёс и
HackerNews, как очень примитивный по своему функционалу сайт. Форумные
движки куда сложнее. И прежде без проблем поднимали это всё относительно
быстро и оно годами крутилось. В случае проблем -- ну будет какой-то
downtime, не страшно -- 99.99% сайтов/задач это не Facebook/Google
абстрактный, где простой критичен.
>Когда серверов сильно больше,
>то приходится использовать инструменты, решающие эту проблему. Но часто
>они подталкивают к разрастанию инфраструктуры, потому что написаны в
>первую очередь для тех, у кого она большая.
Вот-вот! Для всего свои инструменты. А современный модный тренд это
делать как Google и Facebook, абсолютно бездумно.
>А по поводу мощности - согласен, сейчас можно в облаке получить одну
>виртуальную машину с терабайтами ОЗУ, сотнями ядер и связностью с миром
>в десятки гбит/с.
Я скорее имел в виду что для многих задач связанных с сайтами --
мощность совершенно не нужна. Ну то есть на машине с 10-летней давности
CPU и парой гигабайт RAM можно и большие форумы и Интернет-магазины
отлично крутить. Но да, наверное не на Python, грубо говоря.