Выбор подходящей системы управления базами данных (СУБД) — важнейшая задача при проектировании программных систем. Разработчики и архитекторы учитывают множество факторов: модель данных (реляционная или NoSQL), поддержку транзакций, масштабируемость, требования к согласованности и многого другое. Одним из ключевых архитектурных аспектов, влияющих на эффективность и надежность системы, является модель репликации данных. Репликация означает поддержание копий одних и тех же данных на нескольких узлах (серверах), соединённых по сети.
Зачем это нужно? Репликация позволяет: во-первых, держать данные ближе к пользователям (уменьшая задержку при запросах); во-вторых, продолжать работу системы даже при сбое отдельных узлов (повышая доступность); в-третьих, масштабировать систему, увеличивая число узлов для обслуживания запросов на чтение (повышая пропускную способность).
Однако реализация репликации сопряжена с серьёзными архитектурными компромиссами. Согласно теореме CAP, в распределённой системе невозможно одновременно гарантировать все три свойства: консистентность данных, доступность сервиса и устойчивость к разделению сети. При возникновении сетевых сбоев (разбиении на изолированные сегменты) системе приходится жертвовать либо мгновенной согласованностью данных, либо доступностью части узлов. Поэтому разные СУБД делают разные выборы в этих компромиссах. Архитектурная модель репликации, лежащая в основе СУБД, определяет, как база данных достигает (или не достигает) консистентности, доступности и отказоустойчивости. Понимание этих различий крайне важно для архитекторов и разработчиков: зная поведение репликации, вы сможете выбрать такую СУБД, которая лучше соответствует требованиям вашего проекта по масштабу, геораспределенности, допустимой задержке и устойчивости к сбоям.
Читать далееДобро пожаловать во вторую статью на тему RxJS! Если вы прочли первую часть, то, скорее всего, уже экспериментировали с from(), interval() и знакомились с элементарными операциями — фильтрацией и преобразованием данных. На этом фундаменте мы будем строить знакомство с более хитрыми инструментами, чтобы из просто «интересных экспериментов» RxJS превратился в реальный мощный инструмент для ваших проектов.
Обращаю Ваше внимание на то, что данный опус, как и прочие в этом цикле рассчитаны исключительно на новичков, никаких открытий, прорывов и "умных" мыслей для преисполнившихся здесь не предполагается. Все повествование строится на моём понимании того, как лучше построить процесс изучения обозначенной темы.
Читать далееВсем привет. Недавно я написал статью, как за год с нуля заработал миллион на ассетах для Unreal Engine. Для тех, кто хотел знать подробности моего опыта, пишу эту статью.
Читать далееПроблема оценки труда системных администраторов — одна из самых неоднозначных в IT-менеджменте. В отличие от разработчиков или продакт-менеджеров, чей вклад можно измерить метриками, эффективность сисадмина часто остается «невидимой» — пока всё работает, кажется, что он и не нужен. Но когда возникают проблемы, его роль становится критически важной.
Читать далееПосле предыдущей статьи о полезных штуках для линуксов, где речь шла преимущественно об опыте использования Manjaro, поступило предложение посмотреть российскую ОС — MSVSphere. Я зашел на сайт системы, посмотреть что это такое и глянуть картинки — смотрелось всё неплохо, поэтому решил попробовать установить при случае как‑нибудь потом, так как на основном ПК места под новые ОС уже не было.
Читать далееЯ начал заниматься баг-баунти три недели назад. Мой изначальный подход, основанный на прочитанной информации, заключался в том, чтобы искать уязвимости в VDP (программах раскрытия уязвимостей), чтобы получить приглашение в частные программы и избежать жесткой конкуренции, как в публичных программах.
Однако мне хотелось получить что-то взамен за свое время, ведь его у меня не так много. После того как я увидел, как несколько багхантеров делятся своими благодарственными письмами от NASA в X, я поставил себе новую цель...
Читать далееЗавтра у меня экзамен и я очень волнуюсь. Когда-то давно, еще до эпохи ИИ, тоже были экзамены и те, кто их сдавал, тоже волновались, как я сейчас.
Но я волнуюсь гораздо больше...Биржевые фонды — это один из самых популярных инструментов для инвестиций сегодня. Фонды являются главными друзьями опытных инвесторов, так как современные портфели составляются практически полностью из фондов, а не из отдельных бумаг. Если вы считаете фонды плохим инструментом для инвестора, то, скорее всего, вы ничего не знаете о них.
Читать далееИдея статьи родилась после прочтения многочисленных источников в интернете по барьерам и моделям памяти.Так же, был просмотрены соответствующие видео с разъяснением. Много где в целом всё достаточно хорошо разжевано. Статья не претендует на исчерпывающий материал. Скорее, это обзорное описание на тему модели памяти в связке с RISC-V. Не рассчитана на entry level, рекомендуется сперва почитать что нибудь вводное.
Навряд ли кому то необходимо детальное знание внутренней архитектуры процессора на уровне RTL (register-transfer level), как и глубокого понимания принципов модели памяти, согласованности. Да и обычно вся эта информация берется из соответствующей литературе от производителя, других книгах по оптимизации. Предполагаю, что авторы в том или ином виде могу знать более глубокие вещи, чем представлены в открытых источниках. Возможно, они работали в компании производителя (Intel, например), общение, конференции, сообщества.
Но может ли быть источник лучший, чем исходники CPU? Навряд ли. Вы не найдете в открытом доступе исходники процессоров Intel, AMD и любых других. ARM за это денежки получает, продавая права на архитектуру и готовые спроектированные блоки. А вот для RISC-V такой источник есть - исходники полноценного суперскалярного out-of-order процессора от Berkley.
Не так давно был разработан язык Chisel на замену Verilog и аналогов. Он на базе Scala. А, так как это Scala, мы можем использовать IDE и внятную навигацию по исходникам. Но в исходники просто так не пойдешь, сперва надо приобрести необходимые фундаментальные знания, чтобы понимать в целом что такое разработка на уровне RTL. Неплохо бы разобраться с Verilog и с базовыми понятиями - всякие там защелки, регистры, мультиплексоры и тп. Это я и решил сделать и начал с книги “Паттерсон, Хеннесси: Архитектура компьютера и проектирование компьютерных систем”. Она безумно крутая и очень понятная. Затем прочитал несколько книг по FPGA и Verilog и даже купил учебную FPGA плату, но руки до неё так и не дошли. Это позволило сформировать для себя какую то необходимую картину того, как функционирует CPU, как происходит проектирование микроконтроллеров.
Читать далееВ статье рассматривается подход к построению архитектуры сервиса с использованием языка Go для продуктовых команд, ориентированных на решение бизнес-задач. Особое внимание уделяется вопросам выделения слоев в приложении и обеспечению низкой связанности между ними.
Читать далее18 и 19 апреля состоится XIII международная IT-конференция «Стачка». 4 направления, 46 секций, 250+ докладов, 2500+ участников, специальный гость и лидеры индустрии. Всё это на одной площадке в Ульяновске (здание УлГПУ). Рассказываем подробнее, что вас ждёт.
Читать далееВ данной статье будет рассмотрен порядок настройки DHCP-сервера на операционной системе Ubuntu Server. Настройка будет производиться на Ubuntu Server (будет использоваться в качестве роутера).
Для настройки DHCP-сервера рекомендуется сначала создать копию оригинального конфигурационного файла:
sudo cp /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.conf.bak
Очистить содержимое конфигурационного файла, вписав:
sudo sh -c "cat /dev/null > /etc/dhcp/dhcpd.conf"
Используя текстовый редактор nano отредактировать файл:
sudo nano /etc/dhcp/dhcpd.conf
Читать далееПривет! На связи Ксюша – автор статей в блоге «IT для детей». Пишу о дополнительном обучении современных ребят, стараюсь рассказывать просто о сложном и делаю это в первую очередь для школьников, интересующихся айти-курсами, и для поддерживающих их стремления родителей.
Сегодня хочу рассказать о том, почему научиться писать код в шестом классе – это вполне реально, а также отметить вещи, которые помогут увлечь ребенка. Дополнительно и по уже сложившейся традиции предложила случайные варианты курсов, краткие аналитические сведения о которых представила в конце.
Читать далееАнализируя влияние ИИ на современное общество, можно провести аналогию с появлением огнестрельного оружия. Изначально оно не превосходило луки и арбалеты по дальности, скорости или пробивной силе. Однако его ключевое преимущество заключалось в экономической доступности. Огнестрел удешевил военное дело: солдат с трехмесячной подготовкой мог конкурировать с профессиональным воином, чьи навыки и экипировка требовали десятилетий тренировок и огромных затрат. Подобным образом сейчас ИИ трансформирует рынок труда, снижая зависимость от человеческого опыта и перераспределяя роли в профессиональной сфере.
Читать далееНесмотря на то, что использование паролей не является надежным методом аутентификации, они широко распространены при работе с различными сервисами и программами. Сегодня все больше пользователей сталкивается с необходимостью управлять десятками, а порой и сотнями паролей от различных сервисов. Хранить их в заметках, в личных сообщениях или в браузере не только неудобно, но и небезопасно. Чтобы решить данную проблему существуют специальные типы программ, которые помимо хранения обеспечивают защиту конфиденциальных данных предоставляя место, где они будут в безопасности. На рынке присутствуют десятки различных программ для администрирования паролей. Сегодня мы проведем подробный разбор программ для хранения паролей и разберем их основной функционал.
Читать далееВ начале XX века в Англии сложилась интересная ситуация: почта работала ну очень быстро, и открытки можно было доставить до адресата в течение дня. Отправлять карточки было дешевле и удобнее, чем традиционные письма, поэтому их стали использовать для передачи коротких сообщений, а потом и для обмена популярными образами своего времени. По сути они превратились в аналог современных социальных сетей и мессенджеров.
Надо ли говорить, что открытки с котиками пользовались максимальным спросом! Но недовольных тоже было немало. Газеты и общество били тревогу: скоро все вообще разучатся писать длинные тексты и формулировать мысли. К тому же больше никакой приватности: открытки не упаковывали в конверты, а значит, текст могла увидеть прислуга. Инфраструктура тоже трещала по швам: мешки почтальонов переполнялись огромным количество открыток, а это вело к травмам и потере важных сообщений.
Что-то все это напоминает, не правда ли? Технологии меняются быстро, а вот люди — не очень. Все это и обсудим дальше.
Читать далееЗеттабайт — это триллион гигабайт. Это очень много, но, по одной из оценок, в этом году человечество произведёт сто восемьдесят зеттабайт цифровых данных. Данные копятся: PowerPoints и селфи; видео, снятое камерами; электронные медицинские карты; данные, извлечённые из смарт-устройств или собранные телескопами и ускорителями частиц; резервные копии и резервные копии резервных копий. Куда всё это девать, сколько и как долго хранить? Эти вопросы не дают покоя учёным-компьютерщикам, управляющим мировыми хранилищами данных. Для них облако — это не клочок тумана, а физическая система, которую нужно создавать, оплачивать и обслуживать.
Эксперты по хранению данных говорят о температурной шкале данных. На одном конце находятся «горячие» данные — Википедия или ваш банковский баланс, — которые должны появляться на экране практически мгновенно. На другом — «холодные» данные, которые могут находиться в нескольких минутах или даже днях от кончиков ваших пальцев. «Тёплые» данные, расположенные посередине, например ваши старые фотографии, могут быть получены за несколько секунд. Большинство данных — «холодные», и многие из них, вероятно, можно стереть без последствий. Однако некоторые из них могут однажды оказаться критически важными, например, в уголовном деле, и их потенциальная ценность означает, что большая часть должна быть сохранена в целости и сохранности в течение неопределённого времени.
Читать далееВсем привет! На связиНиколай Едомский, руководитель группы сетевых инженеров в ЕДИНОМ ЦУПИС.
Представляю вашему вниманию четвертую статью из цикла «IPsecHub+».
В прошлой статье мы рассмотрели схему построения IPsec‑концентратора на основе так называемой эскалаторной топологии. А сейчас мы рассмотрим примеры более сложных сценариев, когда нужно выполнять регуляторные требования, пристыковать филиалы с пересекающимся адресным пространством, ну и тому подобное.
Читать далее