Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Andrey Listochkin as Backend Secret

Привет всем!

Сегодня 27 сентября 2015 годя я заканчиваю вести твиттер Backend Secret. Возможно, неделя получилась несколько малоактивной - изнь вносила свои коррективы. Тем не менее, мне очень понравилось общаться со всем вами. Я решил сделать темой недели разработку API и несколько разбавить разговоры о темах, связанных с Девопсом.

Для начала я поделился отличным видео от Dan Gebhardt об эволюции REST API. Я считаю, что это - одно из лучших видео по теме.

Ден - один из соавторов спецификации json-api - сегодня это стандарт де факто для REST API и я надеюсь, что вслед за Rails, Node, Python, PHP, Ember и Backbone он придет и на другие платформы.

Затем мы поговорили о том, какие технологии вы бы выбрали сегодня для разработки API-серверов. Больше всего люди рекомендовали Django REST и Ruby on Rails, но упоминались так же и Node, и Go. В целом все согласились, что самым лучшим вариантом будет та технология и платформа, с которой уже знаком разработчик.

Когда я говорил о Rails, я упоминал некоторые инструменты для сбора метрик и работы с производительностью. TuneMyGC - это сторонний сервис, который собирает метрики работы сборщика мусора на вашем сервере и на основе собранных данных дает вам рекомендации о том, каие параметры сборщика мусора в Руби будут для вашего приложения более предпочтительными. Rack Mini Profiler - потрясающий инструмент, который не только показывает вам метрики текущего запроса, но и может строить для них флеймграфы. Последний инструмент - Skylight - строит гистограммы времени выполнения запросов и позволяет вам понять, чем "быстрые" сценарии выполнения отличаются от медленных.

Также мы поговорили о том, как в современных приложениях сделать поддержку SEO, о связи API и фронтенда, о том, когда стоит использовать WebSockets, поспорили о кодах ответа (признаюсь, я немножко набросил, чтобы послушать разные мнения).

В середине недели я рассказал вам о Backend-as-a-Sevice а также устанавливаемых локально "бекендах". Я считаю, что разработка любого API-сервиса сегодня должна начинаться как раз с такого проекта, бекенд-разработчик по возможности не должен тратить свое драгоценное время на решение однотипных задач. Так же, как фронтенд-разработчики сегодня не пишут свои календарики и таблицы с нуля, так и бекендер не должен в очередной раз писать обработчики простых CRUD-операций. Вместо этого стоит больше времени уделить действительно интересным задачам по обработке данных и развитию продукта в целом. Я сам использовал на продакшене несколько таких BaaS и installable backends и очень рекомендую такой подход.

Связанная с BaaS тема - API Gateways - тут тоже вспомнили несколько решений, в частности Tyk. Это шлюз, который стоит между вашими сервисами и клиентами API и занимается авторизацией, rate limiting, собирает метрики по запросам и т.д.

Последняя полезная ссылка от меня - библиотека паттернов архитектуры мкросервисов. Очень рад, что появился подобный ресурс.

Я надеюсь, что вам было нескучно и что неделя была вам полезной.

Всем спасибо,

Андрей @listochkin

@devgru

This comment has been minimized.

Copy link

devgru commented Sep 27, 2015

Андрей, спасибо! А можно ссылки сюда вставить? Будет очень удобно.

@listochkin

This comment has been minimized.

Copy link
Owner Author

listochkin commented Sep 28, 2015

@devgru часть я уже поставил, надо бы еще добавить ссылки на обсуждения тем

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.