User
Разработка REST API с использованием Kotlin и Spring Boot: сочетание простоты и мощи

В мире разработки программного обеспечения создание эффективных и масштабируемых веб-API является ключевой задачей для большинства проектов. Использование правильного инструментария и языка программирования может существенно облегчить этот процесс. В этой статье мы рассмотрим, как использование языка программирования Kotlin с фреймворком Spring Boot упрощает создание REST API, обеспечивая при этом высокую производительность и надежность.
Почему Kotlin и Spring Boot?
Kotlin, разработанный компанией JetBrains, и Spring Boot, один из наиболее популярных фреймворков для создания веб-приложений на языке Java, образуют мощное сочетание для разработки REST API. Kotlin предоставляет чистый и современный синтаксис, что упрощает разработку и делает код более читаемым. Spring Boot, с другой стороны, предоставляет множество готовых компонентов и упрощает конфигурацию, что позволяет сосредоточиться на бизнес-логике приложения.
Фоновые асинхронные задачи в FastAPI и их мониторинг

Привет! Меня зовут Иван, я бэкенд-разработчик в KTS.
Сегодня расскажу, как в FastAPI эффективно работать с фоновыми задачами и настроить их мониторинг в Prometheus.
В туториалах для фоновых задач в FastAPI обычно предлагают celery и при этом используют синхронный код. Но сегодня в реальной практике такое встречается редко, поэтому в этой статье я покажу, как в фоновых задачах использовать асинхронный код.
В статье опишу 5 вариантов: встроенный в FastAPI Background Tasks и 4 библиотеки — ARQ, SAQ, FastStream, адаптированный к асинхронному коду Celery.
В конце расскажу, как мониторить фоновые задачи.
Мега-Учебник Flask Глава 9: Разбивка на страницы (издание 2024)

Это девятая часть серии мега-учебника Flask, в которой я собираюсь рассказать вам, как разбивать списки записей базы данных на страницы.
Выбираем дешёвый VPS-сервер. Что почём в 2024 году?

Всем привет! В начале года я писал публикацию «Можно ли заработать на партнёрских программах хостеров в 2024 году? Пробуем посчитать» — просмотров и комментариев было немного, но в личке было немало вопросов, а я с тех пор смог заметно поправить своё финансовое положение на этих самых партнёрках. Но сегодня речь пойдёт чуть по другой, пусть и смежной теме — не так давно у меня появилась необходимость в виртуалке для тестирования разрабатываемого мной ПО, и как часто бывает, встал вопрос, у какого провайдера заказывать. В своём выборе хостеров для обзора я в первую очередь решил отталкиваться от стоимости их услуг. И в этой статье я хотел бы сравнить несколько хостингов, которые были первыми в гугле по запросу «Дешёвый VPS-сервер» — спешу поделиться с вами полученным опытом и выводами.
Асинхронный веб: WebSocket, Server-Sent Events, Long Polling и Short Polling

Веб-разработка часто требует реализации механизмов обновления контента на странице в реальном времени. Существуют различные сценарии, где это необходимо, например, отображение прогресса выполнения тяжелых задач на бекенде, обновление каких-либо часто меняющихся данных, будь то курсы валют или мониторинг какой-то активности, чаты, различные уведомления. Эти сценарии объединяет одна общая особенность: источник события необходимости обновления данных находится не на клиентской стороне, поэтому мы хотим получать события с бекенда. В данной статье мы рассмотрим четыре популярных подхода к реализации этой функциональности: WebSocket, Server-Sent Events (SSE), Long Polling и Short Polling.
Мы проанализируем каждый метод, выявим их плюсы, минусы и сложность реализации.
Рекомендации по ведению SQL-кода
Бэкэнд для начинающих или типовые ошибки бэкэндера

