Pull to refresh
0
0
Вячеслав @panaceya

Системный администратор

Send message

Angular 9 и Ivy: ленивая загрузка компонентов

Reading time10 min
Views16K
Ленивая загрузка компонентов в Angular? Может, речь идёт о ленивой загрузке модулей с помощью маршрутизатора Angular? Нет, мы говорим именно о компонентах. Текущая версия Angular поддерживает лишь ленивую загрузку модулей. Но Ivy даёт разработчику новые возможности в работе с компонентами.


Читать дальше →
Total votes 34: ↑34 and ↓0+34
Comments6

GraphQL — новый взгляд на API. Ч.1

Reading time4 min
Views43K
Всем привет, хочу поделиться накопленными знаниями по GraphQL, которые сформировались на основе около сотни прочитанных статей/доков и месяца построения API используя GraphQL.

Ну что ж, начнем с того, что такое GraphQL?


GraphQL — это стандарт декларирования структуры данных и способов получения данных, который выступает дополнительным слоем между клиентом и сервером.

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

Рассмотрим пример простого запроса пользователя.



Клиент точно указывает, какие данные он хочет получить, используя декларативную, графо-подобную структуру, которая очень напоминает формат JSON.
Читать дальше →
Total votes 31: ↑24 and ↓7+17
Comments90

5 возможностей LESS, о которых вы могли не знать

Reading time3 min
Views15K

LESS


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

Читать дальше →
Total votes 24: ↑22 and ↓2+20
Comments14

Как разделить окружение для сборки и запуска сервиса в Docker сегодня и как это cделать завтра

Reading time4 min
Views34K

image


Большинство из нас уже давно научилось готовить Docker и используют его на локальных машинах, на тестовых стендах и на боевых серверах. Docker, который недавно превратился в Moby, прочно вошел в процессы доставки кода до пользователя. Но best practice работы с контейнерной виртуализацией и, в частности, с Docker вырабатываются до сих пор.


Как это было


В начале становления Docker как основного инструмента изоляции процессов, многие использовали его аналогично использованию виртуальных машин. Подход был максимально прост: устанавливаем все необходимые зависимости в образ (Docker Image), там же билдим всё, что должно билдиться а что не должно двигаем и билдим, получаем артефакт сборки и запекаем всё это в итоговый образ.

Читать дальше →
Total votes 51: ↑50 and ↓1+49
Comments34

Книга «Программируем Arduino: Основы работы со скетчами. 2-е изд.»

Reading time5 min
Views16K
image Познакомьтесь с обновленной версией легендарного бестселлера Саймона Монка. Это издание представляет собой полностью обновленную книгу, основанную на Arduino 1.6.

С момента выхода первого издания многое изменилось: появились новые платы и устройства, использующие язык Arduino. Научитесь в полной мере использовать все возможности Arduino и познакомьтесь с его использованием в проектах Internet of Things.

Хотите создать умный дом или запрограммировать робота? Нет ничего проще. Саймон Монк не только поможет разобраться с проволочками, контактами и датчиками, но и покажет, как заставить все это хитросплетение проводов и плат делать то, что вам нужно. Arduino — это не так сложно, как кажется с первого взгляда. Вы сразу будете покорены открывающимися возможностями.
Читать дальше →
Total votes 12: ↑10 and ↓2+8
Comments18

Jenkins для Android на чистой системе и без UI

Reading time10 min
Views20K
На Хабре уже есть похожие статьи на тему сборки Android приложения с помощью Jenkins. Ключевыми особенностями/дополнениями текущей будет следующее:

  1. Мы установим Jenkins на удалённую Linux машину, где отсутствует UI.
  2. Мы будем собирать приложение из приватного репозитория.
  3. Мы решим проблему сборки приложения из ветки имя которой нам не известно.
  4. После сборки .apk файлов мы отправим их в Fabric и оповестим тестировщиков.
  5. После отправления в Fabric мы опубликуем приложение на Google Play.
  6. Защитим задачи по публикации приложения от запуска тестировщиками.
Читать дальше →
Total votes 8: ↑7 and ↓1+6
Comments4

LTSP: Терминальный сервер на Linux

Reading time11 min
Views187K


Сейчас я расскажу вам о том, как можно сэкономить немалое количество времени и денег на вашей IT-инфраструктуре.
Как централизованно админить большое количество linux рабочих станций не разводя при этом хаос в вашей экосистеме.
И так, что же такое LTSP?


LTSP — Это терминальное решение на Linux.
Говоря "терминальное", я в первую очередь имею в виду не подключение к удаленному рабочему столу как в Windows. Я подразумеваю гораздо более гибкую и продвинутую систему доставки ПО, конфигов, домашенего каталога, да и самой операционной системы на клиентские рабочие станции с вашего терминального сервера.


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


У LTSP есть несколько режимов работы:


  • тонкий клиент
  • толстый клиент
Читать дальше →
Total votes 16: ↑15 and ↓1+14
Comments28

Автоматизируем мониторинг: низкоуровневое обнаружение

