Как стать автором
Обновить
82.1

API *

Интерфейс программирования приложений

Сначала показывать
Порог рейтинга
Уровень сложности

Бот из машины. Как инженеру сократить время на диагностику дисков

Уровень сложности Простой
Время на прочтение 7 мин
Количество просмотров 1K
Блог компании Selectel Node.JS *API *Накопители
Кейс


Привет, Хабр! Меня зовут Дмитрий, я старший системный инженер в дата-центре Selectel, работаю с серверами и клиентским оборудованием.

Каждый день я обрабатываю десятки клиентских обращений. Часть из них связана с физическим участием, когда нужно ногами пойти к серверу и руками заменить комплектующие. Такие задачи роботу не поручить. Но я нашел способ экономить себе и коллегам несколько часов в месяц с помощью бота, способного быстро диагностировать состояние дисков. Также он снижает влияние «человеческого фактора» на задачи, которые надо решать с высокой скоростью и вниманием к деталям.

В статье я расскажу, как написал бота, запустил его в облаке и автоматизировал замену накопителей в выделенных серверах.
Читать дальше →
Всего голосов 25: ↑25 и ↓0 +25
Комментарии 3

Новости

Первая информация о JDK 21: что принесет следующий LTS релиз?

Время на прочтение 3 мин
Количество просмотров 1.2K
Программирование *Java *API *
Дайджест
Перевод

Поскольку мы все с нетерпением ждем скорого выпуска JDK 20, список функций, которые появятся в JDK 21 этой осенью, также постепенно проясняется.

Сегодня мы рассмотрим тему того, что принесет следующий LTS релиз JDK 21.

Читать далее
Всего голосов 6: ↑6 и ↓0 +6
Комментарии 2

Тестируйте API, как профессионал Часть 1

Уровень сложности Простой
Время на прочтение 3 мин
Количество просмотров 1.5K
Блог компании OTUS API *Тестирование веб-сервисов *
Перевод

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

Автоматизация API реализуется с помощью программных инструментов, которые отправляют запросы к API, анализируют ответы и сравнивают их с ожидаемыми результатами. Целью автоматизации API является повышение надежности и последовательности процесса тестирования, что позволяет экономить время и ресурсы.

Читать далее
Всего голосов 7: ↑5 и ↓2 +3
Комментарии 1

Достаточно ли защищен ваш GraphQL API?

Уровень сложности Средний
Время на прочтение 4 мин
Количество просмотров 825
Блог компании БАРС Груп Информационная безопасность *Программирование *API *
Туториал

На связи Юлия Полозкова, ведущий разработчик отдела архитектурных решений и перспективной разработки «БАРС Груп». В этой статье делюсь опытом, как обеспечить достаточный уровень кибербезопасности бизнес-приложений. Разбираю техники и средства защиты Graph API, такие как отключение интроспекции средствами HotChocolate, лимиты размеров запроса, его глубины вложенности и количества запрашиваемых объектов

Читать далее
Всего голосов 8: ↑7 и ↓1 +6
Комментарии 0

Истории

ChatGPT в роли стримера

Уровень сложности Простой
Время на прочтение 6 мин
Количество просмотров 6.2K
Python *API *Искусственный интеллект
Из песочницы

В прошлом году мне выдалась возможность поиграться c ChatGPT от OpenAI, однако практические применения, которые приходили мне в голову, оказались слишком сложными для реализации моими неполноценными студенческими знаниями, из‑за чего мысли ушли сугубо в использовании нейронок в развлекательных целях.

Чуть позже широкую огласку получил ИИ‑стример Neuro‑sama, созданный vedal987.

В целом, тогда я и решил запустить этот эксперимент и попробовать сделать максимально дешево и сердито русскоговорящего стримера на основе GPT‑моделей.

Читать далее
Всего голосов 13: ↑12 и ↓1 +11
Комментарии 2

API Честный знак как получить ключ сессии

Уровень сложности Средний
Время на прочтение 5 мин
Количество просмотров 1.6K
Python *API *
Из песочницы

Привет habr!

