Главная Юзердоски Каталог Трекер NSFW Настройки

Программирование

Ответить в тред Ответить в тред
Check this out!
<<
Назад | Вниз | Каталог | Обновить | Автообновление | 50 2 15
Язык для бэкенда (для своих vps) Аноним 26/05/24 Вск 20:31:52 3170217 1
image.png 1239Кб, 1240x600
1240x600
Расскажите какой язык используете для бэкенда и почему именно на нем остановились?
В каких рамках железа VPS или сервера укладываетесь (приблизительные цифры, например 1gb ОЗУ, на node.js, при 10К хостов в день)? Или с какого железа начинали?

Будет полезна любая информация, пока просто не могу определиться с языком, рад любому опыту.
....
Когда-то (очень давно, лет 10 назад) был проект на пхп, который укладывался на сервере, где-то в 3-4ГБ, при 35К хостов в день, но код там был очень плохой.
Аноним 27/05/24 Пнд 09:37:04 3170461 2
Смотря какие параметры, рпс, объем трафика и тд и тп.

У меня есть сервис на джаве. Крутится в Oracle Free Tier с 2021 года: 0.1 vcpu, 1gb ram, хватает.
Каков вопрос таков ответ.
Аноним 27/05/24 Пнд 09:48:53 3170471 3
>>3170217 (OP)
Нода снискала свою нишу в серверлесс/лямбда. Тащить её на cheap боксы смысла нет, ибо оверхед по ОЗУ будет великоват.
Аноним 27/05/24 Пнд 12:44:57 3170713 4
>>3170461
Это все понятно, я как раз спрашиваю не размышления, а реальный опыт в вебе. Что было и сколько кушало. Понятно что цифры поверхностны.
Аноним 27/05/24 Пнд 12:46:17 3170715 5
>>3170471
Чем отличия лямбды от vps будет (кроме того что инет это 99% ботоферма, которая накручивают лимиты)
Аноним 27/05/24 Пнд 13:04:10 3170745 6
>>3170715
Не ебёшь мозги с конфигурацией, балансировкой, ООМ и прочим. Легко переносишь свою хуйню с одной платформы на другую. Не то, чтобы это нельзя было сделать на своей ВПСке, просто для большинства петов можно шит-тир найти, который тебе выйдет в нолину и будет его достаточно.
Аноним 27/05/24 Пнд 13:25:23 3170780 7
>>3170745
На впске ты ничего такого не делаешь, может когда до дедика дорастешь, начинаешь думать об масштабирование, но точно не впс.

Зато полный контроль трафика, тебе не придет чек на 500$, за то что кто-то обучал бота на твоем контенте в пятницу вечером.
Аноним 28/05/24 Втр 00:51:43 3171459 8
>>3170217 (OP)
>Расскажите какой язык используете для бэкенда
Java
>и почему именно на нем остановились?
Потому что знаю его хорошо
>при 10К хостов в день
не знаю что это за метрика, выдает только обсервабилити какое-то

зависит от того, что тебе нужно от сервера, но в целом в джаве можно ужаться очень сильно по потреблению, скорее ближе к 100 - 200 МБ, а ZGC говорят очень отзывчивый
Аноним 28/05/24 Втр 08:40:34 3171541 9
>>3171459
>но в целом в джаве можно ужаться очень сильно по потреблению
Обычно под "можно" стоит дикий бубнопляс, не?

>не знаю что это за метрика
Метрика владельца сайта, к сожалению раздел /web протух.
Аноним 28/05/24 Втр 08:57:15 3171544 10
>>3171459
>не знаю что это за метрика, выдает только обсервабилити какое-то
Эквивалент serve. Грубо говоря сколько раз в день реквестов было обработано. Метрика ненадежная т.к. до 90% трафика - боты/кравлеры
Аноним 28/05/24 Втр 09:50:58 3171571 11
>>3171459
>не знаю что это за метрика, выдает только обсервабилити какое-то
Метрика 🐗猪🐗чиков из прошлого десятилетия, когда мелкий бизнес имел сайт и дрочил на СЕО.

