Обновить
0
@lnxdread⁠-⁠only

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

3
Подписчики
Отправить сообщение

Я написал самую быструю хеш-таблицу

Время на прочтение29 мин
Охват и читатели75K

image


В конце концов я должен был к этому прийти. Когда-то я опубликовал статью «Я написал быструю хеш-таблицу», а потом ещё одну — «Я написал ещё более быструю хеш-таблицу». Теперь я завершил работу над самой быстрой хеш-таблицей. И под этим я подразумеваю, что реализовал самый быстрый поиск по сравнению со всеми хеш-таблицами, какие мне только удалось найти. При этом операции вставки и удаления также работают очень быстро (хотя и не быстрее конкурентов).


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


Если вы хотите только попробовать её в работе, то можете скачать отсюда. Либо пролистайте вниз до раздела «Исходный код и использование». Хотите подробностей — читайте дальше.

Читать дальше →

Опубликованные данные элитной кибергруппировки Equation Group не оказались шуткой

Время на прочтение4 мин
Охват и читатели26K
Недавно мы писали о возможной утечке конфиденциальных данных известной кибергруппы Equation Group (Five Eyes/Tilded Team). Опубликованная информация готовилась по горячим следам, а сам инцидент с публикацией данных рассматривался как вызывающий сомнения. Однако, за прошедшие несколько дней, нам удалось изучить опубликованный в свободном доступе архив, а также собрать доверенные источники, подтверждающие достоверность информации группы хакеров Shadow Brokers. Размер самого архива с доступными для доступа данными составляет около 300МБ, в нем насчитывается более 3,5 тыс. файлов. Расшифрованная публичная часть архива, которая уже упоминалась нами ранее, содержит в себе различные скрипты установки, файлы конфигурации, информацию о работе с управляющими C&C-серверами, работающие эксплойты для популярных роутеров и брандмауэров.
Читать дальше →

Поняв Docker

Время на прочтение14 мин
Охват и читатели224K

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


К вашему сведению! В этой статье мы рассматриваем само явление docker-контейнеров, а не составляем список микросервисов, которые гнездятся внутри. Этим мы займемся в следующей серии, во имя справедливости!


UPDATE: пришлось заменить «докер» на «docker», иначе статья не ищется. Заранее прошу прощения за все «docker'ы» в тексте. Селяви.


Что мы имеем сегодня


  • Зоопарк дубовых VPS-хостингов.
  • Дорогие IaaS и PaaS с гарантированным vendor lock in.
  • Уникальные сервера-снежинки.
  • Ворох устаревших зависимостей на неподдерживаемой операционке.
  • Скрытые связи частей приложения.
  • Незаменимый админ полубог на скейтборде.
  • Радуга окружений: development, testing, integration, staging, production.
  • Генерация конфигов для системы управления конфигами.
  • Feature flagging.
docker run docker

Полное практическое руководство по Docker: с нуля до кластера на AWS

Время на прочтение39 мин
Охват и читатели2M



Содержание



Вопросы и ответы


Что такое Докер?


Определение Докера в Википедии звучит так:


программное обеспечение для автоматизации развёртывания и управления приложениями в среде виртуализации на уровне операционной системы; позволяет «упаковать» приложение со всем его окружением и зависимостями в контейнер, а также предоставляет среду по управлению контейнерами.



Ого! Как много информации.

Читать дальше →

Понимая Docker

Время на прочтение7 мин
Охват и читатели1.2M
Уже несколько месяцев использую docker для структуризации процесса разработки/доставки веб-проектов. Предлагаю читателям «Хабрахабра» перевод вводной статьи о docker — «Understanding docker».

Что такое докер?


Докер — это открытая платформа для разработки, доставки и эксплуатации приложений. Docker разработан для более быстрого выкладывания ваших приложений. С помощью docker вы можете отделить ваше приложение от вашей инфраструктуры и обращаться с инфраструктурой как управляемым приложением. Docker помогает выкладывать ваш код быстрее, быстрее тестировать, быстрее выкладывать приложения и уменьшить время между написанием кода и запуска кода. Docker делает это с помощью легковесной платформы контейнерной виртуализации, используя процессы и утилиты, которые помогают управлять и выкладывать ваши приложения.
Читать дальше →

В микроволновой печи скрывается мощное и опасное СВЧ оружие

Время на прочтение4 мин
Охват и читатели685K
Добрый день, уважаемые хабровчане.

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

В микроволновке находится генератор СВЧ волн огромной мощности


Мощность волн, которые используются в микроволновке, уже давно будоражит моё сознание. Её магнетрон (генератор СВЧ) выдаёт электромагнитные волны мощностью около 800 Вт и частотой 2450 МГц. Только представьте, одна микроволновка вырабатывает столько излучения, как 10 000 wi-fi роутеров, 5 000 мобильных телефонов или 30 базовых вышек мобильной связи! Для того, что бы эта мощь не вырвалась наружу в микроволновке используется двойной защитный экран из стали.
Читать дальше →

