
Alexey
09.12.2017
10:14:44

Aleksey
09.12.2017
10:16:32

Alexey
09.12.2017
10:18:01
+ я всё ещё не могу представить какое нужно будет железо чтобы например держать 1000 активных пользователей одновременно

Google

Alexey
09.12.2017
10:19:56
Активных в смысле что то делающих одновременно


Aleksey
09.12.2017
10:25:03
@eld0727 кстати, это же твоя библиотека для работы с json без промежуточного ast? Вот к королеве движок шаблонов тоже работает без аллокации промежуточного ast в хип. Сравнение двух шаблонов (то есть вывод изменений для того что бы отослать минимальный ченьджсет) тоже работает без выделения дополнительной памяти. Фактически на каждого пользователя выделяется 64/128/512 килобайт в которых происходит вся петрушка связанная с рендерингом. Сейчас движок сравнений умеет выводить дифф для нетривильных деревьев состоящих из 450 узлов ~10000 раз в секунду на моем макбуке. И это я еще не занимался оптимизацией. На пример у меня до сих про считаются хэши для имен тэгов каждый раз, хотя это можно сделать один раз в компайлтайме.
К слову движок шаблонов Королева вынесен в отдельную библиотеку Левша. https://github.com/fomkin/levsha ее можно юзать и как темплейты для того же Play. Левша -- самые быстрые шаблоны для Scala на сколько мне известно. Бенчмарки есть, все можно проверить самостоятельно.
Или можно юзать в Scala.js. Последнее я особо не прорабатывал и не тестировал, но оно работает.
Вот как выходной так все молчат. Понятно чем занимается на работе весь топ чатика!


Alexander
09.12.2017
11:58:38

Александр
09.12.2017
11:58:58

Aleksey
09.12.2017
11:59:41

Alexander
09.12.2017
12:00:23

Aleksey
09.12.2017
12:05:10
Я хотел бы FRP навертеть поверх АПИ Королёва, думаю, насколько это друдоёмкая задача будет.
Наверно можно прикрутить FRP к Левше, потому что в ней нет управления стейтом. Лично я думаю что FRP для фронтэнда это плохая идея. Моя первая либа для фронтэнда на скале была именно FRP-ориентированная, в итоге я отказался от нее в пользу эффекта изменяющего единый стейт. Автор Elm, который изначельно продвигал FRP, тоже в итоге от него отказался в пользу эвентсорсинга.

Alexander
09.12.2017
12:08:41
а rx это frp?

Alexander
09.12.2017
12:08:46

Google

Alexander
09.12.2017
12:09:10

Alexey
09.12.2017
12:10:20
+ на этой же тачке ещё логика будет крутиться


Александр
09.12.2017
12:11:56
aws раздает железки на шару на год, можно проверить
но железо там дно

Aleksey
09.12.2017
12:12:23

Alexander
09.12.2017
12:13:07

Alexander
09.12.2017
12:13:30
просто регистрируешься
попадаешь под free tier

KrivdaTheTriewe
09.12.2017
12:13:52
главное не забыть отключить

Alexander
09.12.2017
12:15:15

Aleksey
09.12.2017
12:16:53

Александр
09.12.2017
12:21:04
Платные услуги?
первый год бесплатно, а потом за месяц прийдет письмо что скоро прийдется плотить

Alexander
09.12.2017
12:21:27

Александр
09.12.2017
12:22:25
Спасибо.
точно помню что на хабре есть тсатья про бесплатный vpn, и в ней господин половину сремини рассказывает как получить сервак прямо с картинками для самых маленьких
или бесплатный vpn за 5 минут, как-то так


