Обновить
28.07

Проектирование API *

О создании API

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

Как при помощи С++20 мы искоренили целый класс багов, возникавших во время выполнения

Время на прочтение5 мин
Охват и читатели6.6K

C++20 давно в ходу и поддерживается компилятором MSVC с версии 16.11, но в этой статье я расскажу не о том, как его использовать, а как с его помощью нам удалось устранить целый класс багов времени выполнения, подвесив специальную проверку во время компиляции. Давайте разберемся с этим подробнее!

Читать далее

Apache Guacamole и взаимодействие с API: реальный кейс использования oVirt

Время на прочтение4 мин
Охват и читатели26K

Рассказываем о методах удаленного управления серверами, не зависящих от операционной системы. Мы уже писали о разработанной в HOSTKEY веб-консоли для материнских плат Supermicro, которая не требует локальной установки Java. Оборудованием Dell тоже можно управлять удаленно с помощью встроенной в DRAC консоли VNC. Показываем, как.

Узнать подробности

«А поговорить?» или делаем звонок для подтверждения заказа в интернет магазине с помощью МТТ VoiceBox

Время на прочтение17 мин
Охват и читатели3.1K

Экономическая ситуация нынче нестабильная, лишних денег у людей нет. И вот значится обратились ко мне товарищи со словами: "Ты же когда-то там сайты делал, помоги разобраться". После такой просьбы пришлось мне сдувать пыль вековую с постаревших связей нейронных, да бубен шаманский доставать.

Но не переживайте, эта статья не о том, как я спустя 12 лет снова сел ковырять сайты на PHP. Всё это банально и писать об этом на Хабр я бы не стал.

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

Вы готовы загибать пальцы?

Итак, сегодня мы с вами:

Настроим сценарий голосового бота для подтверждения интернет заказа.

Одним глазом взглянем на API для управления ботом и отправим пару запросов через Postman.

Добавим пару кастомных действий в WooCommerce, чтобы робот вместо оператора разными голосами подтверждал заказ.

Читать далее

Сравнение API Management платформ: результаты теста

Время на прочтение7 мин
Охват и читатели7.8K

В прошлый раз мы выложили в открытый доступ систему критериев, по которым решили оценивать API Management платформы. Сегодня поделимся результатом сравнения 10 решений, по которым нам удалось собрать подробную информацию и даже немного потестить.

Платформ на рынке значительно больше, как минимум 40, в наше сравнение попали следующие: WSO2 API Manager, Axway Amplify, Red Hat OpenShift API Management, Microsoft Azure API Management, Gravitee, Mulesoft Anypoint Platform, Tyk, Google Apigee API Management, IBM API Connect и Tibco Cloud API Management.

Оценка каждого критерия делалась людьми, поэтому может быть несколько субъективной. Если вы с чем-то не согласны, мы уважаем ваше мнение и прикладываем редактируемую табличку с расчетами: меняйте веса и значения, как считаете правильным. Мы лишь делимся результатом своих поисков.

Читать далее

Продукт API

Время на прочтение12 мин
Охват и читатели5.3K

Это черновик двух первых глав раздела «API как продукт» моей книги о проектировании API.

Когда мы говорим об API как о продукте, необходимо чётко зафиксировать два важных тезиса.

Читать далее

5 советов, как поднять тестирование API с REST Assured на новый уровень

Время на прочтение8 мин
Охват и читатели9.8K

Процесс автоматизации тестирования рассматривается как довольно медленная проверка приложения через его пользовательский интерфейс, что в свою очередь увеличивает время сборки. С точки зрения CI/CD это не кажется целесообразным подходом. Не делайте поспешных выводов — я не пытаюсь донести, что проверка UI не важна и что она не стоит затраченных ресурсов.

Читать

Создание собственных команд в GIT

Время на прочтение6 мин
Охват и читатели10K

