Pull to refresh
0
@0x56read⁠-⁠only

User

Send message

Любопытный случай взаимной блокировки транзакций в базе данных при использовании TransactionScope

Reading time10 min
Views2.3K

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

Пару лет назад мы с командой построили событийно-ориентированную систему, работавшую с транзакциями и время от времени застывавшую в загадочных взаимных блокировках. Как-то раз я решил заглянуть в нее поглубже и посмотреть, что же на самом деле там происходит. Этот небольшой пост можно считать отчетом, документирующим мои изыскания.

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

Блокировки в MySQL

Reading time4 min
Views109K
На хабре часто обсуждаются принципы работы MySQL. Данный хабратопик посвящен механизмам блокировок, используемым в MySQL. Топик поможет начинающим изучать MySQL и, в некоторой степени, опытным хабралюдям.

Механизм блокирования в MySQL


Одновременный доступ нескольких клиентов к хранилищу данных может приводить к ошибкам различного типа. Например, одновременное чтение одним клиентом и запись другим клиентом одной и той же строки таблицы с большой вероятностью приведет к сбою или чтению некорректных данных. Механизмы блокировок позволяют избежать ситуаций одновременного доступа к данным, регламентируя механизм взаимодействия пользователей между собой.
Читать дальше →
Total votes 65: ↑62 and ↓3+59
Comments18

Блокировки MySQL: виды, проблемы и способы обнаружения

Reading time27 min
Views53K

Рано или поздно любой разработчик или администратор СУБД, имеющий дело с MySQL, сталкивается с проблемой блокировок. Всё дело в природе MySQL как системы с конкурентным доступом на чтение/запись. Я расскажу о видах блокировок в MySQL, их преимуществах и недостатках, о проблемах, которые они вызывают, а также дам полезные советы по обнаружению и способам борьбы с блокировками.

Читать далее
Total votes 17: ↑16 and ↓1+16
Comments3

Живы ли жесткие диски в 2024 году, и где их стоит применять

Level of difficultyEasy
Reading time10 min
Views15K

Кажется, что эпоха жестких дисков давно ушла. SSD-накопители если не вытеснили HDD с рынка комплектующих для консьюмерских ПК, то сильно пошатнули их позиции. Иначе и быть не могло, когда имеешь дело с очевидно превосходящим решением, которое развивается семимильными шагами. Несмотря на это, жесткие диски все еще продаются и даже пользуются определенной популярностью. Эту статью мы подготовили для тех, кто сомневается и не уверен в рациональности приобретения (или, наоборот, не-приобретения) HDD в 2024 году. Никакого rocket science под катом -- только факты и их анализ, а также сегодня мы расскажем про пять сфер, в которых HDD остаются лучшее SSD.

Читать далее
Total votes 15: ↑9 and ↓6+3
Comments38

Бали: остров будущего для айтишников

Reading time7 min
Views10K

После всех американских городов давайте отдохнем и взглянем на известный райский остров с картинки - Бали.

Зеленые пальмы колышутся под морским бризом, голубая гладь океана и белоснежный песок - где-то тут снимают очередную серию рекламы Баунти.

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

Читать далее
Total votes 28: ↑20 and ↓8+17
Comments27

Когда одного Postgres'a мало: сравнение производительности PostgreSQL и распределенных СУБД

Level of difficultyHard
Reading time12 min
Views14K

Общеизвестно, что PostgreSQL - крайне эффективная СУБД с богатой функциональностью. При этом не секрет, что PostgreSQL масштабируется только вертикально и её производительность ограничена возможностями одного сервера.

Написано много хороших постов, в которых сравнивают архитектуру монолитных и распределенных СУБД. К сожалению, обычно авторы ограничиваются теоретическим сравнением и не приводят конкретные цифры. Данный пост же наоборот основан на эмпирическом исследовании с использованием бенчмарка TPC-C, который является промышленным стандартом для оценки производительности транзакционных СУБД (On-Line Transaction Processing, OLTP).

Мы расскажем, когда именно одного Postgres'a становится мало, и какие возможны компромиссы между производительностью и надежностью. Для тех, кто не готов к компромиссам, мы покажем, что могут предложить такие распределенные СУБД, как CockroachDB и YDB.

Читать далее
Total votes 23: ↑22 and ↓1+27
Comments54

Нейросети для программистов: уже что-то умеют или еще пока совсем джуны?

Level of difficultyEasy
Reading time8 min
Views12K

Я Григорий Тумаков, CTO в Моризо Диджитал. Эта статья — про то, как мы в компании решили протестировать нейросети для рабочих задач.

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

Disclaimer: это не полноценный обзор, а скорее эксперимент. Не судите строго ?

Читать далее
Total votes 9: ↑8 and ↓1+7
Comments11

Что дороже, томограф или драгоценный камень в нём?

Level of difficultyEasy
Reading time3 min
Views3.5K

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