Всем привет! Я Олег, fullstack‑разработчик в компании Тензор, тимлид небольшой команды.
Одна из моих обязанностей в роли тимлида это code review. За годы работы я видел многое и выделил для себя типовые ошибки, с которыми сталкиваются начинающие backend‑разработчики. Сегодня хочу рассказать о некоторых из них.
Методы расшифровки трафика

Добрый день, дорогие читатели Хабра!
Мы команда специалистов из компании ПМ. Довольно часто к нам приходят заказы на анализ защищенности или тестирование на проникновение веб-ресурсов. Первоначальным этапом при проведении работ является разведка, которая включает в себя анализ принципов работы исследуемого веб-ресурса, обнаружение используемых технологий, окружения и т.д. Одним из методов для осуществления данной задачи является исследование пакетов, отправляемых между веб-клиентом и веб-сервером. Иногда исследование пакетов не составляет особого труда, но бывают случаи, когда это становится нетривиальной задачей. В ситуации, когда речь идет об открытом (незашифрованном) трафике, можно элементарно воспользоваться любым пакетным анализатором, типа Wireshark. Однако в тех случаях, когда применяется шифрование, приходится использовать различные методы для расшифровки. Именно они и будут рассмотрены в данной статье.
Древовидные структуры в SQL в одну таблицу

Как реализовать хранение и работу каталога папок в PostgreSQL? Есть большое количество вариантов. Но хочется, чтобы реализация выглядела лаконично, не нарушала прозрачность выполняемых операций, не вызывала блокировок, не требовала большого вовлечения клиента в специфику работы и т.д. Потому сегодня попробуем реализовать хранение древовидных структур и работу с ними без использования триггеров, блокировок, дополнительных таблиц (представлений) и внешних инструментов в SQL.
Принципы SOLID, только понятно

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

Как небольшому интернет-магазину мебели увеличить свои продажи, конкурируя с крупными игроками рынка и их огромными рекламными бюджетами? Чем опасно отсутствие рекламы? Как эффективно использовать свой рекламный бюджет? Делимся методикой контекстной рекламы для e-com. Рассказываем, как адаптируем ее для мебельного проекта, ищем нестандартные решения и тестируем гипотезы. Бонус: чек-лист с методикой.
Спойлеры:
- Собранный руками кастомный фид повысил отдачу от Яндекс Директ в 2 раза
- Доработки сайта подняли конверсию интернет-магазина в 2,5 раза
- Привлечение более платежеспособной ЦА принесло еще 35% заказов
- Стимулировали звонки, а не заявки и приросли в 1,5 раза
Кейс демократичной мебельной фабрики, которая без роста рекламного бюджета увеличила объем заявок в 2 раза.
Suno есть, скрипач не нужен!?

Я еще не совсем отошел от шока полугодичной давности, когда познакомился с RVC ... а тут новый прорыв - Suno. Думаю, многие если и не знакомы с самим сервисом, то слышали результаты - саундтреки с вокалом, полностью сгенерированные ИИ, по сути, не отличимые от живого исполнения. Хотя, конечно, еще до ИИ в музыке стало так много синтетики, что теперь и музыкант не всегда определит, как именно она была сделана.
В общем, то, о чём мечтают многие сочинители текстов - положить свои стихи на музыку, стало невероятно простым и доступным. Именно невероятно - 3 клика и Suno за 30 сек выдает 2 варианта песни на ваш текст в выбранном вами стиле.
Я не первый, кто взялся написать об этом удивительном сервисе, но мне кажется, что у меня есть некоторые догадки, позволяющие предположить, как эта система устроена внутри. А понимать принцип работы, значит меньше совершать ошибок и быстрее достигать желаемого результата. Пока, к сожалению, работа с Suno похожа на управление "пищевым конвейером инопланетян" - на выходе в целом правильная и даже вкусная еда, но не совсем то, что ты ожидал получить, делая заказ. Правда, этому есть и объективные причины.
Сначала пару строк о качестве. Это ведь важно?
Suno генерирует, правильную, качественную, профессионально звучащую музыку, которую вы слушаете как-бы через некачественные колонки. Т.е. музыкальное качество высокое, а звуковое - не всегда, но ... Вот отзыв Сергея Кокорина, руководителя и дирижера сочинского Биг-Бенда, на один из первых примеров Suno, который я ему показал: "... поразительно точно соблюдены все правила штрихов, нюансов, аранжировки... Удивительно верное инструментальное произношение свинга! У вокалистов чудесный порядок, и в сольном произношении, и аккордовом! Огромное количество подробностей учтено!!! Поразительная железяка, хорошо это слышно, но не верится...". И согласитесь, живой джаз - очень непростая музыка для имитации, это не клубный трек.
Стратосферный сброс админов, трещина, срочная эвакуация арктической базы