Эта статья предназначена для тех, кто уже имеет начальный уровень работы с GIT и BitBucket. В статье рассматриваются примеры в Git Bash version 2.33.0, API BitBucket 2.0, https://bitbucket.org

Читать далее

IT-способ получения информации из достоверного источника

Время на прочтение3 мин
Охват и читатели8.6K

Поток информационных новостей сыпется со всех сторон. Поиск достоверной информацией становится всё затруднительнее. Для того, чтобы сделать правильный выбор необходимо лучше всего опираться на первоисточник. В мире экономики и финансов, пожалуй, одним их главных источников является Центральный Банк России.

Читать далее

Тинькофф Инвестиции про новую версию API и конкурс торговых роботов

Время на прочтение3 мин
Охват и читатели14K

Привет! На связи команда Тинькофф Инвестиций. Мы запустили новую версию программного интерфейса для алгоритмического трейдинга. Расскажем про Tinkoff Invest API и что новенького в сервисе.

Читать далее

Чем именно YouTube нравится пользователю?

Время на прочтение15 мин
Охват и читатели12K

Я ставил перед собой цель: описать, какие положительные стороны Ютуба как платформы знаю лично я, говоря больше про технический аспект. Поводом этого стали известные политические события в начале марта 2022 года. Случись что с Ютубом, обходить ограничения для него будет проблематично. Так зачем нам сдался именно он?

Читать далее

Выбор API Management платформы: какие критерии важны?

Время на прочтение5 мин
Охват и читатели4.7K

В один ненастный момент мы осознали, что без комплексного, и главное, продуманного управления несколькими десятками API, что есть в нашем ПО, всё больше времени тратим на борьбу с хаосом. Привычный Postman спасал лишь от малой толики проблем, и мы начали выбирать себе API Management платформу.

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

В первую очередь расскажем о тех критериях, которые важны при выборе API Management платформ. Полученную матрицу вы можете подстроить под себя, заменив коэффициенты важности того или иного параметра.

Читать далее

Как вытянуть данные через официальный API ВК

Время на прочтение12 мин
Охват и читатели53K

API ВКонтакте используют не только для сбора статистики, но и для отложенного постинга, отправки сообщений. Мы с командой активно применяем его для автоматизации отчетности по SMM и таргету. Поэтому поговорим про сценарии использования, когда нужно получить статистику из ВКонтакте для обработки в других системах. Кратко расскажем, как в целом работает API, поделимся методами, которыми пользуемся сами. В конце пройдемся по сложностям, от которых зависит результат.

Читать далее

Ближайшие события

GraphQL-gRPC API Gateway на Java

Время на прочтение16 мин
Охват и читатели13K

В данной статье я хочу рассказать про процесс создания концепта API Gateway для обеспечения взаимодействия фронтенда, использующего GraphQL, и бэкенда, использующего gRPC, на Java с использованием фреймворка Quarkus.

Читать далее

Настольный клиент для Yandex Speechkit text2speech на коленке

Время на прочтение3 мин
Охват и читатели5.7K

Вчера понадобилось мне записать голос для голосового (IVR) меню. Решил воспользоваться голосами от яндекс.облака, тем более что они теперь все высококачественные, и от человеческого неотличимы. Но как бы это сделать поудобнее, чтобы не надо было потом редактировать и конвертировать? Казалось бы, можно воспользоваться демкой на странице описания, но во первых там есть ограничение длины текста, во вторых она дает сохранить только запись в формате ogg, и в третьих иногда добавляет в запись рекламу. Оно и понятно в общем то, эта демка предназначена для показа технологии а не для коммерческого использования.

Резюме - надо получать записи как положено, через api, тем более что оно простое и понятное, только небольшая сложность с авторизацией. Но то что оно несложное не значит что им можно легко и просто с нуля воспользоваться, нужен хоть какой то интерфейс.

Беглый гуглёж ничего не принес, только несколько малопонятных проектов на гитхабе.

Уже думал быстренько наваять какой нибудь свой веб-интерфейс но тут вспомнил что есть Postman. Для тех кто не в теме - это замечательная программа для тестирования любых api интерфейсов.

