Pull to refresh
70
0
Pavel Odintsov @pavelodintsov

Software developer in love with network security

Send message

Отчетность в 1С: Система Компоновки Данных (СКД), идея и архитектура

Reading time 9 min
Views 96K
Одна из самых важных областей бизнес-софта – это отчетность. От того, насколько легко настроить под меняющиеся потребности бизнеса (и законодательства) существующий отчет или сделать новый, может зависеть (причем не в переносном смысле!) судьба бизнеса, будь то отчет для налоговой инспекции или диаграмма зависимости спроса на товары от сезона и других факторов. Мощная и гибкая система отчетности, позволяющая легко извлечь из системы нужные данные, представить их в доступном для понимания виде, позволяющая конечному пользователю перенастроить стандартный отчет так, чтобы увидеть данные в новом свете – это идеал, к которому должна стремиться каждая бизнес-система.

В платформе «1С:Предприятие» за построение отчётов отвечает механизм под названием «Система компоновки данных» (сокращенно СКД). В этой статье мы постараемся дать краткое описание идеи и архитектуры механизма СКД и его возможностей.

image
Читать дальше →
Total votes 24: ↑21 and ↓3 +18
Comments 75

Измерение интенсивности входящего потока событий в модели распада

Reading time 12 min
Views 6.5K
В классе поточных алгоритмов имеется подкласс, решающий задачу поиска тяжелых элементов (heavy hitters). В общем виде эта задача формулируется как «выявление во входящем потоке наиболее часто повторяющихся событий и измерение их интенсивности». В данной публикации сотрудника компании Qrator Labs Артема janatem Шворина предлагается эффективный алгоритм для решения этой задачи.

Введение


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

В этой публикации мы хотим показать читателю ещё один подход к измерению интенсивности потока событий при наличии множества разных (не идентичных) потоков событий. Пусть задано множество типов событий. Требуется оценивать, насколько часто происходит событие данного типа, и обращать внимание на случаи, когда событие одного типа повторяется «слишком часто».
Читать дальше →
Total votes 28: ↑26 and ↓2 +24
Comments 3

Конечное поле GF(256) и немного магии

Reading time 6 min
Views 28K

Введение


Будучи студентом я посещаю занятия по криптографии. И разумеется этот курс не мог обойти вниманием стандарт AES.

При реализации данного алгоритма встает вопрос о реализации полей GF(2^8), что будет освещено в данной статье. Будут рассмотрены: битовая магия для умножения элементов поля, шаблоны для генерации таблиц замен на этапе компиляции.

Вторая часть предполагает, что читатель имеет доступ к компилятору с поддержкой C++14. Первая часть будет написана в стиле Си.
Читать дальше →
Total votes 20: ↑20 and ↓0 +20
Comments 10

Захват пакетов в Linux на скорости десятки миллионов пакетов в секунду без использования сторонних библиотек

Reading time 8 min
Views 85K
Моя статья расскажет Вам как принять 10 миллионов пакетов в секунду без использования таких библиотек как Netmap, PF_RING, DPDK и прочие. Делать мы это будем силами обычного Линукс ядра версии 3.16 и некоторого количества кода на С и С++.



Сначала я хотел бы поделиться парой слов о том, как работает pcap — общеизвестный способ захвата пакетов. Он используется в таких популярных утилитах как iftop, tcpdump, arpwatch. Кроме этого, он отличается очень высокой нагрузкой на процессор.

Итак, Вы открыли им интерфейс и ждете пакетов от него используя обычный подход — bind/recv. Ядро в свою очередь получает данные из сетевой карты и сохраняет в пространстве ядра, после этого оно обнаруживает, что пользователь хочет получить его в юзер спейсе и передает через аргумент команды recv, адрес буфера куда эти данные положить. Ядро покорно копирует данные (уже второй раз!). Выходит довольно сложно, но это не все проблемы pcap.

Кроме этого, вспомним, что recv — это системный вызов и вызываем мы его на каждый пакет приходящий на интерфейс, системные вызовы обычно очень быстры, но скорости современных 10GE интерфейсов (до 14.6 миллионов вызовов секунду) приводят к тому, что даже легкий вызов становится очень затратным для системы исключительно по причине частоты вызовов.