Сейчас у них просто Инстаграм, ВК и ФБ
Аноним 28/05/24 Втр 10:05:43 3171578 12
>>3171541
>Обычно под "можно" стоит дикий бубнопляс, не?
Ну я бы не сказал, обычно достаточно не брать тяжёлые фреймворки и явно задать верхнюю границу потребления памяти, это для стандартного реста/шаблонизатора.
Но конечно можно копать сколько угодно, контейнер 60 мб размером, zgc, garbage-free и так далее, сколько интересно.

>>3171571
>>3171544
Спасибо, а ну если это 10к уникальных посетителей в день, то легко на паре сотен мегабайт. Честно говоря с этим любой язык справится, хз чего тут выбирать.
Аноним 28/05/24 Втр 11:18:09 3171641 13
>>3170217 (OP)
>>3170715
Я вообще даже не задумываюсь о таких вещах. Все сайты в лямбдах/бессерверных функциях. Ржу над мифами типа оверпрайс и $500 в месяц. Нужно очень-очень-очень-очень сильно постараться, чтобы вышла такая сумма. $500 на лямбдах? Ты монстр. Это надо пол-интернета обслужить. Даже не думаю о оперативке, ОС, вся инфраструктура разворачивается скриптом. Основные расходы - это нейронки, база данных, кеш. Пишу на rust/typescript.
Аноним 28/05/24 Втр 11:18:48 3171643 14
>>3170217 (OP)
У меня все мои скрипты и все-все работает на ноде на впске с 2гб оперативы и 2ядрами, там же MySQL крутится, но в основном в SQLite пишу все.

Крутится десяток телеграм ботов с небольшим юзаджом - до 5к сообщений в день.

Крутится пару интернет магазов самописных и интеграций со всякими платежками.

Хз что считать хостами, если чисто посещения считать - то по всему где-то 15-20к в день, на мониторах нагрузки 0.

Но у меня нет прям сложной логики - там жсоны из одного места в другое поперекладывать и таблички сджойнить и выплюнуть, да и закрыто все nginx и cloudflare.

Плачу 300₽ в месяц корешу
Аноним 28/05/24 Втр 11:20:20 3171647 15
>>3171643
Не на чистой ноде канеш, на ts-node (я ее даже не "компилю" ибо похуй, в дев моде стартую, чтоб логи норм были).

Как "фреймворк" юзаю fastify и express (который пиздец тормозной)

Этот анон прав с серверлессом для чего-то простого, но мне спокойнее на своей VPSке, ибо ей лет 10 уже
>>3171641
Аноним 28/05/24 Втр 11:44:22 3171670 16
>>3171647
>серверлессом для чего-то простого
Это вообще никак не связано. Простой или сложный - зависит только от твоего полёта фантазии. Для ботов конечно не пойдёт, т.к. там надо постоянное открытое соединение держать.
Аноним 28/05/24 Втр 12:28:50 3171745 17
>>3171670
> Это вообще никак не связано
Да я именно про случай, когда если небольшая нагрузка - вообще во фритир можно попадать с серверлессом.

Это-то понятно, что можно красиво функциями и прод решения делать.

Олсо, на одном из рабочих проектов у нас телеграм бот в клауд фанкшенах оч хорошо бегает, но там телега хуки шлет
Аноним 28/05/24 Втр 12:58:53 3171773 18
>>3171745
Ой бля, в общем контексте, функции это наименее затратная область. Что дороже, какой-нибудь textract, который стоит $15 за 1,000 документов. Или лямбда, $0,20 за миллион запросов? Дороги не сами бессерверные функции, а дорого то что они вызывают. Набегает в основном за побочные сервисы, за ключи шифрования, за базу данных, за graphql, за нейронки. Я не знаю почему у вас такая пиздец фиксация на функциях, нейронки дороже намного. Как и step functions и многое другое.
Аноним 28/05/24 Втр 15:57:11 3172011 19
>>3171643
Интересно, спб. Тоже думал ноду попробовать или го.
Аноним 28/05/24 Втр 15:59:07 3172012 20
>>3171571
>дрочил на СЕО.
Оно умерло?
Аноним 28/05/24 Втр 18:00:29 3172137 21
>>3171773
Ты молодец, что баззвордов накидал.
Но в итоге забыл, что помимо просто вызово функции базово биллятся еще время, сколько она работает, оператива, которую оно жрет, egress и еще всякая хуйня.

В итоге набегает довольно внушительная сумма