Reading time6 min
Views128K
Мониторинг большого количества устройств требует в помощь инструменты автоматизации. Иначе, если все делать мышкой, то можно “укликаться”, пока добавишь и настроишь все, что требовалось. К тому же, обязательно где-нибудь ошибёшься, человек не робот. Благо, в Zabbix все эти инструменты есть: это шаблоны, API, обнаружение сетевых устройств, авторегистрация Zabbix-агентов.

И вот с версии 2.0 сюда добавилось Low-Level Discovery (LLD) или низкоуровневое обнаружение. Хотелось бы рассказать что это такое.
Подробности
Total votes 21: ↑21 and ↓0+21
Comments26

Тюним память и сетевой стек в Linux: история перевода высоконагруженных серверов на свежий дистрибутив

Reading time10 min
Views94K
image

До недавнего времени в Одноклассниках в качестве основного Linux-дистрибутива использовался частично обновлённый OpenSuSE 10.2. Однако, поддерживать его становилось всё труднее, поэтому с прошлого года мы перешли к активной миграции на CentOS 7. На подготовительном этапе перехода для CentOS были отработаны все внутренние процедуры, подготовлены конфиги и политики настройки (мы используем CFEngine). Поэтому сейчас во многих случаях миграция с одного дистрибутива на другой заключается в установке ОС через kickstart и развёртывании приложения с помощью системы деплоя нашей разработки — всё остальное осуществляется без участия человека. Так происходит во многих случаях, хотя и не во всех.

Но с самыми большими проблемами мы столкнулись при миграции серверов раздачи видео. На их решение у нас ушло полгода.
Читать дальше →
Total votes 110: ↑104 and ↓6+98
Comments73

Как оптимизировал работу с MongoDB с помощью устаревшего api или о чем молчит её спецификация…

Reading time4 min
Views19K
image

Однажды столкнулся с задачей: mongoDb использовался как кэш/буфер между backend на Java и frontend на node.js. Все было хорошо, пока не появилось бизнес требование перебрасывать большие объемы за короткое время через mongoDb (до 200 тыс. записей не более чем за пару минут). Для чего не так важно, важна что задача такая появилась. И вот тут уж пришлось разбираться во внутренностях монги…

Начинаем разбираться по шагам...
Total votes 41: ↑30 and ↓11+19
Comments14

Книги для системного администратора. Моя книжная полка

Reading time6 min
Views479K
Книги.
Я считаю, что важнейшим инструментом получения скилов системного администрирования являются именно они — книги.
Нет специальных факультетов, обучающих «админству» — каждый постигает это самостоятельно. Путем проб, ошибок и боли, потере важных данных различных злоключений.
В начале пути сложно определиться, что же нужно прочесть — ведь массив информации столь огромен!
В данном посте я хочу собрать наиболее важные и значимые труды для системных администраторов.
Уклон будет на *nix админство, но, надеюсь тема окажется небезынтересной и для Windows коллег и в комметариях они заполнят мои пробелы.
Пост субьективен и отражает лишь мой собственный опыт — я раскажу о книгах, которые помогли моему становлению.

Читать дальше →
Total votes 51: ↑46 and ↓5+41
Comments45

Samba4 — использование Python Scripting Interface

Reading time17 min
Views19K
Samba4 имеет встроенный интерфейс на Python. Многие утилиты (samba-tool, например) полностью реализованы на Python с применением этого интерфейса.

Все, что делалось из LDAP-интерфейса, можно сделать на Samba 4 Python Scripting. Преимущества — файловый доступ, значит высокая скорость, некоторые фичи, которых нет в LDAP. Например, можно взять хэш паролей пользователей из одной базы и перекинуть в другую. Да и самих пользователей с их SID-ами, паролями и всем прочим перекинуть в другой домен (без заморочек с SID-history).
Читать дальше →
Total votes 11: ↑11 and ↓0+11
Comments10

LibOS. Сетевой стек Linux в виде библиотеки-ОС

Reading time2 min
Views8.4K
Представляем библиотеку-ОС (library operating system, LibOS) для Linux.

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

Хотя архитектура сама по себе способна виртуализировать многие вещи, нынешний дизайн сосредоточен только на сетевом стеке. Вы можете пользоваться такими функциями сетевого стека как TCP, UDP, SCTP, DCCP (IPv4 и IPv6), Mobie IPv6, Multipath TCP (IPv4/IPv6, пока не включен в основную ветку) и netlink в различных приложениях пользовательского пространства (quagga, iproute2, iperf, wget, thttpd).
Читать дальше →
Total votes 23: ↑20 and ↓3+17
Comments1

Оптические волокна. Классификация

Reading time4 min
Views170K
Оптические волокно стандарт де-факто при построении магистральных сетей связи. Протяженность волоконно-оптических линий связи в России у крупных операторов связи достигает > 50 тыс.км.
Благодаря волокну мы имеем все те преимущества в связи, которых не было раньше.
Вот и попробуем рассмотреть виновника торжества — оптическое волокно.