Aleksey
09.12.2017
12:29:14
Ну макбук все таки не плохая железка, тут скорее вопрос сколько она потянет на лоу кост конфигурации 1гб и 2 проца по 1ггц
Здесь я только могу развести руками.
Я хочу сэкономить миллион (долларов и человеколет) на отсутсвии необходимости городить SSR, REST (который не только надо писать но и придумывать вместе с фронтэндерами), вебсокеты для пуша, дать возможность без лишних теложвижений отображать данные из очереди.
Хочу порадовать пользователей тем что они получают свою страничку работающей сразу, не загружая тонну джаваскрипта. Порадовать их тем, что у них не кончается память на трех открытых вкладках.
При этом я забочусь о производительности: сделал самый быстрый шаблонизатор.
А ты меня спрашиваешь, будет ли это работать на виртуалке за 5 баксов месяц? Будет. И даже эту твою тысячу пользователей скорее всего выдержит, потому что живой пользователь не кликает несколько раз в секунду, а кликает раз в 3-5 секунд или даже меньше. Я тут кидал как-то игрушку, которую мы с товарищем писали год назад. Там был еще старый Королев без Левши. Это все кутилось на виртуалке 1 ядро, 512 памяти. И логика там была: бот с глубоким минимаксом.
А если серьезно, то конечно ни кто не держит 1000 CCU на такой тачке. Даже без фронтэнда. Если бы это было возможно, то какие-нибудь вконтакте с одноклассниками не тратили бы миллионы что бы держать свои миллионы CCU. Так, $10k закинули в диджитал ошен и все работает.


Arthur
09.12.2017
12:59:35
ты кстати пробовал куда-то на скаладейз подать заявку

Aleksey
09.12.2017
12:59:46

Google

Arthur
09.12.2017
12:59:51
мне кажется они бы с удовольствием приняли доклад о такой штуке

Александр
09.12.2017
13:01:08
главное не в Люблино рассказывать

KrivdaTheTriewe
09.12.2017
13:04:33

Александр
09.12.2017
13:07:39
не было такого, а если и было то я карту заблочил на которую регал и теперь этого не узнаю)


Alexey
09.12.2017
13:10:21
Здесь я только могу развести руками.
Я хочу сэкономить миллион (долларов и человеколет) на отсутсвии необходимости городить SSR, REST (который не только надо писать но и придумывать вместе с фронтэндерами), вебсокеты для пуша, дать возможность без лишних теложвижений отображать данные из очереди.
Хочу порадовать пользователей тем что они получают свою страничку работающей сразу, не загружая тонну джаваскрипта. Порадовать их тем, что у них не кончается память на трех открытых вкладках.
При этом я забочусь о производительности: сделал самый быстрый шаблонизатор.
А ты меня спрашиваешь, будет ли это работать на виртуалке за 5 баксов месяц? Будет. И даже эту твою тысячу пользователей скорее всего выдержит, потому что живой пользователь не кликает несколько раз в секунду, а кликает раз в 3-5 секунд или даже меньше. Я тут кидал как-то игрушку, которую мы с товарищем писали год назад. Там был еще старый Королев без Левши. Это все кутилось на виртуалке 1 ядро, 512 памяти. И логика там была: бот с глубоким минимаксом.
Ну я не знаю твоих бизнесс целей. Интересно откуда в твоём понимании начинается тонна? Ну и если что я не против королёва, я считаю что своя ниша у него точно есть


Aleksey
09.12.2017
13:19:06

Kirill
09.12.2017
13:24:48
ого как Алексей яростно защищает королёв

Alexey
09.12.2017
13:27:39

Aleksey
09.12.2017
13:28:24

Alexey
09.12.2017
13:28:43
ты так говоришь, как будто это занимает больше 100мс

Aleksey
09.12.2017
13:31:18
ого как Алексей яростно защищает королёв
А как я его должен его защищать? ? 100% использующих Королев довольны Королевым. Вот даже Филип вернулся, не смотря на то что вообще собирался делать serverless архитектру на новом проекте. Королев юзают стартаперы, Королев пользуют ынтерпрайзы, всем нравится, но от массового использования его отделяет стена нерационального скепсиса. Типа "мне кажется на это понадобиться больше железа, но проверять я не буду" или "это что-то слишком смело, что скажет мама" или вообще "а где я найду программистов на этот твой королев" (и это скалист спрашивает бугага).

Kirill
09.12.2017
13:35:44
просто гневные тирады ?