Идея этого поста родилась при работе с геммологами, которые занимаются оценкой качества драгоценных изделий и драгоценных камней, оценкой стоимости и  выявлением подделок. Исследования были направлены на то, чтобы выяснить, что может рассказать о внутренней структуре драгоценностей наша программа Smart Tomo Engine (ознакомиться с которой можно у нас на сайте Smart Engines).

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

«Вояджер-1» всё же может ожить: что происходит с наиболее удалённым от Земли космическим зондом?

Reading time4 min
Views8.8K

С конца 2023 года у «Вояджера-1» очень серьёзные проблемы. Он до сих пор отправляет сигналы на Землю, но это какая-то цифровая бессмыслица вместо нормальной телеметрии. Продолжительное время представители NASA говорили о том, что связь с зондом, возможно, потеряна навсегда, но теперь появилась небольшая надежда. Подробности — под катом.

Читать далее
Total votes 18: ↑15 and ↓3+21
Comments18

«Уэбб» и «Хаббл» подтвердили скорость расширения Вселенной

Level of difficultyEasy
Reading time5 min
Views7.5K

Скорость расширения Вселенной, известная как постоянная Хаббла, является одним из фундаментальных параметров для понимания эволюции и конечной судьбы космоса. Однако между значением константы, измеренным с помощью широкого спектра независимых индикаторов расстояний, и её значением, предсказанным на основе послесвечения Большого взрыва, наблюдается постоянное расхождение, называемое «хаббловской напряжённостью». Космический телескоп НАСА/ЕКА/ККА «Джеймс Уэбб» подтвердил, что зоркий глаз космического телескопа «Хаббл» был прав всегда, устранив все остававшиеся сомнения относительно его измерений.

Читать далее
Total votes 7: ↑6 and ↓1+7
Comments25

Powered by ZeroTier. Практическое руководство по строительству виртуальных сетей. Часть 1

Reading time7 min
Views102K

Продолжая рассказ о ZeroTier, от теории, изложенной в статье «Интеллектуальный Ethernet-коммутатор для планеты Земля», перехожу к практике, в которой:

  • Создадим и настроим частный сетевой контроллер
  • Создадим виртуальную сеть
  • Настроим и подключим к ней узлы
  • Проверим сетевую связность между ними
  • Закроем доступ к GUI сетевого контроллера извне
Читать дальше →
Total votes 30: ↑30 and ↓0+30
Comments0

Разбираем HTTP/2 по байтам

Level of difficultyMedium
Reading time24 min
Views34K

image


Откройте любую статью с обзором HTTP/1.1. Скорее всего, там найдётся хотя бы один пример запроса и ответа, допустим, такие:


GET / HTTP/1.1
Host: localhost

HTTP/1.1 200 OK
Date: Sat, 09 Oct 2010 14:28:02 GMT
Server: Apache
Content-Length: 38
Content-Type: text/html; charset=utf-8

<!DOCTYPE html>
<h1>Привет!</h1>

Теперь откройте статью с обзором HTTP/2 или HTTP/3. Вы узнаете о мультиплексировании запросов, о сжатии заголовков, о поддержке push-технологий, но вряд ли увидите хоть одно конкретное сообщение. Ясно, почему так: HTTP/1.1 — текстовый протокол, тогда как сиквелы к нему бинарные. Это очевидное изменение открывает дорогу ко множеству оптимизаций, но упраздняет возможность просто и доступно записать сообщения.


Поэтому в этой статье предлагаю покопаться в кишках у HTTP/2: разобрать алгоритмы установки соединения, формат кадров, примеры взаимодействия клиента с сервером.

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

Умрёт ли FTP? Расцвет и упадок протокола

Reading time9 min
Views21K


Вот небольшое известие, которое вы могли пропустить, восстанавливая свою жизнь после начала кризиса COVID: из-за того, что вирус перемешал всем карты, Google пропустила выпуск Chrome версии 82. «Да кого это волнует?», — спросите вы. Ну, хотя бы пользователей FTP, или File Transfer Protocol. Во время пандемии Google отложила свои планы по убийству FTP, и теперь, когда буря немного успокоилась, Google недавно объявила о том, что возвращается к мысли об убийстве в Chrome версии 86, которая снова сократит поддержку протокола, и окончательно убьёт его в Chrome 88. (Mozilla объявила о похожих планах на Firefox, утверждая, что дело в безопасности и возрасте поддерживающего протокол кода.) Это один из старейших протоколов, который поддерживает мейнстримный Интернет (в следующем году ему исполнится 50 лет), но эти популярные приложения хотят оставить его в прошлом. Сегодня мы поговорим об истории FTP, сетевого протокола, который продержался дольше, чем почти все остальные.
Читать дальше →
Total votes 27: ↑23 and ↓4+30
Comments56

Надежный обход блокировок в 2024: протоколы, клиенты и настройка сервера от простого к сложному

Level of difficultyMedium
Reading time46 min
Views258K

