Search
Write a publication
Pull to refresh
22
0
Aleks Lozovyuk @aleks_raiden

Криптовалюты, финансы, распределенные системы

Send message

Автоматизация подписи кода в современных условиях

Reading time4 min
Views2.2K


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

В старые времена для подписи билдов использовалась подписи GPG, а секретные ключи хранились где-нибудь на флэшке. Потом для приложений Windows появились система Authenticode.

Сейчас для опенсорса и проприетарных ОС постепенно внедряются новые методы автоматизации подписи кода.
Читать дальше →

Подписываем образы контейнеров с помощью cosign, garantir и skopeo

Reading time6 min
Views4.4K

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

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

Читать далее

Доверенная работа с Notary

Reading time5 min
Views879

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

Проект Notary, спонсируемый Docker, обеспечивает высокий уровень доверия к цифровому контенту с помощью криптографических подписей. Он гарантирует, что контент не изменен без одобрения автора и что его происхождение подтверждено.

Notary позволяет системам, таким как Docker Enterprise Edition (EE) с Docker Content Trust, устанавливать политику использования только подписанного контента при развертывании. Это делает Notary важным элементом безопасной цепочки поставок Docker, интегрируя безопасность на всех этапах работы.

Давайте посмотрим подробнее, как работает Notary и как его можно использовать на практике.

Читать далее

Kafka без дисков: плюсы и минусы KIP‑1150 (Diskless Topics)

Level of difficultyMedium
Reading time9 min
Views2K

TL;DR: KIP‑1150 (Diskless Topics) предлагает Kafka писать сообщения сразу в облачное хранилище (S3 и аналоги), минуя диски брокеров. Это сильно экономит деньги и упрощает масштабирование в облаке, но увеличивает задержки и делает Kafka зависимой от облачных сервисов. Отлично для дешёвых, «толстых» потоков логов, но плохо подходит для real‑time систем с миллисекундными требованиями.

Читать далее

Infrastructure from Code: следующий этап развития IaC на примере Serverless

Reading time11 min
Views3.8K

Всем знакома история, когда менеджер спрашивает: сколько времени нужно, чтобы реализовать ту или иную фичу? Менеджеры или заказчики смотрят на это просто: разработка пишет код, эксплуатация деплоит его и следит, чтобы всё надёжно и хорошо работало. Но в жизни всё оказывается гораздо сложнее, при этом разработка и эксплуатация не стоят на месте и развиваются в инструментарии и подходах.

Меня зовут Виктор Кузённый, и за 15 лет в IT я работал Java‑разработчиком на гособоронзаказ, делал высоконагруженные бэкенды в Кинопоиске, а затем подружился с Serverless в Yandex Cloud, и этот опыт позволил мне познакомиться с разными инструментами разработки, языками программирования, а также инструментами деплоя и управления инфраструктурой.

В статье разберёмся детальнее, что такое IfC, в чём его преимущества и недостатки, а также чем он отличается от IaС и как его дополняет.

Читать далее

Оптимизация конкурентных приложений в Go

Level of difficultyMedium
Reading time15 min
Views9.4K

Конкурентность — одно из ключевых преимуществ Go, но на практике она нередко превращается в источник боли: гонки, дедлоки, утечки горутин, избыточная сложность. Всё дело в том, что встроенные инструменты Go действительно мощны — но требуют аккуратности, понимания и здравого подхода.

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

Читать далее

Golang: когда make, когда new

Level of difficultyEasy
Reading time8 min
Views8.7K

Привет, Хабр!

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

Читать далее

Микросервисы и данные: Как Saga-паттерн спасает от хаоса транзакций

Level of difficultyMedium
Reading time7 min
Views10K

Переход на микросервисы – это часто как переезд из тесной, но понятной коммуналки (монолита) в огромный город с кучей отдельных квартир. Свободы больше, масштабироваться проще, команды независимы – красота! Но тут же вылезает проблема, о которую разбиваются многие корабли: как поддерживать порядок и целостность данных, когда они размазаны по десяткам этих "квартир"-сервисов со своими собственными базами данных?

Старый добрый ACID, который спасал нас в монолитах с одной большой базой, здесь уже не помощник. Пытаться натянуть на микросервисы классические распределенные транзакции с двухфазным коммитом (2PC) – это почти всегда путь к страданиям. Представьте: один сервис захватывает блокировку, ждет подтверждения от другого, тот ждет третьего... Чуть что не так – вся цепочка висит, пользователи ждут, система тормозит, доступность падает. Звучит знакомо? Именно поэтому умные люди придумали альтернативу – паттерн, известный как Saga.

