tgindex
Java Portal | Программирование

Java Portal | Программирование

Статистика

Присоединяйтесь к нашему каналу и погрузитесь в мир для Java-разработчика Связь: @devmangx РКН: https://clck.ru/3H4WUg

Последний пост
18:07
Последнее чтение
14 авг.
Постов за неделю
15
Всего постов
74
Тип
открытый
Язык
русский
Категория
Технологии
В каталоге с
12 авг.
Подписчики
11 827
−19 за 4 дн.
Сутки
−3
−0,03%
Неделя
 
Месяц
 
Просмотров на пост
1 035
40 постов
Вовлечённость
8,8%
к подписчикам
Постов в день
2,1
всего 74
Упоминаний
2
каналов
Охват размещения
оценка
1/24сутки в ленте
851
1/48двое суток
975
1/72трое суток
1 051

Оценка по просмотрам недавних постов: пост набирает почти всё за первые сутки.

Посты

  • 18:0733219

    видео или голосовое, без подписи

  • 08:075626

    видео или голосовое, без подписи

  • видео или голосовое, без подписи

  • видео или голосовое, без подписи

  • видео или голосовое, без подписи

  • видео или голосовое, без подписи

  • Ещё один отличный плейлист по структурам данных и алгоритмам от pmavrin. https://youtube.com/playlist?list=PLrS21S1jm43igE57Ye_edwds_iL7ZOAG4&si=4mS5lXn3uxI-V2LM 👉 Java Portal

  • 90% PostgreSQL в 2026 году сводится к этим 10 вещам. Всё остальное — в основном споры об расширениях. 1. MVCC + VACUUM Обновления создают мёртвые строки. Если autovacuum настроен плохо, таблицы и индексы раздуваются, а задержки постепенно растут неделями. 2. Индексы под реальные сценарии запросов Порядок колонок в составных индексах важен. Нужно понимать частичные и покрывающие индексы, а также почему ORM иногда незаметно приводит к полному сканированию таблицы. 3. Блокировки и DDL ALTER TABLE может заблокировать запись. Важно понимать режимы блокировок, очереди и безопасные приёмы вроде CREATE INDEX CONCURRENTLY и обновления данных небольшими партиями. 4. Уровни изоляции и аномалии Read Committed, Repeatable Read, Serializable. Пропавшие или дублирующиеся строки часто нужно разбирать через конкурентные транзакции, а не искать проблему только в коде. 5. Управление соединениями Слишком много соединений убивает CPU и память. Нужны PgBouncer, адекватные размеры пулов и контроль долгих транзакций в состоянии idle in transaction. 6. WAL, checkpoints и репликация Объём WAL напрямую влияет на ввод-вывод. Плохие настройки checkpoints вызывают скачки задержек, а отставание реплик ломает чтение с реплик и делает переключение при сбое рискованным. 7. Основы планировщика запросов EXPLAIN (ANALYZE, BUFFERS) — ваш отладчик. Нужно понимать оценки количества строк, типы JOIN и когда требуется ANALYZE или расширенная статистика. 8. Наблюдаемость, привязанная к реальным сбоям Следите за p95 задержкой, ожиданием блокировок, временными файлами, попаданиями в кэш, отставанием autovacuum и реплик. Добавьте журнал медленных запросов с нормальными порогами. 9. Резервные копии и проверка восстановления Базовые бэкапы плюс архивирование WAL — минимум. Главная ошибка — никогда не проверять восстановление и уже во время аварии выяснить, что не хватает ролей, расширений или восстановление занимает слишком долго. 10. Безопасность и права Минимально необходимые права, отдельные владельцы объектов, никакого superuser у приложения, регулярная смена учётных данных, ограничение сетевого доступа и закрытая на запись схема public в production. 👉 Java Portal

  • Типы классов в Java: 1. Concrete Class — обычный класс с полной реализацией методов. 2. Abstract Class — нельзя создать напрямую через new; может содержать абстрактные методы. 3. Final Class — нельзя наследовать. 4. Static Nested Class — статический вложенный класс внутри другого класса. 5. Inner Class — нестатический класс внутри другого класса. 6. Local Class — класс, объявленный внутри метода или другого блока. 7. Anonymous Class — класс без имени, обычно используется для одноразовой реализации. 8. Singleton Class — класс, спроектированный так, чтобы существовал только один его экземпляр. 9. POJO — простой Java-класс без специальных требований к наследованию или фреймворкам. 10. Record Class — компактная форма класса для хранения данных; появилась как предварительная возможность в Java 14. 11. Enum Class — класс, представляющий фиксированный набор констант. 👉 Java Portal

  • 12 авг.1 00747

    Как настроить JPA и Hibernate в Spring Petclinic с помощью Hypersistence Optimizer: https://vladmihalcea.com/spring-petclinic-hypersistence-optimizer/ 👉 Java Portal

  • 11 авг.1 07945

    Spring Boot 4: теперь лучше использовать RestTestClient вместо TestRestTemplate. У него более удобный API в стиле RestClient, он работает как с MockMvc, так и с реальным портом приложения. При необходимости добавьте @AutoConfigureRestTestClient. #SpringBoot4 #RestTestClient 👉 Java Portal

  • Чувак декомпилировал Java-игру, чтобы посмотреть, как она устроена внутри. На выходе получил полностью обфусцированный код: вместо нормальных имён — $$1, $$2 и прочий мусор. Для человека разбирать такое вручную — боль. Но для LLM это почти идеальная задача. Она довольно быстро восстанавливает смысл кода, понимает связи между классами и объясняет, что именно происходит. Такие задачи идеал для ИИ. 👉 Java Portal

  • 11 авг.1 107128

    Используйте Collectors.summarizingInt(), чтобы за один проход получить количество элементов, сумму, минимум, максимум и среднее значение. Так не придётся несколько раз прогонять один и тот же поток данных. Метод возвращает объект IntSummaryStatistics. Для long и double есть аналогичные методы: summarizingLong() и summarizingDouble(). #Java #Streams 👉 Java Portal

  • 10 авг.1 187121

    Если достаточно долго работать с базами данных, рано или поздно столкнёшься с проблемами подключений или параллелизма. В такой ситуации не стоит просто повышать лимиты в конфигурации. Лучше разобраться в архитектуре, чтобы понимать, почему это происходит и как исправить проблему оптимальным способом. Эта статья от гениального человека — отличный разбор управления подключениями в Postgres и возможных решений. Легко свести всё к особенностям Postgres с отдельным процессом на каждое соединение, но похожие проблемы могут возникать и в других базах данных, включая MySQL. Часто ответ кроется в пуле подключений, но и он добавляет свою сложность, которую тоже важно понимать. Статье уже 8 лет, но для Postgres она остаётся актуальной и в 2026 году. Ссылка ниже. https://brandur.org/postgres-connections 👉 Java Portal

  • 10 авг.1 15913

    Spring Boot 4: проверка null-safety через JSpecify. Более понятные контракты @Nullable / @NonNull. Лучший статический анализ в IDE. #SpringBoot4 #JSpecify 👉 Java Portal

  • 9 авг.1 27826

    JetBrains переносит возможности IntelliJ IDEA в другие редакторы. Новое расширение Java & Kotlin by IntelliJ IDEA уже доступно в предварительной версии для VS Code и всех его форков, включая Cursor и Antigravity. Возможности IntelliJ IDEA — теперь в любом редакторе, где вы работаете. 🙂‍↔️ 👉 Java Portal

  • 9 авг.1 232518

    Тюнинг производительности Spring Boot. https://vladmihalcea.com/spring-boot-performance-tuning/ 👉 Java Portal

  • 8 авг.1 1678

    видео или голосовое, без подписи

  • 8 авг.1 25078

    SELECT FOR UPDATE в PostgreSQL на самом деле выполняет запись. На heap-странице Postgres у каждого tuple есть заголовок с метаданными этой записи. Когда транзакция выполняет SELECT FOR UPDATE, у найденных строк обновляется заголовок: они помечаются как заблокированные, а в xmax записывается идентификатор транзакции, которая установила блокировку. В частности, в заголовке infomask выставляются два бита: HEAP_XMAX_EXCL_LOCK и HEAP_XMAX_LOCK_ONLY. Из-за этого страница становится dirty, а изменение также попадает в WAL. Позже WAL может быть отправлен на standby-реплику. Сама dirty-страница затем может быть сброшена на диск фоновым процессом. После коммита блокировка снимается. Забавно, что операция чтения в итоге может вызвать целую цепочку операций записи на диск. раться с новой возможностью. 👉 Java Portal

  • 8 авг.1 133752

    Лучшие инженеры не изучают распределённые системы по поверхностным пересказам. Они сразу обращаются к фундаментальным научным статьям. Чтение таких работ помогает понять, почему системы спроектированы именно так, а не просто научиться ими пользоваться. Вот пять классических статей всех времён, которые должен прочитать каждый разработчик. 1. The Google File System (2003) Почему стоит прочитать: статья изменила подход всей индустрии, предложив считать отказ компонентов нормой, а не исключением. В ней описано, как построить масштабную отказоустойчивую распределённую систему хранения данных на базе недорогого массового оборудования, оптимизировав её под интенсивную последовательную дозапись вместо произвольной записи. Ссылка: https://static.googleusercontent.com/media/research.google.com/en//archive/gfs-sosp2003.pdf 2. Dynamo: Amazon’s Highly Available Key-Value Store (2007) Почему стоит прочитать: исчерпывающий разбор того, как пожертвовать согласованностью ради высокой доступности — AP в теореме CAP. В статье изложены ключевые паттерны, лежащие в основе масштабируемых NoSQL-хранилищ: консистентное хеширование, векторные часы, gossip-протоколы и настраиваемый кворум для операций чтения и записи. Ссылка: https://allthingsdistributed.com/files/amazon-dynamo-sosp2007.pdf 3. In Search of an Understandable Consensus Algorithm (Raft) (2014) Почему стоит прочитать: Paxos печально известен тем, насколько сложно его понять и корректно реализовать, тогда как Raft делает концепцию реплицируемых конечных автоматов более доступной. Алгоритм разбивает задачу консенсуса на отдельные подзадачи, которые легко анализировать: выбор лидера, репликацию журнала и обеспечение безопасности. Ссылка: https://raft.github.io/raft.pdf 4. Spanner: Google’s Globally-Distributed Database (2012) Почему стоит прочитать: статья показывает, как добиться строгой сериализуемости и внешней согласованности между дата-центрами по всему миру. Секрет — API Google TrueTime, ограничивающий неопределённость времени с помощью синхронизированных GPS-приёмников и атомных часов. Ссылка: https://static.googleusercontent.com/media/research.google.com/en//archive/spanner-osdi2012.pdf 5. Time, Clocks, and the Ordering of Events in a Distributed System Почему стоит прочитать: на физическое время нельзя полагаться при работе с независимыми узлами. Лэмпорт вводит логические часы и фундаментальное отношение «произошло до» (happened-before), лежащее в основе упорядочивания событий в современных распределённых сетях. Ссылка: https://amturing.acm.org/p558-lamport.pdf 👉 Java Portal