Под катом - как настроить Postman для преобразования текста в речь.

Читать далее

Реализация простой HTML5-панели управления серверами на Apache Guacamole

Уровень сложностиСредний
Время на прочтение5 мин
Охват и читатели11K

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

Если система не установлена или возникли какие-то проблемы с ее настройкой (например, при попытке изменить правила межсетевого экрана), доступ можно потерять. В таких ситуациях на помощь приходят специализированные контроллеры, позволяющие управлять серверами без ОС, как если бы вы сидели за физической консолью. Рассказываем, как это работает у нас в HOSTKEY.

Узнать, как все устроено

Добро пожаловать в семью

Время на прочтение9 мин
Охват и читатели4.7K

Привет, Хабр! Меня зовут Игнат Нахай и это мой первый пост. Я работаю в команде по внедрению платформы ZIIoT для промышленности. Конкретнее – отвечаю за архитектурные решения при внедрении платформы в информационный слой заказчика.

ZIIoT объединяет все источники промышленных данных на предприятии и через набор MES-сервисов позволяет управлять качеством, отслеживать генеалогию продукции, анализировать производительность, проводить оперативное и детальное планирование, контролировать состояние и распределение ресурсов и много чего еще.  В связи с этим в платформе рождается большой объем информации, которая востребована в других информационных системах предприятия. Здесь я расскажу, как мы решали задачу построения информационных потоков и как нам в этом помог Apache NIFI. 

Читать далее

Из чего состоит платформа IoT: аутентификация и безопасность

Время на прочтение4 мин
Охват и читатели4.5K


Современная сеть IoT — это комплекс из тысяч или миллионов устройств, в котором всё автоматизировано: запуск, управление, идентификация, управление, система безопасности, права доступа, замена вышедших из строя и так далее. В мире планируется выпуск 150 000 новых устройств IoT в минуту. Таким флотом невозможно управлять вручную.
Читать дальше →

Пишем свой фондовый индекс (API Тинькофф, FastApi, TradingView)

Время на прочтение9 мин
Охват и читатели18K


Здравствуйте дорогие хабровчане, в этом посте я покажу, как написать свой биржевой индекс наподобие S&P 500 или Nasdaq.


О том, как мне это пришло в голову можно прочитать в моей предыдущей статье: Как я решил стать трейдером и проигрался, а потом отыгрался, потому, что я программист. Мой опыт. Здесь будет рассмотрена только техническая сторона.

Читать дальше →

Дженерики могут замедлить ваш код на Go

Время на прочтение34 мин
Охват и читатели18K

Встречайте, вот и Go 1.18, а с ней – первый релиз долгожданной реализации дженериков, наконец-то готовых к реальному использованию в продакшене. Дженерики – это весьма востребованная возможность, давно вызывающая жаркие споры в сообществе Go. С одной стороны, самые голосистые беспокоятся по поводу сложности, которую привносят дженерики. Их страшит неизбежная эволюция Go, которая доведет его либо до многословия как в энтерпрайз-версии Java, со своими обобщенными фабриками, либо, самое страшное, превратит Go в вырожденный HaskellScript, где if-ы придется заменить монадами. Положа руку на сердце, оба этих опасения могут быть преувеличенными. С другой стороны, поборники дженериков считают, что дженерики критически важны для масштабного внедрения чистого кода, пригодного для многоразового использования.

Автор этой статьи не принимает ни одну из сторон в данных дебатах и не дает рекомендаций, где и в каких случаях использовать дженерики в Go. Напротив, эта статья призвана осветить запутанный случай с дженериками в Go с третьей стороны: с точки зрения системных программистов, которые воодушевлены не дженериками как таковыми, а мономорфизацией и тем, как она может сказаться на производительности. Нас таких десятки. Десятки! И мы все имеем изъявить некоторое серьезное разочарование.

Читать далее

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