Хочу поделиться опытом работы с API системы маркировки товаров «Честный Знак» (ЧЗ) / МДЛП (маркировка лекарственных препаратов), в части выгрузки статистических данных.

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

Задача: забрать в ЧЗ статистические данные заказчика (информация о движении единиц продукции между юридическими лицами, статистика конечных продаж с адресами, и тп.)

В рамках данной статьи опускается вопрос о том, что такое система «Честный знак», и каковы основы ее работы – если вы начали читать эту статью, наверняка основы вам уже известны.

Итак, по порядку…

Читать далее
Всего голосов 10: ↑9 и ↓1 +8
Комментарии 9

Как автоматизировать тестирование сложных API форм и не потратить время впустую

Уровень сложности Средний
Время на прочтение 7 мин
Количество просмотров 1.4K
Блог компании Программный Продукт Тестирование IT-систем *API *
Туториал

Привет, Хабр! Наша компания создает множество полезных программ и сервисов, в том числе для автоматизации работы с данными граждан. Сегодня расскажем вам о том, как у нас тестируются сложные API формы и как мы справились с основными проблемами в автоматизации их тестирования.

Читать далее
Рейтинг 0
Комментарии 2

Динамические типы с GraphQL

Уровень сложности Средний
Время на прочтение 4 мин
Количество просмотров 1.3K
Блог компании Okko API *
Кейс

Реализация динамических типов на GraphQL выглядит довольно естественно. Однако, есть определенные сложности.

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Комментарии 2

Как разработать канбан-доску на Django, DRF и Alpine.js

Уровень сложности Простой
Время на прочтение 8 мин
Количество просмотров 6K
Блог компании Selectel Python *Django *API *
Туториал

Для структурирования и мониторинга рабочих процессов используют канбан-доски — например, Jira и Trello. Они особенно полезны, когда задачи состоят из множества этапов — согласования, выполнения, ревью и продакшена.

В статье рассказываем, как разработать собственную канбан-доску и развернуть ее на облачном сервере. Подробности под катом.
Читать дальше →
Всего голосов 44: ↑42 и ↓2 +40
Комментарии 7

Микросервисная реализация объектно-ориентированных баз данных

Уровень сложности Средний
Время на прочтение 50 мин
Количество просмотров 4.8K
.NET *MongoDB *API *ООП *Микросервисы *
Из песочницы

В настоящее время объектно-ориентированные базы данных (ООБД) не имеют достаточно большого распространения в повседневном использовании, да и более того, не настолько популярны как реляционные базы данных, которые не один десяток лет уже активно поддерживаются различными сообществами и имеют долгую историю применения.

В данной статье рассматривается реализация ООБД в контексте разработки системы, состоящей из микросервисов, на примере Perst и Db4o. Также будет рассмотрена отдельная реализация с документно-ориентированной базой данных MongoDB, работа с которой имеет много общего с ООБД.

Целью данной статьи является рассмотрение практического применения ООБД и решения проблем совместимости с помощью микросервисной архитектуры.

Читать далее
Всего голосов 7: ↑6 и ↓1 +5
Комментарии 2

Парсинг данных через api vk и google sheets api на python

Уровень сложности Простой
Время на прочтение 4 мин
Количество просмотров 3.8K
Python *API *Google API *ВКонтакте API *
Из песочницы

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

Я не профессиональный программист и не претендую, поэтому решил сделать все довольно просто.

Читать далее
Всего голосов 8: ↑7 и ↓1 +6
Комментарии 7

Как устроены интернет-платежи: вопрос—ответ

Время на прочтение 10 мин
Количество просмотров 3.9K
Блог компании QIWI Платежные системы *API *Разработка под e-commerce *Финансы в IT
FAQ

Привет! В одном из недавних постов ребята из Додо разбирали устройство интернет‑платежей и в самом конце текста задались десятком вопросов по теме. Меня зовут Антон, я IT‑менеджер в продукте Эквайринга, и мне удалось собрать знающих ребят в QIWI, чтобы довольно подробно ответить на эти вопросы.

Предложение пообщаться