Также стоит отметить, что у нас на сервере обычно более 2х логических ядер. И данные могут прилететь на любое их них! А приложение, которое принимает данные силами pcap использует одно ядро. Вот тут у нас включаются блокировки на стороне ядра и кардинально замедляют процесс захвата — теперь мы занимаемся не только копированием памяти/обработкой пакетов, а ждем освобождения блокировок, занятых другими ядрами. Поверьте, на блокировки может зачастую уйти до 90% процессорных ресурсов всего сервера.

Хороший списочек проблем? Итак, мы их все геройски попробуем решить!
Читать дальше →
Total votes 113: ↑112 and ↓1 +111
Comments 77

Ethernet + PCIe + FPGA = LOVE

Reading time 12 min
Views 68K
image

Доступ по Ethernet невозможен без сетевых карточек (NIC). На небольших скоростях (до 1G) NIC встраивают в материнки, а на больших (10G/40G) NIC размещается на отдельной PCIe плате. Основным ядром такой платы является интегральный чип (ASIC), который занимается приемом/отправкой пакетов на самом низком уровне. Для большинства задач возможностей этого чипа хватит с лихвой.

Что делать, если возможностей сетевой карточки не хватает? Либо задача требует максимально близкого доступа к низкому уровню? Тогда на сцену выходят платы с перепрограммируемой логикой — ПЛИС (FPGA).

Какие задачи на них решают, что размещают, а так же самых интересных представителей вы увидите под катом!

Осторожно, будут картинки!
Читать дальше →
Total votes 31: ↑31 and ↓0 +31
Comments 56

Отдам домен и сайт pastebin.ru

Reading time 1 min
Views 23K
Приветствую!

Настал момент, когда я понял, что мне нужно отдать сайт pastebin.ru в руки молодых и горячих людей, которые могут сделать из него конфетку. Критериев выбора нет, но было бы здорово, если вы напишите, почему ВЫ.

P.S.: Там надо сделать личный кабинет, защиту от спама, периодически удалять гадость, а еще год назад его месяц ддосили, что было очень неприятно.
Total votes 58: ↑38 and ↓20 +18
Comments 21

Как выглядит DDoS-атака

Reading time 1 min
Views 116K
Почти каждый представляет себе, что такое DDoS-атака. Но лучше один раз увидеть, чем сто раз услышать. Сайт VideoLAN на днях подвергся довольно необычной DDoS-атаке. Хотя интенсивность запросов была не очень велика — от 400 до 1600 запросов в секунду, ботнету удалось создать очень большую нагрузку на сервер, так как компьютеры-зомби не просто заходили на одну из страниц сайта, а скачивали дистрибутив VLC-плеера весом в 22 мегабайта. Пиковая нагрузка на серверы доходила до 292 гигабит в секунду. С помощью logstalgia — инструмента, который превращает логи сервера в наглядную анимацию — администраторы сайта сделали и опубликовали на Youtube визуализацию, благодаря которой можно увидеть, как выглядит DDoS-атака:



Total votes 90: ↑83 and ↓7 +76
Comments 38

Системы хранения данных: как выбирать?!

Reading time 8 min
Views 50K
imageПроект любой сложности, как ни крути, сталкивается с задачей хранения данных. Таким хранилищем могут быть разные системы: Block storage, File storage, Object storage и Key-value storage. В любом вменяемом проекте перед покупкой того или иного storage-решения проводятся тесты для проверки определённых параметров в определённых условиях. Вспомнив, сколько хороших, сделанных правильно растущими руками проектов прокололись на том, что забыли про масштабируемость, мы решили разобраться:

  • Какие характеристики Block storage и File storage нужно учитывать, если хотите, чтобы при росте проекта система хранения выросла вслед за ним
  • Почему отказоустойчивость на software уровне надежнее и дешевле, чем на hardware уровне
  • Как правильно проводить тестирование, чтобы сравнивать «яблоки с яблоками»
  • Как получить на порядок больше/меньше IOPS, поменяв всего один параметр

