Pull to refresh
4
0
Dzmitry Lazerka @dlazerka

Software Engineer

Send message

После того, как VictoriaMetrics получает ответ от Kubernetes API, она преобразует полученную сущность, в данном случае под, в специальный список labels вида _meta_kubernetes с какими-то параметрами. 

Так а где узнать список всех доступных _meta_* лейблов?

Рекомендую писать проект современно: на Java это стек: Spring Boot + Spring Data JPA

Эмм, не совсем современно, хоть и популярно. Spring тянет с собой медленный reflection stack (все ключи бинов в итоге приводятся к строке). Современно -- это Dagger 2, который генерирует dependency injection во время компиляции, так что JIT проще, и можно скомпилировать код.

Вообще современно сейчас деплоить приложения в контейнерах легковесных, где довольно важно startup time. Отчасти из-за этого, по моим наблюдениям, Java в последнее время стали всё больше компилировать с помощью GraalVM. А там dependency injection ahead-of-time очень даже помогает.

Для веб сервера Jetty конечно очень популярен, не спорю, но я бы сказал сейчас современно писать на обёртках Netty (из-за async processing), например http4k или ktor для Котлина. Они тоже компилируются с GraalVM.

Для all-around frameworks (по крайней мере в Долине) популярны Dropwizard и Micronaut.

А JPA уже точно устарело. JOOQ самый популярный из современных, я бы сказал. Опять же таки из-за кодогенерации во время билда, как и Dagger.

Немного оффтопик, но очень часто на проектах с Elasticsearch замечаю, что его там используют не по назначению -- для метрик или логов. Для метрик или логов есть гораздо более удобные, простые и в тысячи раз более производительные системы.

По моему опыту, Elasticsearch остаётся использовать только там где нужна лингвистика (искать по корню слова), или там где нужно ранжирование результатов, а не просто сортировка (например, exponential decay).

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


Всегда направляйтесь туда, где вы почувствуете трепет.

Сегодня чувствуете трепет, а завтра нет. Плохой совет.


Я бы вместо этого рекомендовал объяснить идею своим потенциальным кофаундерам, и если они также загораются, то скорее всего будут подпитывать вас своим энтузиазмом в трудные дни.

Подскажу как ещё можно значительно сократить размер — использовать Clickhouse, который как раз для хранения иаких эвентов и создан.

На мой взгляд, Kotlin решил эту проблему очень хорошо, наилучший синтаксис. С Optional постоянно эти if писать, вместо очевидного elvis operator: "?:"
Если вложенная структура, то foo?.bar?.baz()

А какие у основных реализаций характеристики по read/write latency, throughtput? Например, у меня есть более иерархические данные, которые выглядят как вполне подходящие под LDAP. И я выбираю, класть их в обычную реляционную БД, или в LDAP. Если для РСУБД есть много бенчмарков и понимания как оно "взлетит", то с LDAP это неочевидно. Например, как атрибуты и объекты хранятся на диске, чтобы можно было оценить, насколько быстрыми будут операции с ними?

Проблемы описаны хорошо, а вот решения как-то смазано. Хотя автор правильно указал, что это не решения, а "временно снизить уровень влияния прокрастинации". Так а куда двигаться? С какого шага начать перестраивать свой организм чтобы избавиться по-настоящему от прокрастинации?


Есть ещё известная книжка "Willpower: Rediscovering the Greatest Human Strength" там вроде подробнее. Но
мне пока не хватило силы воли (с) её прочесть.

Ну попросить денег под шумок всегда можно.


Но чистой "контрольной группы" в образе белорусов всё-таки не получится — все мои знакомые там уже давно ведут себя по-другому, моют руки, не пускают детей в сады/школы, сидят по домам больше. Такой неофициальный полу-карантин.

Ну в айтишних конторах, где я работал — это был путь к повышению. Если ты тянешь на себе кучу ответственности, то это хорошо, самое главное — не дать этому устаканиться "так и надо", а надо показать это всем (самое главное своему начальнику), что ты вот какой крутой, чуть ли не целый отдел один тянешь, поэтому тебе срочно нужно повышение иначе уйду (все и так это понимают).


И начальники тоже это понимают, зачастую даже рады этому, ведь денежная мотивация — самая простая и понятная, с такими людьми просто работать. Поэтому они могут болтать повышением как морковкой, а человек будет готов работать за двоих. И это правильно, справедливо.


В Гугле на этом вообще построена вся система карьерного роста — люди наоборот сражаются за право взять на себя какой-нибудь большой дополнительный проект, поработать overtime, и может быть получить промоушн. Правда тут тоже не всё так гладко: это должен быть именно отдельный проект, с visibility, а не просто поддержка чего-нибудь что уже сделано.

Лайфхак — полиграф работает только в том случае, если тестируемого убедить что полиграф работает. А если тестируемому пофиг на полиграф, то он ничего и не показывает. Поэтому вы можете заметить как перед прохождением вас активно убеждают какой это точный и важный прибор, который всё видит. А на отъявленных преступников, например, не применяют — бесполезно.

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

Автор наверно имел ввиду образ (image).
Не знаю, не знаю, мой образ с "тяжёлой" Java+Kotlin и всякими свистелками типа Jersey REST-сервлетов весит 102.2МБ (все слои). FROM openjdk:8-jre-alpine.


Если он всё же имел ввиду потребление памяти контейнером, то и тут тоже не сходится — проверил, мой потребляет 236 МБ из docker stats, из которых 150МБ — мой жава-сервер внутри, значит сам контейнер всего 86МБ.


Автор, похоже, что-то делает не так.

Всё верно, но
Мне по-прежнему нужны рутовые права, чтобы запустить контейнер.
Ну вот почему, почему, скажите мне, никто не дочитывает гайд «Install Docker» до конца? Там же написано
sudo usermod -aG docker $USER
(то есть администратор разрешает юзерам запускать докер от своего аккаунта, точно так же, как разрешает им вообще логинится в систему).
Так что не нужны ему рутовые права, пускай гайд дочитает.
Кроме того, в США полезно такие алгоритмы патентовать, даже если нет намерения их использовать. И научная статья может быть хорошей рекламой патента, пусть это и не основная её задача.
Вопрос к Роману: Вот вы говорите, что в мире мало информации, мало статей по вашим задачам. Например, про локальный атомарный HashMap — ноль статей. Читатель как-то сразу ожидает фразы "а теперь уже одна, наша". Почему вы не публикуете сами такие статьи?
Как говорится, критикуешь — предлагай, да и двигать мировую науку всегда почётно.
Спасибо за интересный пост.

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

Появилась ли у вас такая идея? Не возникалo ли желаниe заняться разработкой своего продукта?
Вот интересно стало, а какое же «правильное» определение они давали? Или сами не знали и отсылали погуглить :)
У нас, как я написал выше, «рационально-критическое мировоззрение».
На мехмате Белорусского ГУ философия определялась как «рационально-критическое мировоззрение».
1

Information

Rating
Does not participate
Location
Минск, Минская обл., Беларусь
Date of birth
Registered
Activity