Как стать автором
Обновить
0
@cubespaceread⁠-⁠only

Пользователь

Отправить сообщение

Изучаем PostgreSQL. Часть 1. Знакомимся с архитектурой

Время на прочтение8 мин
Количество просмотров97K

 На сегодняшний день существует большое количество различных систем управления базами данных - СУБД, от коммерческих до открытых, от реляционных до новомодных NoSQL и аналогичных.

Одним из лидеров направления СУБД является PostgreSQL и ее различные ответвления, о некоторых из которых мы рассмотрим подробнее.

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

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

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

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

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

Мониторинг производительности MySQL для Grafana на изичах за 20 минут

Время на прочтение2 мин
Количество просмотров12K
Привет, дорогой хабрянин и другой читающий сей рецепт вкусного и здорового мониторинга!

Мое имя — Михаил Андрианов и работаю я Тех.Директором в компании Emarsys уже целых 7 лет.

Мы часто работаем с клиентскими и своими базами данных, поэтому зачастую должны наблюдать за ними, чтобы наши клиенты и мы могли жить и работать спокойно.
Читать дальше →
Всего голосов 19: ↑14 и ↓5+18
Комментарии14

Как подключить платежную систему с Payments к Telegram

Время на прочтение6 мин
Количество просмотров32K

Telegram-боты позволяют решать самые разные задачи. С помощью них можно автоматизировать рабочие процессы. В статье показываем, как разработать бота для приема платежей и развернуть его на облачном сервере.
Читать дальше →
Всего голосов 41: ↑40 и ↓1+51
Комментарии8

Создаём и настраиваем собственную CDN

Время на прочтение18 мин
Количество просмотров20K

Задача этого репозитория — создать свод знаний о том, как работают CDN, написав одну из них «с нуля». CDN, которую мы будем проектировать, использует следующие технологии: Nginx, Lua, Docker, docker-compose, Prometheus, Grafana и wrk.

Мы начнём с создания одного бэкенд-сервиса, а затем расширим его до многоузловой CDN с симуляцией задержек, а также возможностью наблюдений и тестирования. В каждом из разделов мы обсудим сложности и компромиссы при создании/управлении/эксплуатации CDN.
Читать дальше →
Всего голосов 46: ↑46 и ↓0+46
Комментарии23

Тестирование автоматизации Ansible с помощью Molecule Часть 1

Время на прочтение9 мин
Количество просмотров10K

Molecule – это проект Red Hat, призванный помочь в тестировании ролей Ansible. Он обеспечивает поддержку тестирования с различными операционными системами и дистрибуями. Molecule также является весьма разноплановым проектом, позволяющим использовать множество провайдеров виртуализации, тестовых фреймворков и тестовых сценариев. Такой подход обеспечивает последовательность в разработке и обслуживании ролей.

В статье много информации об Ansible. Давайте посмотрим, как тестировать роли с помощью Molecule, Docker и Testinfra.

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

Тестирование автоматизации Ansible с помощью Molecule Часть 2

Время на прочтение21 мин
Количество просмотров4.7K

Больше работайте с Molecule, чтобы убедиться, что ваша инфраструктура работает. Используйте компоновку, идемпотентность, несколько контейнеров и внутренние зависимости, чтобы при развертывании веб-сайта ваши роли Ansible вели себя должным образом.

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

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

Ansible для начинающих

Время на прочтение6 мин
Количество просмотров73K

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

Ansible — это инструмент infrastructure as a code для автоматизации задач по подготовке и конфигурированию инфраструктуры.

Вам понадобятся: базовые знания о Linux (можно начать с cent OS/Ubuntu), практический опыт с облачными сервисами (AWS), общее представление о виртуальных машинах (AWS EC2).

Читать далее
Всего голосов 18: ↑13 и ↓5+9
Комментарии9

Колл-центр на базе Telegram

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

image


В мире, где количество скачиваний Telegram перевалило за 1 млрд, есть простая задача — принимать звонки от клиентов. Будем разворачивать колл-центр?
Давайте представим себе сколько это головной боли:


  • Арендовать номера телефонов, помещение для операторов
  • Покупать, устанавливать телефоны (Хардфоны? Софтфоны ?)
  • Нанимать-обучать операторов, платить им зарплату (… продолжать? :-) )
  • Подумать как организовать удаленный доступ (vpn ?)

