Pull to refresh
7
0
Дмитрий @Skpd

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

Send message

Что, если… забыть про безопасность кластера k8s?

Reading time9 min
Views5.1K

Я думаю, многие слышали про громкий инцидент произошедший с Tesla в 2018 году, когда группа хакеров через консоль Kubernetes смогли получить доступ к аккаунту. После чего изрядно повеселились и настроили майнер в облачном сервисе Amazon Web Services. У многих людей сразу же возникает вопрос в голове “Как они это сделали?” и “Почему многоуважаемые ИБ данной компании не подумали о потенциальной дыре в безопасности?”. Как правило при разработке любого продукта бывают лишь две причины возникновения уязвимостей. Первая причина - человеческий фактор. Кто из нас не забывал что-либо в ходе кропотливой работы над проектом и кто не откладывал в бэклог решение “не самых срочных вопросов..?”. И, наконец, вторая причина - отсутствие необходимых компетенций в той или иной области.

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

Эргономичная раздельная клавиатура. Iris

Reading time9 min
Views28K


Компьютеры, железо, IT в целом это такая область, которая развивается просто невероятными темпами. Вот только клавиатуры развиваться не хотят.


Мой первый комп появился 20 лет назад, тогда у меня был огромный ЭЛТ монитор. Весил он примерно 800 тонн, при своих 15 дюймах. Если сейчас на такой посмотреть, то у вас вытекут глаза. Может быть кто-то помнит модемы из 2000 года? Это жутко медленный модем, который трещал подключаясь по телефонной линии. Сейчас у нас есть 4g даже в часах. Даже молчу про процессоры, память, оперативку. Там развитие сумасшедшее.


А что там с клавиатурами?

Читать дальше →
Total votes 32: ↑29 and ↓3+26
Comments123

Оператор в Kubernetes для управления кластерами БД. Владислав Клименко (Altinity, 2019)

Reading time22 min
Views8.4K


Доклад посвящен практическим вопросам разработки оператора в Kubernetes, проектированию его архитектуры и основных принципов функционирования.


В первой части доклада рассмотрим:


  • что такое оператор в Kubernetes и зачем он нужен;
  • как именно оператор упрощает управление сложными системами;
  • что оператор может, а что оператор не может.

Далее, перейдём к обсуждению внутреннего устройства оператора. Рассмотрим архитектуру и функционирование оператора по шагам. Подробно разберём:


  • взаимодействие между оператором и Kubernetes;
  • какие функции оператор берет на себя, а что делегирует в Kubernetes.

Рассмотрим управление шардами и репликами БД в Kubernetes.
Далее, обсудим вопросы хранения данных:


  • как работать с Persistent Storage с точки зрения оператора;
  • подводные камни использования Local Storage.

В заключительной части доклада рассмотрим практические примеры применения clickhouse-operator с Amazon или Google Cloud Service. Доклад строится на примере разработки и опыта эксплуатации оператора для ClickHouse.

Total votes 16: ↑15 and ↓1+14
Comments0

Балансировка нагрузки и масштабирование долгоживущих соединений в Kubernetes

Reading time9 min
Views17K

Эта статья, которая поможет разобраться в том, как устроена балансировка нагрузки в Kubernetes, что происходит при масштабировании долгоживущих соединений и почему стоит рассматривать балансировку на стороне клиента, если вы используете HTTP/2, gRPC, RSockets, AMQP или другие долгоживущие протоколы. 
Читать дальше →
Total votes 30: ↑30 and ↓0+30
Comments4

Типовые ошибки в приложениях, которые ведут к bloat в postgresql. Андрей Сальников

Reading time21 min
Views7.8K

Предлагаю ознакомиться с расшифровкой доклада начала 2016 года Андрея Сальникова "Типовые ошибки в приложениях, которые ведут к bloat в postgresql"


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


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

Ход конём по битам. Шахматный Bitboard

Reading time3 min
Views13K
Добрый день. Эту статью я написал специально для студентов курса «Алгоритмы для разработчиков» в OTUS и сегодня хочу поделиться ею со всеми читателями нашего блога.

Шахматный конь стоит на шахматной доске и задумчиво смотрит в шахматную даль.
Сколько разных ходов он может сделать?

image

Хвала изобретателю шахмат, на доске 64 клетки.
Хвала архитектору компьютеров — у типа ulong тоже 64 бита.
Это же надо было случиться такому совпадению!
Напрашивается гениальная идея — хранить всю доску в одном целом числе! Для этого решения существует даже специальный термин — Bitboard — битовая доска.

Так как же быстро найти количество ходов шахматного коня, используя эту идею?
Читать дальше →
Total votes 45: ↑43 and ↓2+41
Comments19

Три вида утечек памяти

Reading time7 min
Views12K
Здравствуйте, коллеги.

Наши долгие поиски неустаревающих бестселлеров по оптимизации кода пока дают лишь первые результаты, но мы готовы вас порадовать, что буквально только что закончен перевод легендарной книги Бена Уотсона "Writing High Performance .NET Code". В магазинах — ориентировочно в апреле, следите за рекламой.

