Pull to refresh
0
0
Анатолий @tstolik

User

Send message

Ферма тестирования SberDevices

Level of difficulty Medium
Reading time 14 min
Views 5.9K

Салют, хабр! В интернете уже довольно много материалов о том, как другие команды строили свои решения для тестирования мобильных приложений (и не только), например: Яндекс Колхоз, Ферма мобильных устройств Selectel, Ферма девайсов VK, Ферма мобильных устройств в Сбере, Мобильная ферма 101 (доклад Антона Малинского).

Я же хочу рассказать про Ферму, которую мы строим в SberDevices

Меня зовут Александр Телешов, и я руковожу разработкой Фермы и Чембера (но про это расскажу в другой раз). Под катом вы найдете небольшую хронологию событий развития Фермы, собранные грабли, интересные факты и забавные наблюдения.

Читать далее
Total votes 57: ↑56 and ↓1 +55
Comments 4

Как написать свою маленькую ОС

Level of difficulty Easy
Reading time 7 min
Views 34K


Большое начинается с малого. Например, ядро Linux 0.0.1 состояло всего из 10 239 строк кода, из них 20% комментарии. Такой проект вполне может осилить студент в качестве курсовой или дипломной работы, программируя по вечерам на домашнем ПК (собственно, Линус и написал его во время учёбы в университете, когда вернулся из армии).

Если один студент смог это сделать тогда, то почему нельзя повторить? И действительно, в интернете есть даже специальные обучающие ресурсы для написания новых ОС и целые сообщества энтузиастов, которые помогают друг другу в этом непростом деле.
Читать дальше →
Total votes 108: ↑103 and ↓5 +98
Comments 25

Резервное копирование и восстановление баз данных виртуализованного Microsoft SQL Server

Reading time 11 min
Views 34K
В версии 8.0 Veeam Backup & Replication реализован широкий спектр возможностей для резервного копирования и восстановления виртуализованных SQL серверов и баз данных, включая популярные методы полного восстановления виртуальной машины, гранулярного восстановления на уровне файлов и восстановления баз с помощью инструмента Veeam Explorer для Microsoft SQL Server. О последнем из перечисленных и будет мой сегодняшний рассказ.


Читать дальше →
Total votes 12: ↑10 and ↓2 +8
Comments 8

Как мы научили YandexGPT пересказывать видео

Level of difficulty Medium
Reading time 14 min
Views 13K

Порой бывает сложно перематывать длинный ролик в надежде найти хоть что-то интересное или тот самый момент из Shorts. Или иногда хочется за ночь узнать, о чём шла речь на паре научных конференций. Для этого в Браузере есть волшебная кнопка — «Пересказать», которая экономит время и помогает лучше понять, стоит ли смотреть видео, есть ли в нём полезная информация, и сразу перейти к интересующей части.

Сегодня я расскажу про модель, которая быстро перескажет видео любой длины и покажет таймкоды для каждой части. Под катом — история о том, как мы смогли выйти за лимиты контекста модели и научить её пересказывать даже очень длинные видео.

Читать далее
Total votes 63: ↑63 and ↓0 +63
Comments 63

Как работает сеть в контейнерах: Docker Bridge с нуля

Level of difficulty Medium
Reading time 21 min
Views 30K

В этой статье мы собираемся разобраться со следующими вопросами:

* Как виртуализировать сетевые ресурсы, чтобы контейнеры думали, что у них есть отдельные сетевые среды?

* Как превратить контейнеры в дружелюбных соседей и научить общаться друг с другом?

* Как выйти во внешний мир (например, в Интернет) изнутри контейнера?

* Как связаться с контейнерами, работающими на хосте Linux, из внешнего мира?

* Как реализовать публикацию портов, подобную Docker?

Читать далее
Total votes 71: ↑71 and ↓0 +71
Comments 14

Создаём виртуальную сеть, как это делает Docker

Level of difficulty Easy
Reading time 8 min
Views 19K

Как известно, Docker умеет создавать виртуальные сети для безопасного и удобного сетевого взаимодействия внутри контейнеров. В этой статье мы рассмотрим, как именно он это делает на примере базовых манипуляций с сетью в рамках одного хоста с операционной системой Linux.

Читать далее
Total votes 28: ↑27 and ↓1 +26
Comments 6

Где изучать Linux в 2024. Бесплатные курсы, книги и ресурсы

Level of difficulty Easy
Reading time 7 min
Views 42K

В настоящее время существует множество бесплатных ресурсов, которые предлагают уроки по Linux, от курсов до университетских программ, что делает эту ОС доступной для широкого круга людей. Знание Linux может открыть двери к различным IT‑профессиям, таким как системный администратор, разработчик, инженер по безопасности, этичный хакер, DevOps инженер и другие. Зарплаты таких специалистов высоки, спрос на кадров знающих Linux ожидается и в будущем.

