Pull to refresh
35
0
Илья Сазонов @poxvuibr

Software developer

Send message
Скажите, почему тормозит буквально любое гуевое приложение на яве?

Это не соответствует действительности.


Из примеров: idea

idea это не любое приложение, это лучшая среда разработки для java, kotlin и кучи других языков. Можно было бы сказать, что она тормозит, если бы было другое приложение со сравнимым количеством фич, которое работает быстро. Но его нет.


и родной ораклячий девелопер

Почему тормозит девелопер сказать не могу, так как не пользуюсь. У девелопера есть нетормозящие аналоги сделанные на других языках?

Плохой баш начинается где-то в районе if, функций, трапов, массивов и т.д.

И примерно таким же башем написан докерфайл для СУБД Оракл, например. Про кофигурацию не на баше похоже забыли как про страшный сон.


В докерфайлах есть тонкий момент — они не замена ансиблу.

А замена только тому сценарию использования ансибла, которая конфигурирует приложения? Так выходит?


Где-то над ними у вас либо ансибл, либо compose, либо swarm, либо k8s. Связывать вместе все эти приложения кто-то всё-таки должен.

Очень хорошо и понятно написано, спасибо! Но compose же прокидывает порты и настраивает что-то вроде внутренней сети между контейнерами. k8s и swarm тоже такое делают. Вы хотите сказать, что с помощью ансибла можно всё это сделать, пусть это и не специализированный инструмент? Или, что это один из юскейсов под которые ансибл делался?

Вообще говоря, в докерфайлах и анисбл тоже.

Неужели кто-то так делает? Вы не скажете, где можно поглядеть?


Использование же баша в докерфайлах (чья структура лично у меня вызывает глубокое офигевание примитивностью)

У меня тоже. Сколько говорили, про то, что конфигурацию надо делать как код и админы должны быть немного программистами, а программисты должны оставаться программистами, даже когда админят. Сколько было разговоров про то, что шелл скрипты это ужасное прошлое, рассчитанное на один successfull path. И что в результате? В результате баш опять везде. Как так вышло то? Ведь вроде признали, что это не правильно.


Вторая причина — всеобщая доступность, сохраняющаяся не смотря на shellshock. Лучше уродливое что-то, что есть всюду, чем shiny new, которое есть иногда.

Почему когда переходили к Ansible, все над этим аргументом только смеялись? Серьёзно, я чувствую себя обманутым. Мне столько рассказывали, что нужно использовать Ansible, что я в конце концов уже отказался от планов изучить баш.


Но как только я начал освоение Ansible, оказалось, что весь мир в один день начал использовать докерфайлы на баше. Как так то? Что случилось о том, что к конфигурации надо подходить серьёзно и баш для этого не подходит?

Зачем учить ансибл, когда в userdata можно всё на баше!

Кстати да. Если ansible такое хорошее средство накатывания конфигурации, то почему в докерфайлах не он, а bash?

В случае с Docker, вы можете создать два контейнера с полным набором web-server+php. В результате, то же самое, в Docker будет занимать больше RAM.

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

А минимальные и рекомендуемые требования к количеству оперативной памяти тогда что означают? Почему они такие высокие?

Вообще пишут, что у Докера околонулевой оверхед по производительности.

Допустим приложение в контейнере работает с той же скоростью, что и без контейнера. Но сам то Докер тоже потребляет ресурсы. Не зря же у него в требованиях минимум 512 мегабайт и рекомендованных 2 гигабайта?

А докер он насколько много памяти жрёт? И процессора? Может быть в таки условиях имеет смысл от него отказаться и всё заработает в 100 раз быстрее? Или он практически не заметен?

А вот эта тема, что всё из-за того, за кого они голосуют? Это из общих соображений, или такие предположения прямо озвучивают?

Серьёзно? Это негласная штука какая-то, или кто-то прямо высказался?

Ну, наверное, если по этому конкретному вопросу, то кажется у вас в статье нет ничего, чтобы запускало nexus-staging-maven-plugin. Но если посмотреть на ваш гитхаб, то там есть строки, которые запускают nexus-staging-maven-plugin на этапе релиза, но они закомментированы. Если их раскомментировать, то релиз видимо становится полностью автоматическим. Сейчас нужно руками жать кнопку Close, а потом release.