В процессе тестирования мы применяли RAID–системы и распределенную систему хранения данных Parallels Cloud Storage (PStorage). PStorage входит в продукт Parallels Cloud Server.
Читать дальше →
Total votes 28: ↑25 and ↓3 +22
Comments 33

OpenVZ + venet + vlan/адреса из разных сетей

Reading time 5 min
Views 11K
Этот пост посвящён назначению контейнерам OpenVZ адресов из разных сетей на интерфейсе venet. Я решил написать этот пост потому, что видел как эту задачу решали другие специалисты неказистыми способами или же вовсе отказывались от использования venet.
Читать дальше →
Total votes 17: ↑17 and ↓0 +17
Comments 15

Kdump — диагностика и анализ причин сбоев ядра

Reading time 8 min
Views 49K
Kdump

Хотя в современных Linux-системах ядро отличается достаточно высоким уровнем стабильности, вероятность серьезных системных ошибок, тем не менее, имеется всегда. Когда происходит неисправимая ошибка, имеет место состояние, называемое паникой ядра (kernel panic): стандартный обработчик выводит на экран информацию, которая должна помочь в устранении неисправности, и входит в бесконечный цикл.
Читать дальше →
Total votes 43: ↑39 and ↓4 +35
Comments 21

Автоматическое тестирование Parallels Cloud Server

Reading time 5 min
Views 6.6K
Я хочу рассказать как тестируется один из продуктов компании Parallels Inc., в которой я работаю,
— Parallels Cloud Server. Думаю некоторым хабрачитателям этот продукт уже знаком по статьям Parallels рассекретила Cloud Server, FastVPS: Как мы меняли платформы виртуализации и Собери сам: как мы сделали хранилище Amazon-style для небольших хостеров. Если нет, то рекомендую статьи выше к прочтению.

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

Если у меня получилось вас заинтересовать — добро пожаловать под кат.
Читать дальше →
Total votes 10: ↑8 and ↓2 +6
Comments 1

Вы и ваша работа *

Reading time 40 min
Views 814K
Длинный материал. Время чтения – около 40 минут.

image

Доктор Ричард Хэмминг, профессор морской школы Монтерея в штате Калифорния и отставной учёный Bell Labs, прочёл 7 марта 1986 года очень интересную и стимулирующую лекцию «Вы и ваши исследования» переполненной аудитории примерно из 200 сотрудников и гостей Bellcore на семинаре в серии коллоквиумов в Bell Communications Research. Эта лекция описывает наблюдения Хэмминга в части вопроса «Почему так мало учёных делают значительный вклад в науку и так многие оказываются в долгосрочной перспективе забыты?». В течение своей более чем сорокалетней карьеры, тридцать лет которой прошли в Bell Laboratories, он сделал ряд прямых наблюдений, задавал учёным очень острые вопросы о том, что, как, откуда, почему они делали и что они делали, изучал жизни великих учёных и великие достижения, и вёл интроспекцию и изучал теории креативности. Эта лекция о том, что он узнал о свойствах отдельных учёных, их способностях, чертах, привычках работы, мироощущении и философии.
Читать дальше →
Total votes 239: ↑229 and ↓10 +219
Comments 127

Облачная платформа Яндекса. Cocaine

Reading time 13 min
Views 105K
Некоторое время назад мы довольно подробно начали рассказывать об одной из базовых облачных технологий Яндекса — Elliptics. Сегодня настала очередь поговорить о другой — той самой, под которой работают «эльфы» и которая делает мечту о своем облаке чуть ближе к реальности. Речь пойдет о Cocaine.

Cocaine (Configurable Omnipotent Custom Applications Integrated Network Engine) — это PaaS-система (Platform-as-a-Service) с открытым исходным кодом, являющаяся по сути app engine и позволяющая создавать собственные облачные хостинги приложений — такие, как Google AppEngine, OpenShift, CloudFoundry или Heroku.



Всем известно, что облака могут решить все инфраструктурные проблемы, превратить издержки в прибыль и насытить вашу жизнь бесконечной радостью и счастьем на веки веков. Единственным препятствием на пути к этим целям являются, собственно, облака. IaaS, PaaS, SaaS? Whatever-as-a-Service? Какой именно загадочный набор букв нужно выбрать, чтобы всё наконец стало хорошо?