В статье я собрал большой список курсов, книг, репозиториев и каналов о различных дистрибутивах Linux, которые охватывают множество тем от основ ядра до изучения сложных команд в терминале и позволят вам в своем собственном темпе и без необходимости тратить деньги на платные курсы освоить эту потрясающую OC🐧 .

Читать
Total votes 42: ↑38 and ↓4 +34
Comments 35

Как устроены сети: полезные материалы от сотрудников Selectel

Reading time 4 min
Views 20K

Фрагмент из курса «Сети для самых маленьких».

Чтобы стать сетевиком, новичку нужно изучить много теории, разобраться в особенностях профессионального оборудования и других аспектах. Мы в Selectel попросили коллег порекомендовать полезные ресурсы по сетевым технологиям, которые пригодятся на старте. Сохраняйте подборку в закладки и делитесь своими вариантами в комментариях.
Читать дальше →
Total votes 38: ↑36 and ↓2 +34
Comments 8

История о том, как Google подсматривал за нашим сайтом и галлюцинировал

Level of difficulty Easy
Reading time 5 min
Views 29K

В 2023-ем году мы узнали, что нейросети могут галлюцинировать. На первый взгляд, это довольно забавное и пока что безобидное явление. Но в этой короткой статье я расскажу, как я столкнулся с галлюцинациями самого Google, и как это чуть не угробило стартап, в котором я работаю.

Читать далее
Total votes 343: ↑341 and ↓2 +339
Comments 128

Сам себе мобильный интернет. Запускаем базовую станцию стандарта 4G LTE

Level of difficulty Hard
Reading time 13 min
Views 79K
Приветствую всех!

Я уже не раз рассказывал про то, как в домашних условиях поднять сотовые сети разных стандартов. Но всё же все они были уже весьма древними. Самое время замахнуться на кое-что поинтереснее — LTE.



Итак, в сегодняшней статье поговорим о том, что детально в нашем сообществе не описывал практически никто — о том, как запустить базовую станцию самого нового из поддерживаемых большинством телефонов этой страны стандартов. Поговорим об особенностях её работы и о трудностях, с которыми, возможно, придётся столкнуться при запуске. Традиционно будет много интересного.
Читать дальше →
Total votes 370: ↑369 and ↓1 +368
Comments 156

Руководство по парольной политике. Часть 2

Reading time 25 min
Views 10K

Продолжение. С первой частью можно ознакомиться здесь.

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

Читать далее
Total votes 5: ↑4 and ↓1 +3
Comments 9

Руководство по парольной политике. Часть 1

Reading time 7 min
Views 13K

Руководство по парольной политике. Часть 1

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

Читать далее
Total votes 7: ↑6 and ↓1 +5
Comments 8

Управление Яндекс.Станцией и другими колонками с Алисой из Home Assistant

Reading time 4 min
Views 111K

Мы привыкли называть умными устройства, которыми можем управлять, не вставая с дивана. Включить лампочку, вентилятор, кофеварку или стиральную машину.


Колонки с Яндекс Алисой хоть и называются умными, но вы не можете изменить громкость не находясь рядом с колонкой (орать через всю комнату не считается). Вы не можете перемотать песню из мобильного приложения Яндекса. Или остановить сказку, запущенную на колонке в детской, из своей кровати в спальне.


В январе 2020 кто-то обнаружил, что Яндекс.Станция поддерживает некий локальный протокол. На GitHub начали появляться проекты по управлению Яндекс.Станцией. Мне хватило пару часов, чтоб разобраться и выпустить первую версию компонента для Home Assistant. Это достаточно популярная система домашней автоматизации, написанная на языке Python.


На сегодняшний день компонент поддерживает управление всеми колонками с Яндекс Алисой и при желании может выглядеть так:


Читать дальше →
Total votes 24: ↑23 and ↓1 +22
Comments 42

Публикация базы 1С на стороннем web-сервере

Reading time 5 min
Views 62K
Имеется windows-сервер c 1С 8.3 (БД — MSSQL).
Задача — настроить публикацию базы на линуксовом web-сервере.
Тонкости — модуль 1С для апача работает только с 2.0 и 2.2, а текущая версия в большинстве дистрибутивов — 2.4+
Пишется больше для себя, чтобы не забыть. Ну и мало ли, вдруг пригодится еще кому — не придется бегать по форумам в поисках нужных команд.
Читать дальше →
Total votes 6: ↑5 and ↓1 +4
Comments 21

P2P-форум с нуля | от NAT hole punching до автономной и полностью децентрализованной сети

Level of difficulty Medium
Reading time 32 min
Views 14K

Многие, кто работают с интернет-сокетами в любой сфере IT, задаются вопросом о пробросе портов. Связано это с тем, что практически во всех домашних/общественных/корпоративных роутерах реализован механизм NAT, который перекрывает прямой доступ к устройствам в этих подсетях извне, общаясь с внешним интернетом от их имени.

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

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