Я думаю, что немного сомневаться в своих решениях и ресёрчить новые возможности просто необходимо на постоянной основе. У меня накопилась целая куча вопросов относительно интернет‑платежей, ответы на которые я пока для себя не нашёл.

@aurokk

Что получилось — под катом.

Читать далее
Всего голосов 19: ↑18 и ↓1 +17
Комментарии 4

Шаблон backend сервера на Golang — часть 5 — оптимизация Worker pool

Уровень сложности Средний
Время на прочтение 32 мин
Количество просмотров 1.9K
Open source *API *Go *
Туториал

# Шаблон backend сервера на Golang — часть 5 — оптимизация Worker pool


Пятая часть посвящена оптимизации Worker pool и особенностям его работы в составе микросервиса, развернутого в Kubernetes.


Представленный Worker pool поддерживает работу с двумя типами задач


  • "Короткие" — не контролируется предельный timeout выполнения и их нельзя прервать
  • "Длинные" — контролируется предельный timeout выполнения и их можно прервать

Накладные расходы Worker pool на добавление в очередь, контроль очереди, запуск обработки task, контроль времени выполнения task:


  • Для "коротких" task — от 300 ns/op, 0 B/op, 0 allocs/op
  • Для "длинных" task — от 1400 ns/op, 16 B/op, 1 allocs/op

Для task, которые должны выполняться быстрее 200 ns/op представленный Worker pool использовать не эффективно


Собираются следующие метрики prometheus:


  • wp_worker_process_count_vec — количество worker в работе
  • wp_task_process_duration_ms_by_name — гистограмма длительности выполнения task в ms с группировкой по task.name
  • wp_task_queue_buffer_len_vec — текущая длина канала-очереди task — показывает заполненность канала
  • wp_add_task_wait_count_vec — количество задач, ожидающих попадания в очередь

Ссылка на репозиторий проекта.


Шаблон goapp в репозитории полностью готов к развертыванию в Docker, Docker Compose, Kubernetes (kustomize), Kubernetes (helm).


Ссылки на предыдущие части:


  • Первая часть шаблона была посвящена HTTP серверу.
  • Вторая часть шаблона была посвящена прототипированию REST API.
  • Третья часть посвящена развертыванию шаблона в Docker, Docker Compose, Kubernetes (kustomize).
  • Четвертая часть будет посвящена развертыванию в Kubernetes с Helm chart и настройке Horizontal Autoscaler.
Читать дальше →
Всего голосов 5: ↑4 и ↓1 +3
Комментарии 4

Apache NlpCraft 1.0.0. Упрощение использования и расширение возможностей

Время на прочтение 7 мин
Количество просмотров 421
Open source *Scala *API *Apache *Natural Language Processing *
Обзор

Apache NlpCraft - библиотека с открытым исходным кодом, предназначенная для интеграции языкового интерфейса с пользовательскими приложениями. Новая версия 1.0.0 привнесла в проект наиболее существенные изменения за все время его существования. 

Основные идеи развития библиотеки были изложены в данной заметке, вкратце напомню их суть:

1. Предельное упрощение, отказ от всех вспомогательных enterprise возможностей, предельно точная фокусировка продукта.

2. Максимальная  плагабильность, позволяющая контролировать все элементы обработки текста и как следствие, решающая проблему поддержки мультиязычности.

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Комментарии 0

Как мы быстро запустили мобильное приложение и споткнулись о свой успех

Уровень сложности Средний
Время на прочтение 13 мин
Количество просмотров 5.4K
Блог компании Группа НЛМК JavaScript *Node.JS *API *
Туториал

Привет, Хабр! Мы крупная производственная компания с 50К+ сотрудников, и в 2019 году поняли, что нам нужно мобильное приложение. Срок реализации 5 месяцев. Какой стек вы бы выбрали при такой скорости? Мы выбрали нативные Kotlin и Swift. Поначалу запилили всего 6 сервисов (новости, зарплатный лист, отпуска, блоги, регистрацию опасностей, выдачу СИЗ), и даже при том, что нанесли минимальную пользу, приложение очень зашло, количество пользователей начало расти лавинообразно. И тут мы поняли, что серверная часть на node.js + PostgreSQL создана без всякой мысли о развитии и масштабировании, решала исключительно локальные задачи. Все было на неоптимальной монолитной архитектуре, развивать и поддерживать которую просто нельзя.