Но у меня много ещё всяких дурацких вопросов, которые вы не затронули. Наверное, потому что они дурацкие ))


Например, мне непонятно, как зачем нужен gpg. Я, получается, подписываю сборку, но ключ можно сгенерировать прямо перед релизом. Получается, что единственное, что делает gpg это даёт доказательства, что тот, у кого есть мой пароль к sonatype также подписал джарки.


И ещё есть всякое такое. Я склоняюсь к тому, чтобы написать свою статью, про то, как закинуть свою библиотеку в мавен централ. Надеюсь, вы не будете возражать. Я дам ссылку на вашу статью в тексте до ката.

Я пытаюсь уменьшить конфигурацию из вашего примера до какого-то минимального минимума и в процессе взял и закомментировал nexus-staging-maven-plugin и всё нормально работает.


Из документации и примеров на sonatype создаётся впечатление, что для того, чтобы положить библиотеук в staging можно испльзовать nexus-staging-maven-plugin, а можно maven-release-plugin.


Те две команды, которые вы привели в статье сначала подготавливают код к релизу, а потом закидывают в staging. И всё с помощью maven-release-plugin. Наверное можно сделать второй шаг с помощью nexus-staging-maven-plugin, я пока не пробовал.

Большое спасибо за статью, она мне очень помогла!


Единственное что я никак не могу понять, зачем в статье упомянут nexus-staging-maven-plugin, если вы используете не его, а maven-release-plugin?

Вот чтобы впредь было неповадно «позволили второкурсникам» и «из-за недостатка опыта у наших студентами» нужно бы теперь весь университет прям забанить на пятачёк лет.

А может улучшить контроль над принимаемыми патчами, потому что впринципе какой-нибудь другой университет может такое сделать. И уже не по поручению КГБ, а по поручению какого-нибудь другого, более внимательного к мелочам агентства. Ну, как уже было во FreeBSD. Может надо что-то делать в принимающей точке, которая полностью под контролем мейнтейнеров?


Да, не фигня какая-то ))). Шучу я! Надо просто забанить Муромскй университет лет на 100, чтобы ни у кого даже мысли не было опубликовать результаты таких проверок!

Можно ходить по разным кафе, где солонки и перечницы стоят на столах. В перечницы подсыпать грязь-пыль-песок, в солонки еще какую гадость.

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


Как вы будете относится к людям, которые так делают?

В случае с солонками плохо. В случае с ядром — примерно как к человеку, который наглядно показал, как взломать сеть РЖД.


Как вы будете с этим знанием дальше пользоваться солонками и перечницами?

С опаской. Что важно, раньше, когда я пользовался ими смело, туда всё также кто угодно мог подсыпать что угодно. Просто я об этом не думал.


Как изменится жизнь обслуживающего персонала во всех кафе после таких случаев?

В случае с солонками — никак не изменится. Потому что людей, которые хотят просто навредить другим людям, немного. В случае с ядром — надеюсь всё сильно изменится. Надеюсь, хотя и не верю.


А потом вам просто скажут, что это был эксперимент, извините пожалуйста.

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

findIndex в объекте — вообще за гранью)

Выше уже писали, я на всякий случай повторюсь. findIndex в классе Objects. Это такой утилити класс, в который складывают всякие вот такие методы.

Я лично скорее против экстенжн методов, чем за них. Но в джаве можно пользоваться ими уже сейчас, достаточно подключить Lombok.

Можно было использовать liveusb от Арча, чтобы подготовить gentoo stage4 с ядром, в котором есть мои драйвера. Это я умею, но это долго.


Можно было поставить Убунту и потом установить новое ядро. Это, наверное, недолго, но это я не умею.


А Арч это быстро и мануалы все под рукой. Парадоксальным образом поставить Арч оказалось быстрее, чем возиться с Убунтой, которая у меня всегда была основной системой.

уже больше месяца сижу на альфе 21.04 из за нового компа. Поддержка zen 3 появилась в 5.10

Я купил материнскую плату gigabyte b550 pro и оказалось, что драйвера для моего сетевого адаптера появились только в 5.10 или около того. Они нашлись только на лайв usb для арча. В результате вынужден был поставить арч.

Information

Rating
4,932-nd
Works in
Date of birth
Registered
Activity