Читать далее

Минус Lua, плюс перформанс: как толстый клиент на Go сделал работу с Tarantool эффективнее

Level of difficultyMedium
Reading time10 min
Views4K

Tarantool Proxy — «умный посредник», который делает работу с кластером Tarantool надежнее, быстрее и проще, беря на себя рутинные задачи вроде балансировки и безопасности. Но изначально Tarantool Proxy был написан на Lua, из-за чего для получения всех профитов от работы с ним нужна была специфическая экспертиза и готовность мириться с некоторыми сопутствующими издержками, что подходило не всем. Поэтому мы решили оптимизировать работу с Tarantool и использовали для этого толстый клиент на Go.

Меня зовут Максим Коновалов, я архитектор Tarantool в VK Tech. В этой статье я расскажу, зачем и как мы уходили от Lua и что получили в итоге.

Подробнее

Что не так с MCP (Model Context Protocol)?

Level of difficultyEasy
Reading time13 min
Views2.6K

Анализ уязвимости и ограничения Model Context Protocol для подключения инструментов к ИИ-ассистентам.

Узнаете, как оценить риски MCP-интеграций в своих проектах и минимизировать угрозы безопасности

Читать далее

Насколько хорошо люди прогнозируют будущее технологий? Посмотрим на историю «Цикла Хайпа»

Level of difficultyEasy
Reading time13 min
Views2K

С 1995 года аналитики Gartner выпускают ежегодный доклад «Цикл Хайпа», который показывает состояние разных многообещающих технологий вроде больших языковых моделей, беспилотных автомобилей, солнечных панелей и так далее.
 
Каждый отчет строится вокруг S-образной кривой, где показано, в какой точке находится та или иная технология: пребывает на пике ажиотажа, разочаровывает или внедряется. Ожидается, что разработки, попавшие в «Цикл Хайпа», сильно повлияют на бизнес и общество. Составители кривой Gartner не сами оценивают технологии, а опираются на ожидания инвесторов, бизнеса и общества, ну, и шумиху вокруг разработок. В общем, чтобы понять, насколько хорошо люди прогнозируют будущее, можно покопаться в старых графиках Gartner.

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

Читать далее

Apache Zookeeper: гид для начинающих

Level of difficultyEasy
Reading time6 min
Views5.7K

Разбираемся, что это за инструмент, какие у него есть плюсы, минусы и аналоги.

Apache ZooKeeper — это сервис, который помогает разным частям распределенной системы (серверам, приложениям, процессам) работать согласованно.

Читать далее

Эволюция хранилища ВКонтакте: от первой реализации до наших дней

Level of difficultyMedium
Reading time9 min
Views3.4K

Привет, Хабр! Последние несколько лет я занимаюсь разработкой баз данных ВКонтакте. Аудитория такой крупной соцсети ежедневно генерирует огромные массивы информации. 

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

Читать далее

Как математик Джим Саймонс создал самый черный ящик индустрии по управлению деньгами

Reading time12 min
Views12K

Математик Джим Саймонс - создал один из самых успешных хедж-фондов в истории. Financial Times назвала Джима Саймонса «самым умным из миллиардеров». По версии The Economist, он считается «самым успешным инвестором всех времён». Попробуем собрать информацию из разных источников и разобраться, в чем секрет его успеха.

Саймонс и команда

Предки Джима Саймонса переселились в США из Российской империи в конце 19 века. Сам он родился в 1938 году и с детства увлекался математикой. Учился в Массачусетском технологическом (MIT), защитил докторскую в Беркли, преподавал в Гарварде. C середины 1960-х Саймонс занимался дешифровкой секретных кодов в Институте оборонного анализа США (IDA), откуда был уволен за критику вьетнамской военной кампании. После чего в 1968 году на 10 лет возглавил математический факультет Stony Brook University.

Читать далее

Как Discord индексирует триллионы сообщений

Level of difficultyMedium
Reading time12 min
Views1.6K