Поскольку блокировки интернета в РФ в последние недели и месяцы многократно активизировались, а маразм все крепчает и крепчает, стоит еще раз поднять тему обхода этих самых блокировок (и делаем ставки, через сколько дней на эту статью доброжелатели напишут донос в РКН чтобы ограничить к ней доступ на территории страны).

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

Читать далее
Total votes 445: ↑437 and ↓8+489
Comments373

Пакуем весь трафик в Ping message, чтобы не платить за интернет | ICMP NAT traversal

Level of difficultyHard
Reading time29 min
Views95K

Бывало ли у вас такое, что вы подключились к общественной сети или мобильному интернету, но он себя странно ведёт. Надпись «Подключено, без доступа к интернету» отсутствует, устройство думает, что всё нормально. Вы открываете браузер и видите «Пройдите проверку личности в сети нашего кафе» или в случае с мобильным интернетом «Пополнить баланс можно тут, тут и тут».

Так вот, переходя ближе к теме. Вы можете воспроизвести подобное поведение очень просто прямо сейчас при помощи вашего мобильного телефона и ноутбука. Я в своём конкретном кейсе буду пользоваться услугами оператора красного цвета, однако проблема актуальна для всех текущих 4 монополистов рынка сотовой связи. Как вам, скорее всего, уже известно, они около года меняют свою политику, внедряя одно интересное нововведение — с вас требуют дополнительной платы за раздачу интернета поверх основного пакета. То есть вы не можете взять и использовать свои 7 гигов на месяц как ресурс для раздачи при помощи точки доступа. Для точки доступа вам предлагают отдельный, зачастую совсем невыгодный тариф. Конечно, можно сменить основной тариф на специальный «тариф для раздачи» и платить втридорога, но, как вы понимаете, сегодня мы в потребителя будем играть совсем недолго. Сейчас по пунктам нужно доказать нечестность подобной политики и с чувством завершённого введения перейдём к непосредственно технотексту.

Подобные условия пользования, само собой, порождают внутреннее недовольство пользователей:

За интернет они платят? — Да.

Раздача как-либо использует ресурсы провайдера сверх нормы? — Нет.
Читать дальше →
Total votes 233: ↑231 and ↓2+294
Comments91

Ложь по спасение в попытке доказать, что клиент мамонт или как Тинькофф врет и ЦБ РФ и суду

Level of difficultyEasy
Reading time1 min
Views49K

Получил тут возражения Тинькофф по суду и мягко сказать офигел от глупости и наглой лжи Тинькофф.

Так ЦБ РФ Тинькофф пишет

Читать далее
Total votes 142: ↑123 and ↓19+133
Comments345

Кто и зачем меняет стандарты широкополосной связи — разбираем ситуацию в США и других странах

Reading time5 min
Views7K

Мы уже обсуждали конфликт крупных провайдеров с властями американских городов, делающими ставку на независимые общественные сети. Цель такой инициативы — поспособствовать развитию конкуренции на рынке. Недавно члены Федеральной комиссии по связи США решили подлить масла в огонь и предложили повысить стандарт широкополосной передачи данных с 25 до 100 Мбит/с [и в перспективе до одного гигабита]. Обсудим, как участники индустрии отреагировали на новую инициативу.

Читать далее
Total votes 10: ↑5 and ↓5+2
Comments7

Почему не стоит пользоваться WireGuard

Reading time12 min
Views84K
В последнее время WireGuard привлекает к себе большое внимание, фактически — это новая «звезда» среди VPN. Но так ли он хорош, как кажется? Я хотел бы обсудить некоторые наблюдения и рассмотреть реализацию WireGuard, чтобы рассказать, почему он не является решением, которое заменит IPsec или OpenVPN.

В этой статье я хотел бы развенчать некоторые мифы [вокруг WireGuard]. Да, читать придется долго, так что если вы еще не заварили себе чашечку чая или кофе, то самое время это сделать. Еще я бы хотел сказать спасибо Питеру за корректуру моих хаотичных мыслей.

Я не ставлю себе цель дискредитировать разработчиков WireGuard, обесценить их усилия или идеи. Их продукт — рабочий, но лично я считаю, что он представлен совершенно не тем, чем является на самом деле — представлен как замена IPsec и OpenVPN, которой на самом деле сейчас просто не существует.

В качестве примечания хочется добавить, что ответственность за такое позиционирование WireGuard несут СМИ, которые о нем рассказывали, а не сам проект или его создатели.

В последнее время на тему ядра Linux было не слишком много хороших новостей. Так, нам рассказали о чудовищных уязвимостях процессора, которые были нивелированы программным способом, а Линус Торвальдс рассказывал об этом слишком грубо и скучно, утилитарным языком разработчика. Планировщик или сетевой стек нулевого уровня — тоже не слишком понятные темы для глянцевых журналов. И тут появляется WireGuard.

На бумаге все звучит здорово: захватывающая воображение новая технология.

Но давайте посмотрим на нее чуть внимательнее.
Читать дальше →
Total votes 34: ↑23 and ↓11+23
Comments52

Information

Rating
Does not participate
Registered
Activity