Библиотека джависта | Java, Spring, Maven, Hibernate
24.9K subscribers
1.86K photos
38 videos
42 files
2.64K links
Все самое полезное для Java-разработчика в одном канале.

Список наших каналов: https://yangx.top/proglibrary/9197

Обратная связь: @proglibrary_feedback_bot

По рекламе: @proglib_adv

РКН: https://gosuslugi.ru/snet/67a5bbda1b17b35b6c1a55c4
加入频道
Нет. Потоки-демоны позволяют описывать фоновые процессы, которые нужны только для обслуживания основных потоков выполнения и не могут существовать без них.
Библиотека джависта | Java, Spring, Maven, Hibernate
#вопросы_с_собеседований Какие методы для работы с cookies предусмотрены в сервлетах?
Servlet API предоставляет поддержку cookies через класс javax.servlet.http.Cookie:

☕️ Для получения массива cookies из запроса необходимо воспользоваться методом HttpServletRequest.getCookies(). Методов для добавления cookies в HttpServletRequest не предусмотрено.
☕️ Для добавления cookie в ответ используется HttpServletResponse.addCookie(Cookie c). Метода получения cookies в HttpServletResponse отсутствует.
Будь готов! Мы запускаем Telegram-канал «Карьера в Сбере»!

Прямо здесь ты будешь получать только самую свежую информацию:

⚡️ актуальные вакансии для IT-специалистов и Data-people
🎙 свежие новости о технологиях
☝️ рекомендации и советы от HR-экспертов Сбера
🤩 реальные истории IT-специалистов Сбера
🗓 анонсы важных событий и обучающих курсов

🖖 Присоединяйся к каналу «Карьера в Сбере» и будь в курсе!
#вопросы_с_собеседований
Какого размера должен быть пул потоков?
☕️ Обновление поисковика Яндекса, которое упростит работу программистам

Сервис запустил интерактивные ответы со Stack Overflow. Если ввести свой запрос в поисковую строку, то вы сразу получите нужный код по вашему запросу. Не нужно открывать вкладки и долго сёрфить по поисковым запросам — перед вами сразу будет лучший ответ с проверенного сайта. А если внимательно посмотреть на страницу с поиском то можно найти пару приятных пасхалок.

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

Оптимальный размер пула потоков зависит от количества доступных процессоров и природы задач в рабочей очереди. На N-процессорной системе для рабочей очереди, которая будет выполнять исключительно задачи с ограничением по скорости вычислений, можно достигнуть максимального использования CPU с пулом потоков, в котором содержится N или N+1 поток. Для задач, которые могут ждать осуществления I/O (ввода - вывода) - например, задачи, считывающей HTTP-запрос из сокета – может понадобиться увеличение размера пула свыше количества доступных процессоров, потому, что не все потоки будут работать все время. Используя профилирование, можно оценить отношение времени ожидания (WT) ко времени обработки (ST) для типичного запроса. Если назвать это соотношение WT/ST, то для N-процессорной системе понадобится примерно N*(1 + WT/ST) потоков для полной загруженности процессоров.

Использование процессора – не единственный фактор, важный при настройке размера пула потоков. По мере возрастания пула потоков, можно столкнуться с ограничениями планировщика, доступной памяти, или других системных ресурсов, таких, как количество сокетов, дескрипторы открытого файла, или каналы связи базы данных.
Ищете работу в ИТ и устали ежедневно просматривать десятки сайтов? Подписывайтесь в Telegram на наши каналы с вакансиями!

«Библиотека программиста» отобрала для вас лучшие на российском рынке труда предложения по разным направлениям: Python, C/C++, Java, JavaScript, PHP, Data Science, Quality Assurance, DevOps и другим непонятным аббревиатурам и сокращениям.

Здесь вы получите актуальную информацию первыми:

@pydevjob
@jsdevjob
@csharpdevjob
@javadevjob
@datajob
@phpdevjob
@godevjob
@mobiledevjob
@cppdevjob
@testerrjob
@devopssjob

