Страшно далеки они от народа...
В этих ваших интернетах принято считать, что только люди некоторых специальностей (конкретные списки могут отличаться) есть соль земли, а ИТ-шники живут в своём мире розовых пони и Настоящей Жызни® не знают. Возможно, есть БП таки наступит, то это утверждение окажется правдой, но до тех пор...
Что такое Настоящая Жызнь®? Интернет, в котором ИТ-шников упрекают в её незнании? Смешно. Добыча и переработка полезных ископаемых? Мне даже не хочется думать, что бы там было без ИТ. Транспорт и логистика? Тоже ИТ. Да та же самая высокотехнологичная медицина – тоже в значительной степени ИТ. Вдуть компрессором хоть три, хоть пять атмосфер – не проблема совершенно, а аппарат ИВЛ – штука сложная. Может, там не в компрессоре дело?
Тут читатель скажет – ты не путай форумы с котиками и промышленную автоматизацию – «это другое». Я бы согласился, если бы не такой тренд как коммодитизация.
Словом commodity в ИТ называют самое простое оборудование на самой распространённой элементной базе. Грубо говоря то, что можно купить на Митинском рынке. Например, двухсокетный сервер на платформе x86, собранный в подвале на Малой Арнаутской улице из Intel’овских машинокомплектов.
Лет тридцать назад сравнивать «персоналки» с серьёзными серверами никому бы в голову не пришло. Бал правили DEC Aplha, Silicon Graphics, VAX и Sun. Двадцать лет назад оказалось, что «персоналка», помещённая в корпус другой формы, вполне может работать и сервером. Десять лет назад почти все вычислительные мощности были представлены этими самыми «персоналками», но для хранения и обработки данных по-прежнему использовались дорогие специализированные серверы. Сегодня доля «серьёзного» серверного оборудования стремительно скукоживается, составляя что-то около 15% в деньгах, а в штуках – незаметную величину в рамках статистической погрешности.
Причины, по которым это происходят, в общем-то очевидны.
Во-первых, стоимость изготовления процессора или любой другой микросхемы практически незаметна на фоне затрат на её разработку. Чем больше выпускается некоторых процессоров, тем более тонким слоем по ним размазываются НИОКР, и тем ниже цена. В результате вместо разработки специализированных контроллеров оказывается дешевле купить избыточно мощный процессор общего назначения. Вся «специальная» часть реализуется программно, а заодно при этом существенно снижается стоимость, сроки разработки и цена ошибки этой «специальной» части.
Во-вторых, «персоналки» нынче весьма и весьма мощны. Если 20 лет назад 8-ядерный сервер был серьёзным вложением, то сегодня никого не удивить 8-ядерным ноутбуком или телефоном, а самый что ни на есть commodity вполне может содержать в себе полсотни ядер. Если же для твоей задачи столько не хватает, значит, не хватит и сотни, и двух, поэтому имеет смысл писать программу так, чтобы она работала на нескольких серверах одновременно.
В-третьих, за счёт удешевления «персоналок» «серьёзные серверы» дорожают – их разработчики тоже хотят есть, а брать деньги при падении продаж неоткуда, кроме повышения стоимости конечного изделия. Да, «серьёзный» сервер надёжнее, но программисты давно уже научились адекватно реагировать на потерю сервера, поэтому большого смысла в сверхнадёжных машинах давно нет (ну, за исключением некоторых специфических областей типа ядерной энергетики, но это совсем отдельный разговор).
Та же история с разработчиками: технологии всё глубже проникают друг в друга, и очень скоро может случиться так, что разрабатывать программное обеспечение для регулировки транспортных потоков в мегаполисах и для томографов будет тот же самый Вася, который до этого писал только игры для вконтактика. Не, ну а чо – оборудование такое же, инструменты те же самые?
Вот тогда и узнаем, что такое Настоящая Жызнь®