> graphql
Я хз в каком плане ты собрался платить за язык запросов, или ты про сервисы, которые типа гейтвей поверх клауд функций?

Тут тоже хуйня выходит, у меня буквально на проекте с 20к юзеров постоянных во внутренние сервисы через гейтвей за день прилетает лям запросов, а там еще джобы всякие и тп.

С клауд функциями у тебя счет набегает такой, что охуеть можно. Даже амазон со своей инфраструктурой хуй к носу прикинул и понял, что лямбды дохуя дорого выходит и часть сервисов обратно на тачки перевез
Аноним 28/05/24 Втр 18:43:16 3172185 22
>>3172137
>Я хз в каком плане ты собрался платить за язык запросов, или ты про сервисы, которые типа гейтвей поверх клауд функций?
Да, про это.

>у меня буквально на проекте с 20к юзеров постоянных во внутренние сервисы через гейтвей за день прилетает лям запросов
30 x $0.2 = $6 в месяц за лямбду + 30 x $0.9 = $27 за гейтвей, это не так дорого. Ты примерно столько же платишь за впс. По крайней мере, как выёбываться зарплатами, то тут каждый первый по 300к получает, не меньше.

>Даже амазон со своей инфраструктурой хуй к носу прикинул и понял, что лямбды дохуя дорого выходит
И чё раз амазон так решил, теперь всем на впс переходить и на кубер? А ты попробуй на своей впс сделай так: возьми 10 тысяч сайтов для обхода. Запустить puppeteer и обойди их все. Я могу за 10 секунд отскрапить все 10к в параллели, просто отправлю таск в очередь и лямбда тут же отработает. У всего есть свои минусы, но это не значит что use case'ов нет.
Аноним 29/05/24 Срд 11:19:20 3172742 23
>>3172185
> А ты попробуй на своей впс сделай так: возьми 10 тысяч сайтов
Зачем? ну опросит, ну чуть помедленнее.

ключевое отличие обычного бизнеса созданного на свои, а не венчурные деньги - мы не особо спешим.
И деньги пахнут тем же
Аноним 29/05/24 Срд 11:22:40 3172745 24
>>3172185
>Ты примерно столько же платишь за впс.
И тут не прав. В hetzner и digitalocean это стоит 2-3 евро.

Выгода от зрелости технологии.
Аноним 29/05/24 Срд 11:54:17 3172781 25
>>3172745
>И тут не прав. В hetzner и digitalocean это стоит 2-3 евро.
Ну и пользуйся ради бога, я же тебя не заставляю уходить. Если где-то в польше или в африке ты нашёл за пол-доллара или бесплатный впс, да и ради бога. Какбе я тебя ни к чему не принуждаю - просто описываю свой лично опыт. Схуяли я не прав? Для конкретно моей задачи всё подходит идеально.