Узнавайте о самых интересных вакансиях без лишних телодвижений!
#вопросы_с_собеседований
Для чего нужны функциональные интерфейсы вида _To_Function?
DoubleToIntFunction - операция, принимающая аргумент класса Double и возвращающая результат типа Integer;
DoubleToLongFunction - операция, принимающая аргумент класса Double и возвращающая результат типа Long;
IntToDoubleFunction - операция, принимающая аргумент класса Integer и возвращающая результат типа Double;
IntToLongFunction - операция, принимающая аргумент класса Integer и возвращающая результат типа Long;
LongToDoubleFunction - операция, принимающая аргумент класса Long и возвращающая результат типа Double;
LongToIntFunction - операция, принимающая аргумент класса Long и возвращающая результат типа Integer.
📱 10 важных навыков разработчика приложений для Android

Если вы только собираетесь научиться создавать мобильные приложения для Android, голова может пойти кругом от обилия информации в сети. Попробуем разобраться, какие навыки действительно пригодятся начинающем разработчику.

https://proglib.io/sh/2pG4r7HSmy
Компания SberDevices приглашает студии по разработке мобильных и веб-приложений на онлайн-митап, который пройдет 31 марта.

Антон Виноградов, fronted-тимлид SberDevices расскажет, как с помощью веб-технологий создавать навыки с полноэкранным интерфейсом. Вы узнаете о UX-принципах платформы SmartMarket и Open Source решениях, и научитесь создавать смартапы для миллионов пользователей.

Участие бесплатное. Дата 31 марта, начало в 18:00. Регистрируйтесь и присоединяйтесь к митапу по ссылке https://sberdevices.ru/smartmarket/meetup/31-03-21/
#вопросы_с_собеседований
В чём заключается различие между методами submit() и execute() у пула потоков?
Оба метода являются способами подачи задачи в пул потоков, но между ними есть небольшая разница.

execute(Runnable command) определён в интерфейсе Executor и выполняет поданную задачу и ничего не возвращает.

submit() – перегруженный метод, определённый в интерфейсе ExecutorService. Способен принимать задачи типов Runnable и Callable и возвращать объект Future, который можно использовать для контроля и управления процессом выполнения, получения его результата.
Онлайн-интенсив «Docker: from zero to hero» завершился месяц назад. 2 дня отборной практики круто прокачали ребят. Теперь они могут смело работать с контейнерами, знают все тонкости их использования с разными языками, в состоянии обойти ограничения DockerHub и ещё много чего полезного.

🔥Средняя оценка каждого дня — 9/10. Поэтому мы решили не ограничивать информацию одним интенсивом и подготовили записи с него, чтобы учиться Докеру можно было в любое время или не дожидаясь следующего потока. Они в хорошем качестве, удобно разбиты на темы, сохраняют всю практику и живую атмосферу интенсива и при этом их можно поставить на паузу и проходить в удобном темпе.

Стоимость — 10 000 рублей, можно в рассрочку.
Посмотреть программу и записаться: https://slurm.club/2PvS6BN
Всем привет!
Мы сделали сервис, который отбирает вакансии по вашим интересам.
Настройте личные фильтры: локация, точный технологический стек, и, конечно, не забудьте о деньгах.

Все самые подходящие предложения рынка – в @GetMeIT_bot
AGIMA (крупнейший интегратор digital‑решений) ищет классного Senior-разработчика (Java)
https://www.agima.ru/
Cоздаем веб-сервисы и мобильные приложения для бизнеса на основе данных и здравого смысла.
Сейчас мы в поиске Senior-разработчика на Java, который сможет влиться в команду одного из крупнейших интернет-магазинов цифровой/бытовой техники и электроники

Уровень: senior
Основные требования:
— Опыт: java разработчик от 5 лет
— Опыт работы с Magnolia CMS (будет большим плюсом)
— Java 11, Spring boot, mongo
— Microservices, Couchbase, Jenkins
— Git + gitlab, Jira, confluence
— Опыт тимлидинга
— Приветствуется опыт работы с другими CMS

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

Условия:
— Возможность сосредоточиться над задачами одного продукта;
— Сформированная команда крутых специалистов;
— Удаленная работа по контракту, срок: от 6-ти месяцев
— ЗП от 250 000 до 370 000 рублей в месяц

Контакты: [email protected] @jgribova
WebSocket — протокол полнодуплексной связи поверх TCP-соединения, предназначенный для обмена сообщениями между браузером и web-сервером в режиме реального времени.

Протокол WebSocket определяет две URI схемы

☕️ ws: - нешифрованное соединение
☕️ wss: - шифрованное соединение
#вопросы_с_собеседований
Назовите основные классы потоков ввода/вывода.