Grigory
09.12.2017
13:36:54
Найдёшь аудиторию благодарную
С скепсис свойственен всем не традиционным тулзам, смотри где лифт


Aleksey
09.12.2017
13:42:47
ты так говоришь, как будто это занимает больше 100мс
Как будто да. Это 100 мс на модном макбуке фронтэндера. А на говнодесктопе пользователя 10 летней давности с завирусованной виндой у которого открыто 100 вкладок каждая из которых делает что-то в бэкграуде (на пример майнит битоины), это уже 250-400 мс.
В действительности 200кб это нижняя планка для современного фронтэнда. Ракт + редакс + полифилы + всякие удобные библиотечки (которые тянут за собой удобные библиотечки поверх которых они написаны) и только потом уже самое приложение. Если приложение более-минее больше (не форма обратной связи, я имею в виду), то только шаблоны будут занимать сотни кб.
По этому в какой-то момент разработка фронта встает, потому что все поняли что дальше пухнуть нельзя и фронтэндеры начали прикручивать ленивую загрузку модулей, дропать пухлые зависимости. Как это делают фронтэндеры? Правильно! Переписывают все с нуля, потому что не могут разобраться в своей лапше. И так пару раз в год. Менеджер на совещании сидит с покерфейсом, типа "ну и чо? у всех так! за то смотрите, нашей формой обртной связи опять можно пользоваться! наже на моем старом мобильнике *достает айфон 6s* работает!".


Igor
09.12.2017
13:44:54
А как у королева с горизонтальным скейлингом?

Igor
09.12.2017
13:44:56
А королев больше не позиционируется исключительно для админок?
Те что делать с
- пингами (телефон 2g)
- маштабированием (нагрузка же вся на сервак)?

Aleksey
09.12.2017
13:45:12

Dmitry
09.12.2017
13:46:00

Google

Aleksey
09.12.2017
13:46:01


Alexey
09.12.2017
13:47:17
Как будто да. Это 100 мс на модном макбуке фронтэндера. А на говнодесктопе пользователя 10 летней давности с завирусованной виндой у которого открыто 100 вкладок каждая из которых делает что-то в бэкграуде (на пример майнит битоины), это уже 250-400 мс.
В действительности 200кб это нижняя планка для современного фронтэнда. Ракт + редакс + полифилы + всякие удобные библиотечки (которые тянут за собой удобные библиотечки поверх которых они написаны) и только потом уже самое приложение. Если приложение более-минее больше (не форма обратной связи, я имею в виду), то только шаблоны будут занимать сотни кб.
По этому в какой-то момент разработка фронта встает, потому что все поняли что дальше пухнуть нельзя и фронтэндеры начали прикручивать ленивую загрузку модулей, дропать пухлые зависимости. Как это делают фронтэндеры? Правильно! Переписывают все с нуля, потому что не могут разобраться в своей лапше. И так пару раз в год. Менеджер на совещании сидит с покерфейсом, типа "ну и чо? у всех так! за то смотрите, нашей формой обртной связи опять можно пользоваться! наже на моем старом мобильнике *достает айфон 6s* работает!".
lol, в таком кейсе даже статика с hello world будет тормозить ?
Ну вообще про современный фронт, я тоже считаю что они делают что то не так


Igor
09.12.2017
13:47:24
А что нормально работает с 2г?
Ну если у королева, вся логика на серваке, то это же подвисания UI сплошные.
C react ты загрузил все в браузер и показываешь себе спокойно “прогрессбары”

Dmitry
09.12.2017
13:47:50
Ну то есть работают только прогресбары

Igor
09.12.2017
13:48:40