А сегодня предлагаем вам почитать сугубо практическую статью о наиболее насущных видах утечек оперативной памяти, которую написал Нельсон Ильхейдж (Nelson Elhage) из компании Stripe.
Читать дальше →
Total votes 19: ↑17 and ↓2+15
Comments13

Как отправить электронное письмо с помощью Python: руководство для «чайников»

Reading time6 min
Views151K


В нашем блоге мы много пишем о создании email-рассылок и работе с электронной почтой. В современном мире люди получают множество писем, а у некоторых даже есть несколько почтовых ящиков. Все это усложняет процесс их администрирования, что вынуждает искать пути решения проблемы. Не так давно мы рассказывали о том, как инженер из США упорядочивал свои письма с помощью нейронной сети (1, 2), а сегодня речь пойдет об автоматизации отправки писем для разных почтовых ящиков.

Редактор издания Motherboard Майкл Берн (Michael Byrne) написал материал о том, как отправлять электронные письма для различных почтовых ящиков с помощью Python. Мы представляем вашему вниманию адаптированный перевод этой заметки.
Читать дальше →
Total votes 26: ↑16 and ↓10+6
Comments8

Разработка «браузерки» — физический форк

Reading time16 min
Views20K
Желание выйти на новые рынки с нашим проектом уже долгое время не дает нам покоя – и идеи в наличии, и потенциал неплохой, но, как говорится, все руки не доходили до нормальной реализации.

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

Браузерная игра Пернатск
Читать дальше →
Total votes 37: ↑36 and ↓1+35
Comments27

Создание архитектуры программы или как проектировать табуретку

Reading time25 min
Views681K
Взявшись за написание небольшого, но реального и растущего проекта, мы «на собственной шкуре» убедились, насколько важно то, чтобы программа не только хорошо работала, но и была хорошо организована. Не верьте, что продуманная архитектура нужна только большим проектам (просто для больших проектов «смертельность» отсутствия архитектуры очевидна). Сложность, как правило, растет гораздо быстрее размеров программы. И если не позаботиться об этом заранее, то довольно быстро наступает момент, когда ты перестаешь ее контролировать. Правильная архитектура экономит очень много сил, времени и денег. А нередко вообще определяет то, выживет ваш проект или нет. И даже если речь идет всего лишь о «построении табуретки» все равно вначале очень полезно ее спроектировать.

К моему удивлению оказалось, что на вроде бы актуальный вопрос: «Как построить хорошую/красивую архитектуру ПО?» — не так легко найти ответ. Не смотря на то, что есть много книг и статей, посвященных и шаблонам проектирования и принципам проектирования, например, принципам SOLID (кратко описаны тут, подробно и с примерами можно посмотреть тут, тут и тут) и тому, как правильно оформлять код, все равно оставалось чувство, что чего-то важного не хватает. Это было похоже на то, как если бы вам дали множество замечательных и полезных инструментов, но забыли главное — объяснить, а как же «проектировать табуретку».

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

Данная статья является попыткой ответить на эти вопросы хотя бы в первом приближении.
Читать дальше →
Total votes 88: ↑85 and ↓3+82
Comments45

CNTK — нейросетевой инструментарий от Microsoft Research

Reading time5 min
Views26K
2015 год был очень богат на события, связанные с нейросетевыми технологиями и машинным обучением. Особенно заметный прогресс показали сверточные и рекуррентные сети, подходящие для решения задач в области компьютерного зрения и распознавания речи. Многие крупные компании опубликовали на Github свои разработки, Google выпустил в свет TensorFlow, Baidu — warp-ctc. Группа ученых из Microsoft Research тоже решила присоединиться к этой инициативе, выпустив Computational Network Toolkit, набор инструментов для проектирования и тренировки сетей различного типа, которые можно использовать для распознавания образов, понимания речи, анализа текстов и многого другого. Интригующим при этом является то, что эта сеть победила в конкурсе ImageNet LSVR 2015 и является самой быстрой среди существующих конкурентов.


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

Советы о том, как писать на С в 2016 году

Reading time20 min
Views90K

Если бы язык С был оружием

От автора: Наброски для этой статьи появились еще в начале 2015 года, правда, до публикации материалов дело так и не дошло. Наконец, решив, что в ящике моего письменного стола от вышеупомянутого «черновика» не будет никакой пользы, представляю его вашему вниманию в исходном виде. Единственное, что изменилось в тексте – год, с 2015 на 2016.

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

Итак, статья ...


Первое правило программирования на С – не используйте его, если можно обойтись другими инструментами.

Когда найти альтернативный метод не удается, самое время вспомнить о современных заповедях программиста.
Читать дальше →
Total votes 92: ↑84 and ↓8+76
Comments80

Exasol: опыт использования в Badoo

Reading time10 min
Views17K
Exasol — это современная высокопроизводительная проприетарная СУБД для аналитики. Ее прямые конкуренты: HP Vertica, Teradata, Redshift, BigQuery. Они широко освещены в Рунете и на Хабре, в то время как про Exasol на русском языке нет почти ни слова. Нам бы хотелось исправить эту ситуацию и поделиться опытом практического использования СУБД в компании Badoo.

