Рубрика «Анализ и проектирование систем» - 92

Сегодня у нас не совсем обычная статья. Как следует из заголовка, она посвящена проблемам непрерывной защиты веб-приложений и разбита на две части, отражающие два взгляда на проблему: с позиции разработчиков WAF (Андрей Петухов, SolidLab) и с точки зрения центра мониторинга и противодействия кибератакам, который использует WAF для оказания сервиса клиентам (@avpavlov, Solar JSOC).

Начнем мы с разработчиков, а через неделю дадим слово эксплуатантам WAF.

Проблема непрерывной защиты веб-приложений. Взгляд со стороны исследователей и эксплуатантов - 1

Читать полностью »

Как мы унифицируем аналитическую деятельность в CUSTIS - 1

Мы писали в блоге о технологиях в привычном айтишному миру понимании — о наших лучших практиках в разработке информационных систем. Сегодняшний пост посвящен технологиям другого толка — управленческим: мы поговорим об унификации аналитической деятельности в CUSTIS. Эта история о том, как изменить огромную и стабильную систему сложившихся с годами практик и направить ее навстречу проектам развития.

Читать полностью »

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

Объект учета и результат его классификации (существительные)

Проведем мысленный эксперимент. Представьте себе два хранилища моделей. В одном хранилище созданы классы для хранения моделей плавательных средств, в другом – классы для хранения моделей автомобилей. Допустим, что есть объект, который в одном хранилище описан как объект класса плавсредство, а во второй – как объект класса автомобиль. Допустим, что стоит задача объединения этих хранилищ в одно. Как вы это сделаете?
Читать полностью »

В большинстве проектов по внедрению Siebel, так или иначе, приходится сталкиваться с проблемами качества данных. В этой части Oracle предлагает интересное решение – Enterprise Data Quality с возможностью интегрирования в Siebel (что нас собственно и привлекло). В данном материале я вкратце расскажу о самом продукте, его архитектуре, а также покажу, как можно создать простой процесс повышения качества данных.

Коротко о продукте

EDQ ‒ продукт, позволяющий управлять качеством информации. Основой для анализа EDQ могут служить разные источники данных, такие как:

  • базы данных (Oracle, Postgres, DB2, MySql и т.д.),
  • текстовые файлы,
  • XML-файлы,
  • MS Office файлы,
  • системные файлы и прочее.

Читать полностью »

За 8 месяцев разработки, 3700 рабочих часов, силами 15 человек команда Artezio создала собственную файлообменную платформу SendFile. Сначала мы рассматривали ее как учебный проект, но потом она переросла этот статус. В этой статье я расскажу, как все начиналось и к чему мы пришли сейчас.

Как создать альтернативу Google Диск и Dropbox за 3700 часов - 1
Читать полностью »

— В армии научились совмещать пространство и время.
— Как?
— Очень просто! Прапорщик дает задание: «Сегодня будем копать от забора и до обеда»

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

В прошлой статье я дал определения типу и атрибуту. Напомню их:

  • Тип – это выделение кучки (подмножества) из кучи (множества) и наделение объектов этой кучки уникальным именем — существительным.
  • Атрибут разделяет кучу (множество) на кучки (подмножества) и наделяет объекты этих кучек разными прилагательными.

Это было определение типа и определение атрибута на основе анализа – мы делили кучу на части. Фактически, это было построение типа при помощи анализа. Теперь я покажу, как можно строить типы и атрибуты на основе синтеза.
Читать полностью »

Альтернативы блокчейну для ведения защищённых реестров - 1

Технология «блокчейн» прекрасна и перспективна. Всё в ней было бы совсем замечательно, если бы несколько досадных нюансов:

  1. Очень долго. Время добавления транзакции в цепочку биткоина, например, оценивается от минуты до получаса. В Ethereum добавляется быстрее, но в любом случае довести время до долей секунды невозможно. Нечего и думать о том, чтобы сделать добавление данных в блокчейн частью OLTP-транзакции.
  2. Майнинг — это очень ресурсоёмко. Он, собственно, и нужен для того, чтобы добавить в архитектуру вычислительную сложность.
  3. Очень дорого. Следствие ресурсоёмкости.
  4. Технология отвратительно масштабируется как вверх, так и вниз. Если нужно построить систему, которая будет регистрировать миллиарды записей ежедневно, блокчейн не годится. Также блокчейн будет стрельбой из пушки по воробьям, если его пытаться приспособить для надёжного логирования какой-нибудь мелкой ерунды.

Хотелось бы иметь технологию, которая бы одновременно и реестры позволяла вести непрошибаемо надёжным образом, и была бы как-то попроще и подешевле.
Читать полностью »

Зачем нужен Kubernetes и почему он больше, чем PaaS? - 1

В большой production пришёл не только Docker, но и Kubernetes. И если даже с контейнерами далеко не всегда всё достаточно просто, то уж «кормчий» и подавно остаётся за гранью правильного понимания среди многих системных администраторов, DevOps-инженеров, разработчиков. В этой небольшой статье предпринята попытка ответить на один из вечных вопросов (в контексте Kubernetes) с помощью наглядного объяснения идеи и особенностей данного проекта. Возможно, именно этого вам не хватало для того, чтобы начать плотное знакомство с Kubernetes или даже его эксплуатацию?

Соучредитель и архитектор крупного онлайн-сервиса Box (около 1400 сотрудников) Sam Ghods в своём прошлогоднем выступлении на KubeCon указал на типовую ошибку восприятия Kubernetes. Многие рассматривают этот продукт как очередной фреймворк для оркестровки контейнеров. Но если бы всё действительно было так, то зачем его разработчики неустанно напоминают про «корни Kubernetes API, уходящие в архитектуру*, создаваемую более 10 лет в рамках проекта Google Borg»?..
Читать полностью »

Мы сделали сайт spark-in.me весьма современным и прогрессивным образом и хотели бы поделиться с вами как, зачем и почему. Эта статья будет посвящена вопросу «зачем и почему»?

Остальные статьи цикла будут посвящены вопросам «как» и деталям практической имплементации.

Статьи цикла

  1. Spark-in.me. Часть 1 — Зачем и почему?
  2. Spark-in.me. Часть 2 — Архитектура приложения и структура БД
  3. Spark-in.me. Часть 3 — DIY поддержка и админство сайта
  4. Spark-in.me. Часть 4 — Базовое админство для обычных человеков
  5. Spark-in.me. Часть 5 — Переход на HTTPS
  6. Spark-in.me. Часть 6 — Исходный код и настройка бекенда
  7. Spark-in.me. Часть 7 — Исходный код и настройка фронтенда

Читать полностью »

image

https://trends.google.com/trends/explore?q=%2Fm%2F0_lcrx4

Выше приведён скриншот Google Trends, когда я искал по слову «kotlin». Внезапный всплеск — это когда Google объявила, что Kotlin становится главным языком в Android. Произошло это на конференции Google I/O несколько недель назад. На сегодняшний день вы либо уже использовали этот язык раньше, либо заинтересовались им, потому что все вокруг вдруг начали о нём говорить.

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js