В 2017 году мы рассказывали о том, как спроектировали нашу систему поиска сообщений так, чтобы она могла индексировать миллиарды сообщений. Благодаря этому наша поисковая инфраструктура стала высокопроизводительной, экономной, масштабируемой и простой в использовании. Мы решили выбрать Elasticsearch, в котором сообщения Discord шардились по индексам и использовалось логическое пространство имён для сообщений Elasticsearch в двух кластерах Elasticsearch. Сообщения шардились или по серверу Discord (который ниже будем называть гильдией) или по личным сообщениям (DM). Это позволило нам хранить все сообщения гильдии рядом для обеспечения высокой скорости запросов и работать с маленькими, более удобными кластерами. Так как поиском пользуются не все, сообщения индексировались лениво, и мы создали очередь сообщений, позволявшую воркерам получать блоки сообщений для индексирования, чтобы воспользоваться возможностями массового индексирования (bulk-indexing) Elasticsearch.

Но с ростом объёмов Discord наша поисковая инфраструктура начала трещать по швам…‍

Читать далее

Vouch Proxy для OAuth2 при авторизации пользователей в нагруженных системах

Level of difficultyMedium
Reading time8 min
Views950

Vouch Proxy (VP) представляет собой мощный инструмент для обеспечения безопасности и удобства использования веб-приложений, особенно в условиях высокой нагрузки. VP позволяет использовать различные Identity Provider (IdP) для аутентификации пользователей и предоставления им доступа к защищенным ресурсам. В этой статье мы рассмотрим, как Vouch Proxy может быть использован для реализации OAuth2 в нагруженных системах.

Читать далее

RAG-технология в действии: как создать интеллектуальную систему поиска по нормативным документам

Level of difficultyMedium
Reading time12 min
Views12K

В этой статье рассмотрим пример практической реализации RAG (Retrieval-Augmented Generation) на Python для ответов на вопросы пользователей с опорой на нормативную базу технических стандартов. В моём случае это строительные документы: СНиПы, СП, ГОСТы и другие. Готовое решение можно протестировать в строительном Telegram-боте: https://t.me/Pdflyx_bot - данний бот генерирует ответ на основании базы знаний, приводит цитаты и указывает страницы документов, откуда была взята информация.

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

Читать далее

От торговых дневников до медитаций: актуальная ли сегодня книга бихевиориста Бретта Стинбарджера «Самоучитель трейдера»?

Level of difficultyEasy
Reading time9 min
Views1.5K

Существует огромный пласт литературы, призванный помочь начинающим инвесторам разобраться в себе и фондовом рынке. В каких-то книгах акцент делается на экономическую составляющую, анализ историй успеха и торговые стратегии – сюда можно отнести «Принципы» Рэя Далио, «Разумного инвестора» Бенджамина Грэма, биографии и автобиографии Уоррена Баффетта и т.д.

В других же работах в центре внимания оказываются закономерности психики, помогающие или мешающие торговать на бирже. Как правило, эти особенности являются предметом интереса поведенческой экономики – одной из ключевых дисциплин, разбираться в которой необходимо каждому, кто хочет преуспеть на фондовом рынке. Десятилетия научных изысканий создали базис для публицистической литературы, где трейдерам даются практические советы как «разогнать» или, наоборот, обуздать собственный мозг, чтобы сорвать банк. «Под капотом» таких трудов – выкладки из теории игр, соцопросы и эксперименты с функциональной МРТ, выявляющие зоны коры, ответственные за экономические решения. Ярчайший пример – абсолютный бестселлер «Думай медленно… решай быстро» такого титана, как Даниэль Канеман. Также многие десятилетиями открывают для себя что-то новое в работах такого гуру, как Нассим Талеб. А кто-то-то – штудирует трактат «Больше, чем вы знаете» эксперта в сфере поведенческих финансов Майкла Мобуссина.

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

Читать далее

Разыскивается живым или мёртвым: легендарная история Себастьяна Рамиреса

Level of difficultyEasy
Reading time10 min
Views9.2K

Себастьян Рамирес. Легенда мира Python-разработки, человек с моржовыми усами, единоличный создатель фреймворка FastAPI и герцог open-source разработки. Он работал на ферме, отчислился из католической школы, заболел раком, женился, изучил Data Science, стал Backend-разработчиком, выступал на конференциях, откликнулся на вакансию, где использовался разработанный им фреймворк, вел твиттер... И где-то между этими важными делами успел стать одним из самых интересных Open Source-разработчиков во всём мире, а также человеком, который на bus-факторе может прокатить половину Интернета (извините). Да, да, речь про того самого Tiangolo. И если вы знали его только как разработчика FastAPI, то сейчас точно удивитесь.

Меня зовут Макс, я TeamLead Backend в компании ИдаПроджект, автор YouTube-канала PyLounge. Не буду затягивать со вступлением, поехали!

Читать далее

Information

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