Exasol базируется на трех основных концепциях:

1. Массивно-параллельная архитектура (англ. massive parallel processing, MPP)


SQL-запросы выполняются параллельно на всех нодах, максимально используя все доступные ресурсы: ядра процессоров, память, диски, сеть. Понятие «мастер ноды» отсутствует — все серверы в системе равнозначны.

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

2. Колоночное хранение (англ. columnar store)


Exasol хранит данные в колоночной форме, а не в форме отдельных рядов, как в классических СУБД. Каждая колонка хранится отдельно, разделяется на большие блоки, сортирируется, сжимается и равномерно распределяется по всем нодам.
Читать дальше →
Total votes 33: ↑30 and ↓3+27
Comments24

19 советов по повседневной работе с Git

Reading time14 min
Views285K


Если вы регулярно используете Git, то вам могут быть полезны практические советы из этой статьи. Если вы в этом пока новичок, то для начала вам лучше ознакомиться с Git Cheat Sheet. Скажем так, данная статья предназначена для тех, у кого есть опыт использования Git от трёх месяцев. Осторожно: траффик, большие картинки!

Содержание:
  1. Параметры для удобного просмотра лога
  2. Вывод актуальных изменений в файл
  3. Просмотр изменений в определённых строках файла
  4. Просмотр ещё не влитых в родительскую ветку изменений
  5. Извлечение файла из другой ветки
  6. Пара слов о ребейзе
  7. Сохранение структуры ветки после локального мержа
  8. Исправление последнего коммита вместо создания нового
  9. Три состояния в Git и переключение между ними
  10. Мягкая отмена коммитов
  11. Просмотр диффов для всего проекта (а не по одному файлу за раз) с помощью сторонних инструментов
  12. Игнорирование пробелов
  13. Добавление определённых изменений из файла
  14. Поиск и удаление старых веток
  15. Откладывание изменений определённых файлов
  16. Хорошие примечания к коммиту
  17. Автодополнения команд Git
  18. Создание алиасов для часто используемых команд
  19. Быстрый поиск плохого коммита

Читать дальше →
Total votes 152: ↑149 and ↓3+146
Comments62

SSL-сертификаты: всем, каждому, и пусть никто не уйдёт обиженным

Reading time8 min
Views96K
Как ранее сообщалось на GeekTimes, EFF при поддержке Mozilla, Cisco, Akamai, IdenTrust и исследователей из Мичиганского университета (University of Michigan) создали новый некоммерческий центр сертификации (Certificate Authority) Let's Encrypt [1]. Целью проекта является ускорение перехода всемирной паутины от HTTP к HTTPS.
Подробности, часть из которых уже была описана на GeekTimes
Total votes 110: ↑110 and ↓0+110
Comments81

Заказал редкий телефон в иностранном интернет-магазине? Получи повестку в суд

Reading time1 min
Views252K
Как пишет Коммерсант, на жителя Ульяновской области, заказавшего телефон Motorola Moto G в немецком интернет-магазине, завели административное дело за незаконный ввоз телефона, содержащего средства шифрования.

image

В мае этого года Евгений Яруткин, живущий в Ульяновской области, заказал на немецком сайте смартфон. В России данная модель не продается, и это самый важный нюанс в этой истории.
Читать дальше →
Total votes 192: ↑175 and ↓17+158
Comments162

Новый mSATA-SSD от Samsung на 1ТБ весом в 8,5 граммов появится в продаже в этом месяце

Reading time1 min
Views133K


В общем-то, эпоха крупных и тяжелых винчестеров еще не закончилась, хотя альтернативы, конечно, есть. К примеру, корпорация Samsung представила твердотельный накопитель с интерфейсом mSATA объемом в 1ТБ. При этом вес устройства — всего 8,5 граммов.

Читать дальше →
Total votes 81: ↑76 and ↓5+71
Comments62

Вышла программа f.lux 3 с режимом кино и температурой 2700 K

Reading time1 min
Views83K
Автор программы f.lux выпустил новую версию f.lux 3 (бета). Это очень полезная программа для тех, кто часто работает за монитором при искусственном освещении, то есть вечером и ночью.



Программа изменяет цветовой профиль монитора, в зависимости от времени суток. Ночью устанавливаеются тёплые цветовые тона (2700 K), которые соответствуют искусственному освещению в квартире, днём — холодные (6500 K), соответствующие дневному свету.
Читать дальше →
Total votes 50: ↑43 and ↓7+36
Comments52

Ingress. Мир не таков, каким кажется

Reading time1 min
Views271K


Знакомьтесь, Ingress — новая игра от Google. Место действия — альтернативная реальность. Недавний проект Niantic, кстати, был вирусной рекламой сего действа.

Вам предстоит занять одну из сторон — сражаться за власть («Просвещенные»), или за повстанцев («Сопротивление»).

Установленное на андроид-девайс приложение будет проводить вас по местам скопления «Экзотической материи» (реальные географические координаты, которые надо будет посетить).


Читать дальше →
Total votes 89: ↑79 and ↓10+69
Comments151

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Registered
Activity