Ethernet метеостанция

Время на прочтение6 мин
Охват и читатели149K
Было написано множество статей на тему вариаций погодных станций на платформе Arduino. Вывод данных везде был различен. Позвольте представить мою вариацию, с выводом данных через Ethernet.

Итоговое фото сборки:



image
Читать дальше →

Как отключить обновления в Skype и рекламу заодно

Время на прочтение1 мин
Охват и читатели200K
Относительно недавно skype обновился, довольно радикально изменив интерфейс. И я как закоренелый консерватор стал искать способ, как оставить при себе свои старые привычки, заодно нашел как избавиться от рекламы.

Инструкция:
1. Запретить Скайпу исходящие подключения на порты 80 и 443.
2. Создать файл %TMP%\SkypeSetup.exe и запретить себе всё на этот файл.
Читать дальше →

Тест на фиттспригодность

Время на прочтение11 мин
Охват и читатели67K
Статье 14 лет. Но, что удивительно, перевода этой классики на Хабре нет. Значит, будет.

Итак, вы называете себя «проектировщиком интерфейсов»? Если не сможете на все вопросы ответить быстро и обоснованно — вон из профессии!

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

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

Эти вопросы предполагают, что всё экранное пространство под вашим полным контролем. Просто представьте себе, что вы главный дизайнер в Microsoft или Apple.
Читать дальше →

Игры в OLTP

Время на прочтение23 мин
Охват и читатели3K
В последнее время на Хабре стала популярной тема реализации высокопроизводительных приложений. Решили тоже немножко поэкспериментировать в этом направлении и поделиться текущими результатами наших изысканий.

Подопытный «Hello, world!» представляет собой простейшую OLTP систему:



Требования к производительности и отказоустойчивости являются ключевыми для подобных систем. Поэтому поиск решения поставленной задачи осуществлялся в направлении: C, C++, fastcgi, nginx, lighttpd, oracle. В первую очередь нам было любопытно попробовать различные варианты построения OLTP на данных технологиях, а так же измерить производительность и пиковые нагрузки.

Подробности под катом...

Чеклист запуска сайта

Время на прочтение3 мин
Охват и читатели25K

Этот чеклист будет полезен всем, кто запускает сайты или следит за этим увлекательным процессом. Ничего не пропустите!
Читать дальше →

9 статей на тему круглых кнопок

Время на прочтение2 мин
Охват и читатели12K
9 статей на тему круглых кнопок

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

Здесь представлены
9 отличных статей на тему создания кнопок с изменяемой шириной

Когда деревья были большими или о том, с чего все начинали

Время на прочтение4 мин
Охват и читатели2.1K
Мне часто задают вопрос о том, с чего начать молодому frontend-разработчику? Дабы облегчить свою участь и не перечислять каждый раз множество ресурсов сети, печатных и зданий и общих тезисов, я и написал этот материал.

В первую очередь следует знать, что кроссбраузерная верстка сродни магии. Объясняется это все банальной вещью, которую я озвучу так: ”Все мы ненавидим Internet Explorer!” Таким образом, 90% всей магии сводится к тому, чтобы заставить правильно сверстанный макет корректно отображаться в браузере Internet Explorer всех актуальных версий.

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

Крепкая теоретическая база поможет вам избежать множества неприятностей в практическом изучении верстки гипертекстовых документов. Очень важно получать знания порциями в правильном порядке.
Читать дальше →

Приглашаем всех желающих на встречу докладчиков UA Web — 2007

Время на прочтение1 мин
Охват и читатели748
Дамы и господа, коллеги!

27 июня, в Киеве, вечером в 19:00 (время киевское) состоится первое собрание докладчиков первой украинской конференции веб-разработчиков UA Web — 2007 ;)

Ждем всех желающих сделать доклады, а также сомневающихся, сочувствующих и тех, кому не все равно. Задачи на вечер:
Познакомиться;
Поделиться общей информацией о конференции (языки, состав, цель);
Обсудить потенциальную программу — о чем нам было бы интересно поговорить друг с другом;
Решить вопросы по продолжительности докладов;
Обсудить имеющийся опыт, как не повторить ошибок;
Выбрать ответственных за каждую секцию;
Установить самим себе крайние даты подачи тезисов докладов;
Сформировать план дальнейших действий.

Координаты и контакты под катом

Основы.htaccess на примерах

Время на прочтение1 мин
Охват и читатели74K
В данной статье приведены реальные примеры кода, который автор использует, разрабатывая сайты для своих клиентов. Уровень — чуть выше начального. Предлагаю вашему вниманию выдержки из статьи. Возможны неточности в переводе, если поправите — буду признательна. Если кому-то поможет — буду рада.

Информация

В рейтинге
Не участвует
Откуда
Киев, Киевская обл., Украина
Дата рождения
Зарегистрирован
Активность