Разнообразные сервисы работают на серверах, т. е. имеют некую ноду, которая имеет белый адрес в интернете (находится не за NAT). Все пользователи же подключаются к этому единому серверу. В таком случае проблема «невидимости» пользователей отпадает. Однако чисто серверное взаимодействие ограничивает скорость участников, так ещё и не отказоустойчиво. Если сервер упадёт, то все клиенты отправятся за ним (считаем, что это одноклеточный сервис не на всяких там kubernetes).

Как вы уже могли были догадаться, даже в реалиях, когда практически все устройства находятся за NATами, P2P реален. Когда вы являетесь участником bittorrent-раздачи, трансфер больших данных осуществляется напрямую. Как это работает? Поиск ответа на этот вопрос завёл меня в глубокие дебри, разгребая которые я написал оверлейную p2p-сеть, где трекерами являются сами её участники. Интересно? Тогда добро пожаловать под кат.
Читать дальше →
Total votes 76: ↑76 and ↓0 +76
Comments 25

Пакуем весь трафик в Ping message, чтобы не платить за интернет | ICMP NAT traversal

Level of difficulty Hard
Reading time 29 min
Views 83K

Бывало ли у вас такое, что вы подключились к общественной сети или мобильному интернету, но он себя странно ведёт. Надпись «Подключено, без доступа к интернету» отсутствует, устройство думает, что всё нормально. Вы открываете браузер и видите «Пройдите проверку личности в сети нашего кафе» или в случае с мобильным интернетом «Пополнить баланс можно тут, тут и тут».

Так вот, переходя ближе к теме. Вы можете воспроизвести подобное поведение очень просто прямо сейчас при помощи вашего мобильного телефона и ноутбука. Я в своём конкретном кейсе буду пользоваться услугами оператора красного цвета, однако проблема актуальна для всех текущих 4 монополистов рынка сотовой связи. Как вам, скорее всего, уже известно, они около года меняют свою политику, внедряя одно интересное нововведение — с вас требуют дополнительной платы за раздачу интернета поверх основного пакета. То есть вы не можете взять и использовать свои 7 гигов на месяц как ресурс для раздачи при помощи точки доступа. Для точки доступа вам предлагают отдельный, зачастую совсем невыгодный тариф. Конечно, можно сменить основной тариф на специальный «тариф для раздачи» и платить втридорога, но, как вы понимаете, сегодня мы в потребителя будем играть совсем недолго. Сейчас по пунктам нужно доказать нечестность подобной политики и с чувством завершённого введения перейдём к непосредственно технотексту.

Подобные условия пользования, само собой, порождают внутреннее недовольство пользователей:

За интернет они платят? — Да.

Раздача как-либо использует ресурсы провайдера сверх нормы? — Нет.
Читать дальше →
Total votes 298: ↑296 and ↓2 +294
Comments 91

Про кластер серверов 1С

Reading time 12 min
Views 74K
Кластер — это разновидность параллельной
или распределённой системы, которая:
1. состоит из нескольких связанных
между собой компьютеров;
2. используется как единый,
унифицированный компьютерный ресурс

Gregory F. Pfister, «In search of clusters».


Дано: есть бизнес-приложение (например, ERP-система), с которым работают одновременно тысячи (возможно, десятки тысяч) пользователей.

Требуется:
  1. Сделать приложение масштабируемым, чтобы при увеличении количества пользователей можно было за счёт наращивания аппаратных ресурсов обеспечить необходимую производительность приложения.
  2. Сделать приложение устойчивым к выходу из строя компонентов системы (как программных, так и аппаратных), потере связи между компонентами и другим возможным проблемам.
  3. Максимально эффективно задействовать системные ресурсы и обеспечить нужную производительность приложения.
  4. Сделать систему простой в развертывании и администрировании.

Чтобы решить эти задачи, мы в платформе 1С:Предприятие используем кластерную архитектуру.

К желаемому результату мы пришли не сразу.

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

image
Читать дальше →
Total votes 11: ↑10 and ↓1 +9
Comments 29

Протоколы семейства TCP/IP. Теория и практика

Level of difficulty Medium
Reading time 23 min
Views 89K
image

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

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

В ходе работы над статьёй я написал небольшое приложение, которое послужит отправной точкой для понимания компьютерных сетей и семейства протоколов TCP/IP. С приложением можно экспериментировать, получая дополнительные знания.

Приложение — простое и понятное и, надеюсь, упростит изучение материалов статьи. Ведь именно радость первой победы даёт мотивацию, достаточную для того, чтобы потратить гораздо больше времени на изучение темы.

В статье изложены наиболее важные с моей точки зрения понятия, которые должен знать любой программист, хоть как-то сталкивающийся с компьютерными сетями. Так что без теоретических сведений не обошлось.
Читать дальше →
Total votes 82: ↑82 and ↓0 +82
Comments 5

Добавили бота в свой Telegram канал? Будьте готовы с ним попрощаться

Level of difficulty Easy
Reading time 3 min
Views 36K

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

Читать далее
Total votes 73: ↑70 and ↓3 +67
Comments 68

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity