Server Side
422 subscribers
3 photos
24 links
Канал про Server-Side и не только. Статьи, обзоры и прочая актуальная информация.

Обратная связь: @smejl
Download Telegram
Как вы тестируете свои запросы? А тестируете ли?
Небольшая отличная статья с примерами кода, разбирающая этот аспект серверной разработки.

⭐️ Интересное:
– Создание нового проекта на Vapor 2 и подключение PostgreSQL
– Используется XCTest и возможности самого Vapor

bignerdranch.com/blog/request-testing-in-vapor-part-1/
🌅 Держитесь, хейтеры!
Мир, где бэк будет на Swift, становится всё ближе и ближе. Vapor анонсировал облачный сервис на основе Amazon Web Services для максимально быстрого разворачивания проектов!

⭐️ Интересное:
– Оптимизированный deploy
– Аналитика и вся необходимая статистика
– Cron, HTTP/2, IPv6 и много другого

🏎 Комментарий:
Облако на стадии бэтки. К моменту публикации поста, лимит регистраций исчерпан. Вы можете изучить документацию и подготовить свои продукты.

🎉 Анонс:
goo.gl/7bTiW6

☁️ Облако:
vapor.cloud

📚 Документация:
docs.vapor.cloud
🚀 Отличная статья, в которой по шагам разбирается весь процесс поднятия бэка на DigitalOcean: от создания облака и настройки DNS до привязки SSL.

⭐️ Интересное:
– Установка и настройка MySQL
– Интеграция с GitHub для автоматизации деплоя
– Запуск билда через Supervisor

🎮 Комментарий:
Если у вас будут сложности с Supervisor, убедитесь, что версии свифта совпадают.
Если вы хотите поиграться с DigitalOcean (5$ в месяц), но не хотите тратиться, то вот наша рефералка m.do.co/c/36bdb1e587ef, хватит на 2 месяца ☺️

bit.ly/2tXbACq
🤖 Чуть более месяца назад мы писали про использование TensorFlow в связке с Perfect. Наткнулись на пошаговую инструкцию, как организовать AI Server на Swift.

⭐️ Интересное:
– Введение для тех, кто не знаком с базовыми концепциями Machine Learning
– Поднятие тестового приложения

bit.ly/2vkRJis
🎈Vapor подружился с Apache! Ещё один большой шаг в сторону серьёзных решений. Как это повлияет на распространение – узнаем позже.

docs.vapor.codes/2.0/deploy/apache2/
🤺 Ryan Collins, который в 2016 году одним из первых сравнил S3 инструменты между собой и с Node.js, написал новую статью с актуальной аналитикой.

⭐️ Интересное:
– В обзоре последние версии Swift фреймворков и Node.js 8
– Vapor 2 больше не pure Swift: сейчас есть как минимум несколько зависимостей на C, в отличии от первой версии

medium.com/@rymcol/updated-benchmarks-for-the-top-server-side-swift-frameworks-vs-node-js-9da4a0491eca
🛰 Как насчёт распознавания картинок на сервере? А если он написан на Swift? Легко!
Вот пример реализации от IBM.

⭐️ Интересное:
– Создание гибридного билда из iOS приложения для запуска на сервере
– Интеграция CoreML с Kitura
– Сравнение с Watson Service (AI от IBM)

goo.gl/fcCsTZ
🛫 Интересно читать мнение backend разработчиков, которые мигрируют на Server Side Swift. Цикл статей из трёх частей от программиста популярного фреймворка Laravel на PHP об S3 и Vapor, в частности.

⭐️ Интересное:
– Преимущества Vapor
– Как развернуть и настроить сервер
– Тесты и отладка

goo.gl/cgGVhq
👨‍🎓 Самый простой способ учиться – изучать существующий код. Сейчас для Server-Side Swift мало хороших примеров, но это один из них, причем на Vapor 2.

⭐️ Интересное:
– Всего 13 основных классов и пара расширений
– Четкое разделение на Model и Controller
– PostgreSQL, как основная база данных

🎲 Сам проект:
goo.gl/VcSd7o

📨 GitHub репозиторий:
goo.gl/fZG9UH
🖇 При проектировании моделей, важно правильно организовать связи между ними. Это даёт возможность легко получать всю информацию, которая связана с объектом. А вот и статья про синтаксический сахар, доступный в провайдере Fluent.

⭐️ Интересное:
– Установка связей с помощью Foreign Key
– Типы Parent, Children и Siblings с примерами

📄 Статья:
goo.gl/CTjTyf

🗂 Пример проекта:
goo.gl/kLCL5X
Почему хедеры в http заголовках идут с префиксом X. Например, X-Auth-Token

Этот префикс был как стандарт много лет назад. Но уже лет 8 как deprecated и не рекомендуется к использованию.

https://tonyxu.io/posts/2018/http-deprecate-x-prefix/
Отличная и полная статья на тему стандартизации и централизации логов в Golang

https://www.datadoghq.com/blog/go-logging/
Удобный сервис для генерации файлов gitignore.

https://www.toptal.com/developers/gitignore

Есть и апишки, можете подтянуть к CI/CD
https://docs.gitignore.io/install/command-line
Инструмент, позволяющий асинхронно выполнять запросы в PHP. В отличие от Guzzle, где можно параллельно выполнять несколько запросов, curl-easy работает без блокировки: пульнул и поехал дальше, ответы прилетят в колбэк.

https://github.com/stil/curl-easy
Отличная статья на тему расскатки миграций в кубе для микросервисов. Разобраны большинство подходов. Описаны минусы и плюсы.

https://andrewlock.net/deploying-asp-net-core-applications-to-kubernetes-part-7-running-database-migrations/