>>3172742
>ключевое отличие обычного бизнеса созданного на свои, а не венчурные деньги
Я также на свои делаю! И ничё, не умер, не лежу в подворотне, обосранный с бутылкой водки. Как видишь, счёт на $100к не пришёл, хотя мне постоянно пророчат обратное.
Аноним 29/05/24 Срд 12:06:57 3172787 26
>>3172185
>По крайней мере, как выёбываться зарплатами, то тут каждый первый по 300к получает, не меньше.
то есть лямбды для флекса зарплатами на самом деле?
Аноним 29/05/24 Срд 16:33:13 3173121 27
>>3172781
Ты видимо не пуганный и не видел что могут творить боты в инете. Я уже молчу про дос/ддос атаку. Если на дедике ты просто полежишь (а иногда дц может и помочь), то на облаках ты еще и оплатишь все это.
Аноним 29/05/24 Срд 20:25:46 3173484 28
>>3172781
>Ну и пользуйся ради бога, я же тебя не заставляю уходит
Нет, ты же в каждом треде среш.
Аноним 29/05/24 Срд 20:32:00 3173489 29
Аноним 29/05/24 Срд 20:51:23 3173512 30
>>3173489
Какое железо, ОЗУ хотя бы.
Аноним 29/05/24 Срд 23:37:05 3173688 31
>>3170217 (OP)
Сейчас попробовал через jmeter замерить локальный сервак на javalin`е пачкой в 100к запросов в 10 тредов = 20к rps, потребление памяти 100 МБ, в пике потребление 8% от моего старого 3570К
Все что сделал - это java -Xmx64m
Аноним 30/05/24 Чтв 00:02:20 3173711 32
>>3170217 (OP)
Go (Gin): Прекрасно себя зарекомендовал в высоконагруженных проектах. Использовал на VPS с 1GB RAM и 1 CPU для обработки более 20K хостов в день, благодаря высокой производительности Go и его эффективности в использовании ресурсов.
Аноним 30/05/24 Чтв 00:13:09 3173729 33
>>3173484
Двачую. Уже с первых слов этого облачника узнаю.
Аноним 30/05/24 Чтв 00:32:42 3173744 34
>>3173711
В древние времена с такой нагрузкой справлялись PHP сайты на серверах-впс с 256гб оперативы

Но я не понимаю, что за жлобство, иметь ресурс с трафиком, и держать его на 1гб оперативы. Времена другие, чем 15 лет назад, хостинг ничего не стоит. Это же каким ментальным нищуком надо быть.

Купить вариант на 8Гб, ну если прямо совсем нищий, то 4гб.

Это если проект деньги не приносит, чисто для себя.
Аноним 30/05/24 Чтв 00:50:00 3173757 35
>>3173121
да пиздит он, вообще ничего про реальность не знает

Про эти 1-10 долларов в месяц смешно читать. Когда реальный бизнес, завязанный на интернете, там не бывает счетов в 1000 долларов в месяц. Там легко на десятки тысяч долларов в месяц всё идёт.

Амазон от AWS в 2023 году 90 миллиардов долларов получил. Это revenue. А число бизнесов меньше 2 миллионов. Считай свыше 50 тысяч долларов в год средний бизнес тратит

Там просто другая логика работает, когда бизнес. Вот ты американский бизнесмен, тратишь 100 тысяч на счета Амазона. Но у тебя работает несколько айтишников, у каждого зарплата больше.

Лучше платить 100 тысяч вместо 20, но держать на пару человек меньше.
Аноним 30/05/24 Чтв 12:29:57 3174137 36
>>3173711
Звучит интересно. Тоже стал копать в сторону го, джава и шарпы мне показались прожорливые (хотя это может по началу так, а там выравнивается).

Я только не понял в го (gin) можно ограничить количество горутин, чтобы по памяти не вылететь на банальной dos-атаки? Или это делать средствами nginx (не помню, вроде можно).
Аноним 30/05/24 Чтв 12:35:02 3174143 37
>>3173711
Какой ЖПТ это написал?
Аноним 30/05/24 Чтв 15:00:52 3174334 38
>>3173757
Речь про "реальный" (?) бизнес не шла, я рассказываю про лично свой опыт. Если у кого выходит десятки тысяч долларов - причём здесь я? Твои ожидания не надо проецировать на меня. Я же не говорю, а чё у тебя хостинг не как у газпрома? Вон газпром миллионы долларов тратит и ты должен тратить миллионы долларов как они. Смешно читать про твои $10 в месяц, фейсбук вон вообще по миллиону в час тратит и ничего. Какие у кого потребности, такая и плата. У меня есть клиент, который $800-1200 тратит, а есть который $30,000 в месяц платит. А есть который $1,8 платит. У них разные потребности, некоторые не пытаются экономить, поэтому у них дорого выходит.
Аноним 30/05/24 Чтв 16:11:28 3174423 39
>>3174334
Как бы когда ты думаешь об экономии 1000 долларов в месяц вместо 2000, это понятно. Хотя по меркам бизнеса это не деньги, меньше зарплаты одного человека квалифицированного.

Но когда ты с серьёзным выражением лица пытаешься что-то там про лямбды рассказывать, на которые якобы тратишь по 6 долларов в месяц, это ничего, кроме умиления не вызывает.

Облака всегда сильно дороже по чеку за инфраструктуру, кроме историй, когда нужно редко и разово.

Блин, вот захотел ты поднять обычную SQL базу. Самая минимальная база, с небольшой нагрузкой, минимальной памятью, в AWS будет от 30 долларов в месяц..

Которую ты легко можешь поднять на своей впс-ке. Если база помощнее, которую тоже можно поднять на ВПС получше, там легко уже 500 долларов в месяц может быть.

Для себя это чудовищная переплата. Для бизнеса норм, там иначе расходы считают.
Аноним 30/05/24 Чтв 16:16:59 3174433 40
>>3174423
и самое забавное с базами, вот допустим у тебя история, когда в основном твой проект простаивает, нагрузка есть, но минимальная, а иногда бывают периоды большой нагрузки. Данные те же, просто очень много пользователей и запросов.

Так вот нет такого, чтобы ты платил только за периоды большой нагрузки. Ты должен держать мощную базу всё время. Хотя идея облаков в том, чтобы использовать ресурсы по потребности. Получается, что всё тоже самое, как если бы ты себе выделенные сервера покупал-арендовал на долгосрок.
Аноним 30/05/24 Чтв 16:55:05 3174486 41
>>3174423
>что-то там про лямбды рассказывать, на которые якобы тратишь по 6 долларов в месяц, это ничего, кроме умиления не вызывает
...И я не отказываюсь от своих слов. Есть реальные примеры сайтов, вот сайт https://acloudguru.com/ у них 300 тысяч студентов и лямбда выходит в пределах free tier.

>Облака всегда сильно дороже по чеку за инфраструктуру
...Разговор шёл не за все сервисы в облаке, а конкретно по функциям.

>Самая минимальная база, с небольшой нагрузкой, минимальной памятью, в AWS будет от 30 долларов в месяц..
Ну не 30 долларов, это ты про rds говоришь. А аврора/dynamodb/timestream у них идёт оплата за количество запросов.

>можно поднять на ВПС получше, там легко уже 500 долларов в месяц может быть.
>Для себя это чудовищная переплата
Так я ответил уже на это здесь >>3171773 Дороги не сами функции, а побочные сервисы, такие как rds/textract/sagemaker/eks и так далее.

>>3174433
Ой да всё там есть. Смотри аврору https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless-v2.how-it-works.html или planetscale https://planetscale.com/
Аноним 30/05/24 Чтв 22:00:52 3174782 42
>>3174486
>у них 300 тысяч студентов и лямбда выходит в пределах free tier.
Значит реальн они этими лямбдами не пользуются. Так, приткнули куда-то.

Не нравятся базы, посмотри на трафик. У AWS S3 тарифы от 90 долларов на ТБ (если мало трафика) до 50 долларов, когда много.

На VPS и выделенных серверов тарифы по 1-2 доллара за ТБ. Это если из расчёта лимита включённого трафика считать.

В любом случае разница десятикратная.

>Дороги не сами функции, а побочные сервисы, такие как rds/textract/sagemaker/eks и так далее.
Ну и смысл тогда какой в этих функциях? Если они сами по себе не работают. Тебе всё равно массу инфраструктуры надо держать, ничто не мешает на ней же запустить эти лямбды.

Я вижу реальный смысл таких услуг только тогда, когда тебе надо иногда что-то очень тяжёлое запускать. Но редко. Там когда у тебя что-то очень тяжёлое крутится, то 1% времени. В таких случаях проще и дешевле взять в краткосрочную аренду ресурс. Но это реально какие-то редкие кейсы
Аноним 31/05/24 Птн 03:03:31 3174986 43
>>3174782
Жму пинус шарящему человеку.
Когда кто-то отдаёт из своего "облачного" сервиса хоть сколько-нибудь крупные порции данных, хотя бы даже 10-мегабайтные джейсоны, его можно разорить детсадовским дудосом. 1 ТБ — это 2.5 часа на гигабитном канале. Представим себе дудос с всего 10 (десяти) машин в течение всего 5 часов — это 20 ТБ, за которые Vercel попросит 3к баксов.
Аноним 31/05/24 Птн 11:10:30 3175257 44
The Ultimate Gu[...].png 47Кб, 863x520
863x520
>>3174782
>Ну и смысл тогда какой в этих функциях?
Функции - это основная рабочая лошадка. В них все вычисления, начиная от бекенда, заканчивая рассылкой писем и уведомлений. Это даже не микросервис, это НАНОсервис. Они делают микро-таски, а-ля обработки апи get products. И их очень много. Обычно сотни в моих проектах.

Смысл в том, что нужно головой думать и маняврировать. Термин "multicloud" придумали не просто так. Проблема в том, что быдло мозгами не думает. Они приходят, подключают рандомные сервисы, а потом офигевают от счетов. Там есть дешевые сервисы и есть дорогие. Почти всё можно сделать десятком разных способов.

Например, когда делаешь 3-х летнюю предоплату за базу данных, там даётся скидка 52%. За 3 года $224 микроинстанс или по $6 в месяц, цена за бд. Но не 30 долларов как ты говоришь. Тоже самое с S3 и всем остальным. Можно хранить не в S3, а в wasabi/backblaze b2/cloudflare r2. Или допустим, можно использовать спот-инстансы и экономить до 90%.

Короче, эта проблема фикситься элементарно. Алгоритм примерно такой:
Не нравится серверлесс/функции ---> бери spot/делай предоплату.
Не нравятся дорогие бд (rds) ---> делай предоплату.
Не нравится s3 ---> бери wasabi/cloudflare r2.
Боишься дудоса ---> ставь троттлинг.
Боишься ботов ---> настраивай waf.

Открываешь детализацию счёта, смотришь что самое дорогое --> оптимизируешь --> профит!!!
Аноним 03/06/24 Пнд 11:41:38 3178687 45
По-мониторив инфу и некоторые тесты, пришел к выводу, что самый выгодный вариант для своего бэкенда это го, несмотря на неудачный дизайн, особо выбора и нет.

Джава дофигра жрет и инфраструктура такая что пофиг на экономию, шарп еще больше жрет, да и сомнительная судьба в опенсорсе, раст избыточен и неудобен, хотя по началу казался идеальным, пока не увидел костыльные решения некоторых вещей. Рассматривал еще нод.жс с javaDoc, неплохо, с учетом того что надо так же знать много подводных камней как и го, но опять же, если с фронтом все ясно, то вообще непонятно что там на бэкенде, есть ли нормальные и живые либы.
Аноним 03/06/24 Пнд 13:07:01 3178799 46
>>3178687
Если вдруг надумаешь ноду, то не бери ноду с jsDoc.
Бери тайпскрипт и запускай файлы просто через tsx (не ts-node, а tsx именно), оно там само разрулит и типы есть.

В качестве либ берешь fastify или hono.
ORM'ок и тп много, я для личных проектов беру Drizzle или Prisma (там свой язык описания схемы) - для простых личных проектов самое то, и схему по БД сгенерит и попушить в бд можно, и миграции сгенерит.

Я это запускаю в docker-compose или pm2 прямо на тачке.

Но в целом, у тебя для личных проектов, что го, что нода - код плюс-минус одинаковый будет, все ощутимое отличие будет чисто в коде и хендлинге ошибок
Аноним 03/06/24 Пнд 13:14:05 3178805 47
>>3178799
Олсо, для ноды и тайпскрипта есть ебейшая штука - trpc.
У тебя типы сразу шарятся между бэком и фронтов, не надо дрочить схемы и тп.

Меня это очень подкупает, базово 🌶чу sveltekit/react, fastify и trpc, но я ебанутый в плане типов, мб это только меня ебет, но очень удобно в одного когда кодишь - сразу видишь ошибки, где формат поменялся и тп.

Единственное с чем периодически дрочусь - кронджобы, ибо у меня нода в N инстансах, но кронджобы я кидаю просто в отдельный инстанс.

мимо-анон индихакер c двумя десятками аппок на ноде
Аноним 03/06/24 Пнд 15:11:03 3178966 48
>>3178799
>tsx
Какой-то плагин для ноды? Мало инфы.
Аноним 03/06/24 Пнд 15:37:45 3179006 49
>>3178966
Это крч 🌶ня, как ts-node - запускает ts-файл сразу в ноде (компилит там внутри), но отличие главное в том, что оно сама еблю с типом модулей и конфигов берет на себя и работает из коробки

https://github.com/privatenumber/tsx
Аноним 03/06/24 Пнд 23:04:05 3179467 50
>>3179006
Компилирует во что? В тот же js? Он же и так компилится в js?
Ответить в тред Ответить в тред

Check this out!

Настройки X
Ответить в тред X
15000
Добавить файл/ctrl-v
Стикеры X
Избранное / Топ тредов