В статье попробую написать просто о оптических волокнах, без математических выкладок и с простыми человеческими объяснениями.

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

Читать дальше →
Total votes 60: ↑56 and ↓4+52
Comments65

Получаем IP-адреса HTTPS-клиентов с HAProxy (frontend) на Nginx (backend) в режимах HTTP и TCP-балансировки

Reading time3 min
Views54K
Довольно часто требуется балансировать нагрузку между несколькими веб-серверами. При этом, как правило, необходимо, чтобы веб-приложения получали реальные IP-адреса клиентов, а не IP балансировщика.

В случае балансировки и терминации HTTP(S)-трафика на HAProxy (Layer 7 [1]) данная задача легко решается добавлением заголовка “X-Real-IP” и его обработкой на Nginx при помощи модуля ngx_http_realip_module [2]. При балансировке TCP-трафика от HTTPS-клиентов и передаче его на веб-сервера напрямую без модификации или терминации (Layer 4 [3]) добавить данный заголовок невозможно, поэтому требуется воспользоваться возможностями, предоставляемыми Proxy Protocol [4, 5, 6].

Рассмотрим оба варианта (балансировка L7 и L4) на примере выдержек из конфигурационных файлов haproxy 1.5.9 и nginx 1.6.2

Читать дальше →
Total votes 33: ↑30 and ↓3+27
Comments14

Как отслеживание показателей и биллинг могут улучшить работу вашего облака OpenStack

Reading time6 min
Views3.6K
Автор: Джон Медоуз (John Meadows), Talligent

[Примечание редактора: Ниже размещен гостевой пост Джона Медоуза (John Meadows) из Talligent, компании-разработчика биллингового решения OpenBook для платформы OpenStack. Хотите разместить гостевой пост? Обращайтесь к Нику Чейсу (Nick Chase).]
Читать дальше →
Total votes 11: ↑10 and ↓1+9
Comments0

Как на самом деле работает протокол Биткоин

Reading time28 min
Views209K
(Замечательное объяснение принципов работы сети Bitcoin авторства Michael Nielsen. Много текста, немного картинок. Обо всех корявостях перевода — в личку, буду исправлять по мере обнаружения)

Много тысяч статей было написано для того, чтобы объяснить Биткоин — онлайн, одноранговую (p2p) валюту. Большинство из этих статей поверхностно рассказывают суть криптографического протокола, опуская многие детали. Даже те статьи, которые «копают» глубже, часто замалчивают важные моменты. Моя цель в этой публикации — объяснить основные идеи, лежащие в протоколе Биткоин в ясной, легкодоступной форме. Мы начнем с простых принципов, далее пойдем к широкому теоретическому пониманию, как работает протокол, а затем копнем глубже, рассматривая сырые (raw) данные в транзакции Биткоин.
Читать дальше →
Total votes 70: ↑64 and ↓6+58
Comments18

Немного о DWDM 400/500G, 1Tb, про супер — каналы и будущее

Reading time4 min
Views18K
Постояв рядом с тестирующимися DWDM 100G, волей – неволей начал читать все, что попадается под руку и нарыл кое-какого материала по перспективам дальнейшего развития технологии DWDM. Постепенно осознавая материал, буду публиковать результаты осознания – возможно, кому то будет интересно. Здесь опубликована только часть информации — продолжение будет позже.
В недалеком будущем разработчики обещают нам возможность передачи информации со скоростями 400/500G и даже 1Тб на одну длину волны.
Читать дальше →
Total votes 35: ↑32 and ↓3+29
Comments10

CWDM — спектральное уплотнение оптических каналов

Reading time3 min
Views67K

Вступление


Я работаю в малой, по меркам нашего города, Интернет-компании. В последние 5 лет наша оптическая сеть разрасталась семимильными шагами. Изначально топология сети была выбрана неверно, а именно шинная топология. В следствии чего, если на промежуточном узле связи случался сбой (длительное отключение электроэнергии, зависание оборудования и т.д.), то он влиял на все узлы связи, расположенные дальше. Очевидным решением данной проблемы было, перестроить сеть в соответствии с топологией логическая звезда. Для этого требовалось подключить каждый узел связи отдельным волокном. Но тут всплыла другая проблема, количество свободных волокон было катастрофически мало. Прокладка новых ВОЛС от основных узлов связи финансово затратно. Выходом из сложившейся ситуации стало внедрение CWDM.
Читать дальше →
Total votes 46: ↑43 and ↓3+40
Comments31

Мессенджер на базе FTN-технологий

Reading time2 min
Views15K


Да, эта штука сможет работать по модему или через общую папку (filebox). Вернее, пока только TCP или UDP, но наработки уже есть. Функционал IM на уровне ранней аськи — только обмен сообщениями и контактами. Но внутри есть обмен между узлами, групповые чаты (аналог IRC), почта, файлы.

Читать дальше →
Total votes 47: ↑38 and ↓9+29
Comments29

Information

Rating
Does not participate
Location
Николаев, Николаевская обл., Украина
Date of birth
Registered
Activity