Aleksey
09.12.2017
13:51:57
А королев больше не позиционируется исключительно для админок?
Те что делать с
- пингами (телефон 2g)
- маштабированием (нагрузка же вся на сервак)?
2г мимо. Для 2г пользователей надо WAP версию делать бгг. Масштабирование (производительность) обсуждали уже. Меня от этого аштрисет. В такие моменты я жалею что здесь запрещен мат, потому что я, без ложной скромности, хорошо матерюсь. Почему это никого не парило в нулевых, когда сайты делали на PHP с CGI с коннектом к БД на каждый HTTP запрос? Почему это начало всех парить сейчас когда железо дешевое и виртуальное?
Я сделал рендеринг максимально дешевым. Угробил на это все свое свободное время весной. И делал я это не для того чтобы можно было на виртулках за 5 баксов можно было запускаться, а для того что бы нагрузка на GC была поменьше и пользователь не замечал стоп-зе-ворлды.


Alexey
09.12.2017
13:59:47
Ну вот я и представляю нишу королёва как фронт для внутренних разработок

Admin
ERROR: S client not available

Aleksey
09.12.2017
14:01:05
Когда я сделаю (или кто-нибудь сделает) что-нибудь что не будет "админкой", то буду говорить "смотрите, королев хорошо работает в _, завялю что королев хорошо для этого подходит".

Grigory
09.12.2017
14:06:57

Aleksey
09.12.2017
14:07:40

Grigory
09.12.2017
14:07:52
все на чудесном жс без хтмлей и тп (ехт)

Aleksey
09.12.2017
14:08:04
вот были времена ?

Grigory
09.12.2017
14:08:23
Ну я про крайности, я против крайностей
Ехт отличный пример крайности

Aleksey
09.12.2017
14:09:09
А экст + gwt помнишь? Вот была красота!

Grigory
09.12.2017
14:09:17
Да

Aleksey
09.12.2017
14:09:32
Еще и никакого джаваскрипта. Все на джаве!

Google

Igor
09.12.2017
14:13:51
Ждем когда hotspot портанут на webassemly - вот жизнь то начнется ?

sherzod
09.12.2017
14:16:34
жесть начнётся
поэтому и не подтягивают
фронтенд начнёт являть собой Вавилонскую башню

Dmitry
09.12.2017
14:17:37
Да уже

sherzod
09.12.2017
14:18:19
сейчас все же есть единый инфраструктурный слой
но это да, мне кажется норм, фронтенд станет полноценным бекендом

Aleksey
09.12.2017
14:20:41


sherzod
09.12.2017
14:25:41
разнообразие языков, подходов. Вообще тенденция довольно общая.
Во первых завершается полное отделение софта от железа, в большинстве случаев теперь мы пишем под платформы: браузер, контейнеры, облака. Ну то есть приосходит естественное, довольно молодая сфера - ИТ инженерия, кристаллизует свои структуры.
И каждая из этих платформ, конечно, развиваясь, станет полноценным вертикальным срезом, захватывающим всё, все слои.
И под каждую платформу можно будет писать на куче языков, вводить методологии, т. е. как мне кажется, структурно не будет различия между ними, что бек, что фронт, что мобильная разработка (и куча всяких других мирков)

Valeriy
09.12.2017
14:29:18

sherzod
09.12.2017
14:36:40
Вообще мне кажется мы часто называем упрощённое правильным. Видя чуть более аморфную структуру, мы называем её неправильной, хотя вглядевшись мы бы могли обнаружить в жиже мегаструктуры ДНК. Но нам кубики нужны. Майнкрафт мирки.

Valeriy
09.12.2017
14:36:50
Коллеги, совет нужен, есть задумка реализовать REST API.... по опыту - легче на .net core, но есть желание получить опыт в этом на scala. Почитал статейки, книжки полистал... думаю, вот что же выбрать из целого зоопарка?

Dmitry
09.12.2017
14:38:12

Aleksey
09.12.2017
14:38:19

Valeriy
09.12.2017
14:40:38
Попробовал play вроде как легко, но тяжеловато, xitrum - легковесно, но чего-то не хватает.... finch - это функциональны стиль, как я понял?

sherzod
09.12.2017
14:41:14
akka-http. Простой, stateless toy пишется в одну страничку кода. Плюс вторая страничка если нужна база какая-нибудь.
Минус высокий порог вхождения.

Aleksei
09.12.2017
14:41:37