Кое-что пошло не так, поэтому российскую научную базу пришлось эвакуировать.
2 апреля мы должны были сбросить экспериментальный арктический мини-ЦОД (из одного сервера и двух систем спутниковой связи) на дрейфующую льдину со временной российской полярной базой. Потом — подняться в стратосферу и выпустить орбитального админа, который вместе с двумя напарниками поставит рекорд высотного парашютного прыжка.
Потом мы должны были поднять и подключить ЦОД и провести программу экспериментов, где бы он использовал наш же собственный спутник для связи.
История получилась немного фееричнее, чем мы ждали, потому что льдина, на которой стояла база Барнео (она разворачивается так каждый год и дрейфует несколько недель), треснула прямо по расчищенной взлётно-посадочной полосе. То есть самолёты не могли бы туда приземлиться в принципе. Вероятность новых трещин вынуждала убираться оттуда как можно быстрее.
Но кое-что сделать удалось.
Собственно, начну по порядку.
Китай не принимает платежи из России. Где заказать печатные платы в Китае в 2024 году

Полгода назад я писал, как решал проблему с ушедшими JLCPCB. И вот с марта возникла новая проблема ахахах (истерический смех) — китайские банки начали блокировать оплату от российских компаний за компоненты для сборки электроники. Оплаты не проходят даже у тех компаний, которые заключили долгосрочные контракты с китайскими производственными площадками.
Из-за этого увеличились сроки, а также ряд компаний начал работать через посредников, что сильно увеличило цену на поставку электронных компонентов.
Я порезал свой первый обзор + добавил несколько новых компаний, которые сейчас напрямую поставляют компоненты и печатные платы из Китая. В конце - сводная таблица с итогами.
Как исправить изменившийся номер договора в нескольких сотнях Эксель файлов менее чем за минуту

Недавно я столкнулся с тем, что потребовалось распечатать большое количество строительных смет, но в последний момент оказалось, что номер договора в них указан неверно, потому что в начале месяца он поменялся.
Так появилась задача однотипной замены номера договора и его даты в каждом из *.xlsx файлов, которые были расположены в папках, названных по адресу объекта. Таких папок было множество и некоторые ещё имели вложенные подкаталоги.
Ручной способ, который состоит из использования сочетания клавиш Ctrl + H
хоть и позволял сделать замену во всей книге Microsoft Excel сразу, но подразумевал что придётся открыть каждый файл по отдельности, нажимать несколько раз (под замену не только номер, но и дата) сочетания клавиш для замены, сохранять книгу Экселя, закрывать книгу, открывать новую книгу. В общем совершать множество механических действий.
Я конечно же стал думать, как можно наиболее простым для себя способом сделать это множество автозамен. Выбор сразу пал на VBA - Visual Basic для приложений. Ведь при помощи VBA можно заставить Эксель делать то, чего он не умеет по умолчанию.
Так что в этой статье хочу показать пошаговое руководство по быстрой и массовой автозамене любых данных во множестве файлах Excel с помощью сценария VBA.
10 > 64: как хранить больше данных в QR-кодах