Расскажу, как мы решили проблему.

Читать далее
Всего голосов 21: ↑18 и ↓3 +15
Комментарии 11

Подготовка шаблона приложения на Typescript с Nest, Nuxt 3 и Docker

Уровень сложности Средний
Время на прочтение 12 мин
Количество просмотров 1.8K
Node.JS *API *DevOps *VueJS *TypeScript *
Туториал

Решил описать свой подход построения окружения на Typescript с Nest на бекенде, Nuxt (SPA) на фронтенде. Все заворачивается в один docker‑образ и запускается как standalone приложение c nginx, healthcheck»ами, тестами и ш…широкой сферой применения.

Читать далее
Всего голосов 8: ↑8 и ↓0 +8
Комментарии 2

Обзор сервисов внешней аналитики маркетплейсов 2023 года: бесплатные, платные, что умеют и не умеют, какой выбрать

Время на прочтение 11 мин
Количество просмотров 1.4K
API *Разработка под e-commerce *Управление e-commerce *Управление продажами *
Из песочницы

Это не рейтинг Forbes из разряда “кто больше зарабатывает на маркетплейсах”. Это срез рынка, в котором работаем и мы сами. Третий год подряд наша команда делает обзор сервисов внешней аналитики маркетплейсов. Для начинающих и опытных селлеров, поставщиков, маркетологов, аналитиков. Мы старались, чтобы статья, в первую очередь, оказалась полезна тем, кто еще ищет свой сервис внешней аналитики маркетплейсов, оптимальный по цене-качеству. Не исключено, что кто-то и вовсе не видит надобности в сервисах внешней аналитики и считает, что успешно продавать на маркетплейсах можно и без них. Можно. Но это, словно ходить по улице с закрытыми глазами. Большая вероятность, что не туда придете. Если вы все же чувствуете потребность, что для вывода нового товара, увеличения объемов продаж и выручки, масштабирования бизнеса, вам просто необходимо следить за чужими показателями и быть в курсе, что хорошо, а что плохо продается на маркетплейсах, тогда можете потестить сервис внешней аналитики. Какой? Выбирайте, какие критерии для вас особенно важны и делайте выводы.

Читать далее
Всего голосов 5: ↑1 и ↓4 -3
Комментарии 2

Тенденции и тренды API на 2023 год: от API-First до искусственного интеллекта

Уровень сложности Простой
Время на прочтение 6 мин
Количество просмотров 1.2K
Блог компании МТТ API *
Аналитика

Рынок API продолжает расширяться. За последние годы количество разработчиков, использующих такие интерфейсы, выросло на 61 %. Продолжается тенденция, которую мы наблюдали годами. Чтобы понять, куда мы движемся, давайте рассмотрим некоторые ключевые тренды API и их влияние на бизнес сегодня и его будущее.

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Комментарии 0

Паттерны проектирования API

Время на прочтение 5 мин
Количество просмотров 13K
Блог компании Издательский дом «Питер» Совершенный код *API *Профессиональная литература *
Перевод
image

Это обзор книги «API Design Patterns» Дж. Дж. Гивакса от издательства Manning.

Я уже упоминал, как стараюсь прокачиваться в теме API: читаю книги, смотрю релевантные видео на YouTube, изучаю важные RFC от IETF.
Читать дальше →
Всего голосов 15: ↑14 и ↓1 +13
Комментарии 2

12 неочевидных правил проектирования REST API

Уровень сложности Средний
Время на прочтение 10 мин
Количество просмотров 12K
Блог компании red_mad_robot API *
FAQ

Раскрываем 12 кейсов проектирования спецификации REST API из практики red_mad_robot, которые помогут сэкономить время для разработки. А также объясняем, почему стоит следовать подходу contract first — писать спецификацию прежде кода.

Читать далее
Всего голосов 16: ↑13 и ↓3 +10
Комментарии 15

Вклад авторов