Почему бы просто не принимать звонки на Telegram сотрудников и назвать их операторами?
Просто, да не очень то уж и просто...

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

Пишем асинхронного Телеграм-бота

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров60K

Сегодня я покажу, как написать своего Телеграм-бота на основе asyncio и aiohttp.

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

Статья предназначена для начинающих асинхронных программистов.

Читать далее
Всего голосов 28: ↑26 и ↓2+29
Комментарии10

Умный принтер. Улучшая Octoprint

Время на прочтение5 мин
Количество просмотров39K
Разрабатывая открытый проект 4-х экструдерного принтера Z-Bolt, мы столкнулись с проблемой выбора экрана для управления принтером. Из имеющихся экранов лишь решение от Duet Wifi умеет управлять более чем 2-мя экструдерами. Решение, мягко говоря, не бюджетное, да и интерфейс на любителя. Так что мы решили поискать альтернативный вариант с преферансом и куртизанками. Эта история о нем…

image
Читать дальше →
Всего голосов 14: ↑14 и ↓0+14
Комментарии23

Мой умный дом на ESP8266, часть 3

Время на прочтение3 мин
Количество просмотров34K

Предыдущая статья: Мой умный дом на ESP8266, часть 2

В этой статье: прошивка ESP8266 прошивкой ESP Easy, настройка I2C, настройка связи с MQTT-брокером и подключение датчиков.

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

Мой умный дом на ESP8266, часть 2

Время на прочтение5 мин
Количество просмотров36K

Начало этого цикла статей находится здесь.

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

Итак, для первой версии этой базы выбран чип ESP8266, на основе которого будет строиться весь умный дом.

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

Схема моего умного дома на основе ESP8266, часть 1

Время на прочтение4 мин
Количество просмотров49K

Захотелось мне сделать свой дом умным. И чтобы это было дешевым, простым и надежным. Как оказалось это сделать было возможно. Но... готовых умных домов я не смог найти. Те что имелись на рынке либо дорогие, либо нефункциональные, либо невнятные и т.д. и т.п. Вспомнил я про Arduino. И оказалось на нем можно это сделать (точнее не на нем, а на очень похожем на него контроллере ESP8266). Правда это уже будет целым хобби. Просто взять купить и поставить не получится. Нужно искать, собирать, паять, соединять и конечно же программировать. Ок, поехали!

Это первая моя статья на тему моего умного дома. В дальнейшем я буду выкладывать следующие статьи о том, что я конкретно сделал и как.

Читать далее
Всего голосов 28: ↑6 и ↓22-15
Комментарии113

Превращаем одноплатник Cubietruck в Wi-Fi Hotspot с Captive portal, VPN-шлюзом и Ad block

Время на прочтение18 мин
Количество просмотров19K
raspap

Для построения Wi-Fi сети обычно используют готовые маршрутизаторы, функциональность которых всегда ограничен прошивкой. А если необходимо добавить блокировщик рекламы, VPN шлюз и красивый Captive portal, покупать новую железку? Стоимость устройства с такими возможностями будет уже весьма высока. Можно взять Linux с Hostapd и сделать точку доступа с Wi-Fi, но в отличие от готовых маршрутизаторов не будет наглядного Web-интерфейса. И для решения этой задачи был создан проект RaspAP, который на базе устройств с ОС Debian создает Wi-Fi Hotspot с Captive portal, VPN-шлюзом, Ad block. Для RaspAP в отличие от OpenWrt не требуется непосредственная поддержка устройства, достаточно поддержки последней версии Debian. RaspAP работает поверх уже установленных ОС: Raspberry Pi OS, Armbian, Debian, Ubuntu. Как сделать Wi-Fi Hotspot на RaspAP прошу под кат.
Всего голосов 25: ↑23 и ↓2+31
Комментарии19

Самодельный дымоуловитель для пайки

Время на прочтение7 мин
Количество просмотров19K
Мы уже публиковали перевод статьи, посвящённой дымоуловителю для пайки. В том материале речь шла о датчике, основанном на Arduino, который автоматически включает дымоуловитель при извлечении паяльника из держателя. А сегодня речь пойдёт о самостоятельном изготовлении дымоуловителя.