Мы потратили немало времени, изучая эти вопросы, отбирая лучшие, на наш взгляд, идеи и концепции, чтобы построить такую облачную платформу, которую хотелось бы немедленно установить, настроить и успешно использовать.
Как всё работает, и почему именно так
Total votes 146: ↑136 and ↓10 +126
Comments 92

Контейнеры — это будущее облаков

Reading time 7 min
Views 41K
Ола, Хабрасообщество!

Введение


Данный доклад изначально был подготовлен для выступления на конференции компании FastVPS ROCK IT 2013, прошедшей 24-25 августа 2013 года в Городе Tallinn, Estonia.

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

Публикация имеет целью провести краткий обзор имеющихся на рынке open source средств для развертывания нескольких виртуальных окружений на базе физического сервера с Linux на борту, а также рассказать о преимуществах использования контейнеров для создания облаков :)

Open source решения на базе Linux для создания виртуальных окружений


Встречайте героев сегодняшнего рассказа!



Читать дальше →
Total votes 52: ↑48 and ↓4 +44
Comments 125

poiskvps.ru — подбор виртуальных серверов по параметрам

Reading time 4 min
Views 87K
Этот пост появился благодаря программе поддержки стартапов, в рамках которой блог дали моему проекту "Поиск VPS" — сервису подбора виртуальных серверов по параметрам. О нём сегодня и хотел бы рассказать.


image
Читать дальше →
Total votes 71: ↑64 and ↓7 +57
Comments 84

Частный космос теперь и в России

Reading time 6 min
Views 54K
Привет, всем. Это Zelenyikot, хочу рассказать о новости, которая, много значит для меня, и, уверен, привлечет внимание многих хабровчан.

На Хабре с интересом следят за деятельностью частных космических компаний: SpaceX, Virgin Galactic и других. Прогресс не стоит на месте, и вот, частная космонавтика добралась и до России. Представляю отечественного первенца, который полон решимости сделать прибыльным освоение космоса: «Даурия Аэроспейс».

image

Хабру нравятся публикации о космосе, но традиционно отношение к ним как к «котикам», т.е. к тому, что приятно глазу, радует душу, но не имеет практического применения в жизни. Теперь такое время уходит в прошлое, и у «Даурии» есть предложения, которые могут быть интересны не только желающим сделать карьеру в космической отрасли, но и свободным разработчикам. Близится пора, когда космос сможет стать для Хабра не только интересным, но и прибыльным.
Читать дальше →
Total votes 251: ↑239 and ↓12 +227
Comments 62

FastVPS: Как мы меняли платформы виртуализации

Reading time 8 min
Views 28K
Павел Одинцов, технический директор компании FastVPS Eesti OU

Мы занимаемся услугами по аренде виртуальных (VPS) и выделенных серверов уже почти 7 лет и поддерживаем сейчас более 170 тысяч сайтов наших клиентов. За это время мы успели пару раз сменить платформу виртуализации, попробовав и Xen, и OpenVZ, и Parallels Cloud Server, и в итоге остановились на PCS. Зачем мы меняли платформы, по каким параметрам их сравнивали, что нас в них радовало, а чем, прямо скажем, мы были недовольны – под катом.
image
Читать дальше →
Total votes 56: ↑48 and ↓8 +40
Comments 90

Взлет с карьерного плато (видео)

Reading time 1 min
Views 1.4K
В нашем предыдущем видео мы затронули проблему «Карьерного плато»: что происходит с карьерой специалиста, когда он упирается в потолок по своей текущей карьерной лестнице.

Продолжая эту тему, предлагаем вам некоторые рассуждения в ключе «Что делать дальше?»



Очередные 18 минут, в рамках которых мы поговорим про:
  • Накопление экспертизы
  • Выход с плато
  • Простой способ взлета
  • Тренерство и консалтинг


А еще там есть прикольный самолетик :)
Total votes 80: ↑61 and ↓19 +42
Comments 47

Information

Rating
Does not participate
Location
London, England - London, Великобритания
Registered
Activity