Для кодирования данных в десятичном формате требуется гораздо больше символов, чем для тех же данных, но закодированных в base64 — 06513249 против YWJj. Однако это правило не работает, когда речь идёт о QR-кодах. В них гораздо лучше работает использование десятичных чисел. Никакой магии, просто все дополнительные цифры сохраняются настолько эффективно, как если бы кодирования вообще не было. Десятичная кодировка позволяет QR-кодам хранить больше данных, а ещё их легче сканировать.
Введение в нейросети: что, зачем и как?

Это модное слово всё чаще используется в разговорной речи: обывателей плотнее окутывают угрозами бунта искусственного интеллекта и войны с роботами — с одной стороны, и рекламой нейросетевых продуктов — с другой. Отдельный котёл в аду — для тех, кто впаривает «курсы дата‑саентистов». А когда бедный юзернейм в поисках истины обращается к Гуглу своему любимому поисковику — то вместо простого ответа на простой вопрос, получает ещё больше вопросов — таких как тензорфлоу, сигмоида и, не дай Бог, линейная алгебра.
Большая шпаргалка по Docker: как распилить монолитный проект на части

Погружение в мир контейнеризации с докером — это путь к оптимизации развёртыванию приложений, а также ключ к упрощению жизни разработчиков и системных администраторов. Меня зовут Андрей Аверков, в IT c 2008 начинал пусть с аналитика-проектировщика IT систем, 11 лет в роли разработчика и последние годы на руководящих должностях. Сейчас я тимлид команды разработки из 9 человек в группе компании Кокос. Мы занимаемся созданием и поддержкой CPA платформ (gdeslon.ru, fxpartners.ru, ads.mobisharks.com), а также проектом по генерации лендингов — lpgenerator.ru. У нас большой опыт в разделении продуктов на части, поэтому, сегодня мы собрали самое основное и необходимое для работы с Docker. В нашей шпаргалке вы найдете все необходимое для успешного старта с докером: от базовых концепций и установки до продвинутых техник работы с контейнерами.
Ыыыы ыыыыыыыыыы с помощью AmneziaЫЫЫ

Ну что теперь будем писать про VPN вот так?
Кстати, в Китае вместо слова VPN вы часто можете встретить «Science Online»(科学上网), «ladder»(梯子), или «Internet accelerator»(上网加速器), все это обозначает VPN. В России, кажется еще все не так плохо, но это не точно. С первого марта писать о VPN на русскоязычных площадках нельзя, наказание для площадок — блокировка на территории России. При этом считаются как новые статьи, так и статьи, опубликованные до вступления в силу приказа о запрете. В скором времени, крупные ресурсы будут блокировать любую информацию о VPN, поэтому мы настоятельно советуем подписываться на телеграм каналы разных VPN, в том числе на наш. Мы не знаем сколько еще статей нам отведено на Хабре, и как хабр дальше будет показывать статьи со словом VPN в разных странах.
А теперь о хорошем.
Самый ожидаемый нашими пользователями бесплатный VPN AmneziaFree v.2 c защитой от блокировок наконец‑то готов. Должны признаться, последнее время мы много работали над self‑hosted приложением AmneziaVPN, а так же над протоколом AmneziaWG (или по простому — AWG, его мы используем в бесплатном VPN), поэтому работа над проектом AmneziaFree v.2 немного затянулась. В любом случае, мы очень рады, что наконец можем пригласить Вас присоединиться к числу пользователей нашего бесплатного сервиса. Все так же, как и раньше, без регистрации, рекламы и ограничении по сроку работы.
Бесплатный VPN AmneziaFree v.2, можно использовать только для популярных недоступных на территории России сайтов (не будем их перечислять, вы и сами их знаете), список достаточно большой, поэтому, скорее всего, то что вам надо в нем есть. При этом, не заблокированные в России сайты, будут открываться напрямую, без VPN. То есть напрямую с Вашего IP‑адреса.
Information
- Rating
- 6,239-th
- Registered
- Activity