Самодельный дымоуловитель для пайки

Тот, кто увлекается электроникой, знает, что пайка играет важнейшую роль практически во всех его проектах. Однако вряд ли кому-то понравится вдыхать дым, который выделяется при нагревании припоя и флюса. У этого дыма ужасный запах, он может навредить здоровью, но опасности, связанные с ним, можно ослабить, воспользовавшись дымоуловителем. Это устройство, улавливающее ядовитые испарения, пригодится даже тому, кто паяет нечасто.

Хороший дымоуловитель можно и купить, но стоить он будет более $70. Я, узнав об этом, сделал такое устройство сам, использовав 120-миллиметровый компьютерный вентилятор и корпус, напечатанный на 3D-принтере.
Читать дальше →
Всего голосов 32: ↑22 и ↓10+21
Комментарии41

Разблокируем интернет с помощью Mikrotik и VPN: подробный туториал

Время на прочтение3 мин
Количество просмотров149K

В этом пошаговом руководстве я расскажу, как настроить Mikrotik, чтобы запрещённые сайты автоматом открывались через этот VPN и вы могли избежать танцев с бубнами: один раз настроил и все работает.

В качестве VPN я выбрал SoftEther: он настолько же прост в настройке как и RRAS и такой же быстрый. На стороне VPN сервера включил Secure NAT, других настроек не проводилось.

В качестве альтернативы рассматривал RRAS, но Mikrotik не умеет с ним работать.  Соединение устанавливается, VPN работает, но поддерживать соединение без постоянных реконнектов и ошибок в логе Mikrotik не умеет.

Настройка производилась на примере RB3011UiAS-RM на прошивке версии 6.46.11.
Теперь по порядку, что и зачем.
Читать дальше →
Всего голосов 44: ↑40 и ↓4+63
Комментарии75

MikroTik и блокировка нежелательных сайтов (на примере youtube и facebook)

Время на прочтение3 мин
Количество просмотров188K


На написание данной статьи меня сподвиг тот факт, что старший ребенок стал по ночам вместо того чтобы укладываться спать, смотреть на своем смартфоне всякие ролики на youtube, до поздней ночи, а так же замена домашнего роутера с TP-Link TL-WR1043ND на MikroTik RB951G-2HnD.
Читать дальше →
Всего голосов 19: ↑16 и ↓3+13
Комментарии79

ARDU Remote: очень простая и дешёвая аппаратура управления своими руками

Время на прочтение2 мин
Количество просмотров19K

Всем привет. Захотелось мне однажды маленькую удобную аппаратуру для дрона/крыла; usb-джойстик для симуляторов и Open.HD; найти оправдание построенной дельте (3d-принтеру) и пострадать ардуино. Сразу фото итога:


Всего голосов 11: ↑9 и ↓2+11
Комментарии12

Установка и использование виртуальной сетевой лаборатории EVE-NG совместно с Ansible. Первый опыт

Время на прочтение9 мин
Количество просмотров147K

image


В данной статье приведен опыт инженера-сетевика по развертыванию виртуальной лаборатории EVE-NG в домашних условиях, для целей подготовки к экспертным экзаменам Cisco.


Я постарался собрать все основные вехи настройки, разбросанные по статьям в интернете и попытался добавить в топологию, попутно изучая, ansible — систему управления конфигурациями. Черновик статьи появился случайно, поскольку мне стало жаль терять накопленный опыт и решил сохранять его в отдельный файл. Вот его я и представляю на ваш суд.

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

Создание вашего первого модуля Ansible

Время на прочтение8 мин
Количество просмотров10K

В этом блоге я расскажу, как создать свой первый модуль Ansible.



Конечно, есть документация, доступная и на Ansible.com, но разобраться в ней достаточно трудно. Запуск своего первого модуля на основе этого введения дался мне с большим трудом. Вот почему я создал это пошаговое руководство. Новые пользователи заслуживают лучшей отправной точки.

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

Информация

В рейтинге
Не участвует
Дата рождения
Зарегистрирован
Активность