Pull to refresh
16
0
Andrey @vol4ok

User

Send message

Сервер логов Elasticsearch + Logstash + Kibana4 + Beats(windows/linux). Установка и настройка

Reading time 10 min
Views 101K
Встал вопрос централизованного хранения и обработки журналов с серверов на базе Linux и Windows. Мой выбор пал на продукты от Elastic.
Большинство прочитанных статей на тему установки приложений Elastic показались мне достаточно расплывчатыми и неполными.
Читать дальше →
Total votes 20: ↑16 and ↓4 +12
Comments 29

Основы Elasticsearch

Reading time 12 min
Views 671K

Elasticsearch — поисковый движок с json rest api, использующий Lucene и написанный на Java. Описание всех преимуществ этого движка доступно на официальном сайте. Далее по тексту будем называть Elasticsearch как ES.


Подобные движки используются при сложном поиске по базе документов. Например, поиск с учетом морфологии языка или поиск по geo координатам.


В этой статье я расскажу про основы ES на примере индексации постов блога. Покажу как фильтровать, сортировать и искать документы.

Читать дальше →
Total votes 39: ↑38 and ↓1 +37
Comments 78

Mikrotik. Failover. Load Balancing

Reading time 12 min
Views 283K
Когда у меня встала необходимость разобраться, как сделать failover или load balancing, имея два и более каналов в мир, я нашел множество статей и инструкций, в которых описывались рабочие конфигурации. Но почти нигде не нашел разъяснения, как все работает, и описания отличий разных вариантов. Хочу исправить эту несправедливость и собрать простейшие варианты построения failover и load balancing конфигураций в одной статье.

Итак, у нас есть роутер, который соединяет нашу локальную сеть и два канала в интернет (основной ISP1 и резервный ISP2).

Давайте рассмотрим что же мы можем сделать:

Сразу предупрежу: несмотря на то, что в этой статье буду все описывать для mikrotik, не буду касаться темы скриптов
Читать дальше →
Total votes 30: ↑28 and ↓2 +26
Comments 45

Перенос ОС Windows на другой компьютер средствами ОС Linux

Reading time 9 min
Views 48K
После прочтения статьи «Фривольное клонирование ОС MS Windows XP / Server 2003 своими руками, средствами GNU/Linux» возникло естественное желание дополнить ее в соответствии с реалиями конца 2014 года.

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

MBR, таблица разделов и сигнатура диска


Начнем с копирования данных. Какие же данные нам нужно скопировать? Для Windows XP это MBR (446 байт в начале диска, основная таблица разделов и завершающая сигнатура 55AAh), данные о расширенных разделах и собственно данные системного раздела Windows. Для Vista и Windows 7 добавляется еще и 100-мегабайтный системный раздел (GPT не рассматриваем). При этом нужно помнить, что первый раздел в Windows XP по-умолчанию начинается с сектора 63, а в Windows Vista/7 — с сектора 2048. Естественно, все операции мы будем проводить на незапущенной Windows, загрузившись с System Resque CD.
Читать дальше →
Total votes 36: ↑32 and ↓4 +28
Comments 40

Mozilla и Samsung создают браузерный движок нового поколения Servo

Reading time 2 min
Views 69K
Mozilla и Samsung неожиданно объявили о совместном проекте: разработке веб-движка «нового поколения», оптимизированного под будущие «более быстрые, многоядерные, гетерогенные компьютерные архитектуры». Проект получил название Servo (код на Github).

«Servo — попытка создать веб-браузер заново с нуля на современном оборудовании и переосмыслить старые посылки. Это значит устранить сами причины уязвимостей в системе безопасности и в то же время создать платформу, которая полностью использует производительность массовых параллельных вычислений на оборудовании завтрашнего дня. Поэтому Servo пишется на языке Rust, новом, безопасном языке системного программирования, разработанном в Mozilla совместно с большим сообществом энтузиастов», — сказано в официальном сообщении на сайте Mozilla.
Читать дальше →
Total votes 89: ↑84 and ↓5 +79
Comments 76

Установка Windows 7/8 на Mac без использования оптического привода

Reading time 4 min
Views 398K
На многих компьютера Mac сегодня отсутствует оптический привод: он просто не идет в комплекте на macbook air и mac mini, на некоторых MacBook/iMac заменен на дополнительный 2.5-дюймовый диск, а некоторых компьютерах привод может просто не работать.

Новые маки умеют загружаться с флешки, однако я обладатель не новых (2010), а также данное руководство будет полезно тем, кто хочет быстро ставить Windows из образа на любой мак.

Я перепробовал много способов — пытался установить с USB флешки/диска, все было тщетно (далеко не каждый mac загружается с флешки или внешнего диска). Refit также ничего не дал — был темный экран. Данный способ был просто спасением.
Читать дальше →
Total votes 67: ↑48 and ↓19 +29
Comments 64

Строение двигателей

Reading time 7 min
Views 128K
Недавно наткнулся на прекрасный сайт (англ.), который по полочкам размусоливает и показывает строение большинства типов двигателей. Попытаюсь вольно и сжато пересказать самое на мой взгляд главное, совсем по пальцам и как для самых маленьких. Конечно можно было бы позаимствовать точные определения из авторитетных источников, но такой любительский перевод обещает быть единственным в своем роде :)

А можете ли Вы сходу объяснить Вашей девушке, в чем отличие бензинового двигателя от дизельного? Четырёхтактного и двухтактного движков? Нет? Тогда приглашаю под кат.

Читать дальше →
Total votes 249: ↑220 and ↓29 +191
Comments 142

Распознавание лиц человеческим мозгом: 19 фактов, о которых должны знать исследователи компьютерного зрения

Reading time 13 min
Views 62K
Важной целью исследователей в области компьютерного зрения является создание автоматизированной системы, способной сравняться или превзойти способности человеческого мозга по распознаванию лиц. Результаты психофизических исследований процесса распознавания лиц предоставляют специалистам по компьютерному зрению ценнейшие факты, которые помогут улучшить системы искусственного интеллекта.

Как обычно, предлагаю сокращенный перевод, полный текст доступен в оригинале.

Читать дальше →
Total votes 185: ↑181 and ↓4 +177
Comments 66

Трассировка пути на GPU, часть 2

Reading time 3 min
Views 15K
Первая часть обнаружена тут.

Чтож, рассмотрим:
Видеокарта: Nvidia GeForce GTX580 (надо учитывать, что не каждый захочет ради еще не развитой технологии GPU рендеринга покупать топовую видеокарту), Частота шейдеров 800 MHz, 512 ядер CUDA.
Тестовая сцена: хоровод стендфордских высокополигональных дракончиков, танцующих вокруг светящейся шестиугольной призмы, висящей в воздухе.

image
Вот эти ребята.

Чего хотим добиться: минимального шума при минимальных вычислительных затратах.
Сложности:
1. Большинство испытаных рендеров не поддерживают SSS.
2. Демоверсии Octane Render и Arion Render имеют ограничение по разрешению, а сцены типа «шар на поверхности при дневном свете» очищаются от шума быстро даже на CPU рендерах, тем более при столь небольшом разрешении.
3. Сложностью для всех видов рендеринга является рендеринг непрямого освещения, в частности интерьеров, а особенно каустика, на которой мы и остановимся.

Читать дальше →
Total votes 26: ↑26 and ↓0 +26
Comments 32

Трассировка пути на GPU, часть 1

Reading time 2 min
Views 15K
Железо и рендеринг
Наиболее популярные, на сегодняшний день, архитектуры процессоров — x86-64. Их относят к CISC. Они обладают огромным набором команд, что привело к большой площади ядра на кристалле. Это, в свою очередь, повлекло за собой сложность в реализации нескольких ядер на чипе. Процессоры x86 не идеальны для многопоточных вычислений, где требуются многократное выполнение небольшого набора команд (RISC).
В свою очередь, рендеринг — алгоритм, который отлично распараллеливается практически на неограниченное количество ядер.

Unbiased renders
В виду того, что производительность железа неуклонно растет — технические вопросы (например семплинг отражений материалов в V-Ray, количество биасов при антиалиасинге, размытии в движении, глубине резкости, мягких тенях) все больше переходят на плечи железа. Так, несколько лет назад появился первый коммерческий рендер «без допущений» (unbiased render) — Maxwell Render.
Основным его преимуществом было качество финальной картинки, минимум настроек, всевозможных «биасов». С течением времени качество картинки приближается к «идеальному». А недостатком было и есть — время рендеринга. Ждать, пока шум сойдет, приходилось очень долго, и многие люди после нескольких проб сразу от него отказались. Еще хуже обстояли дела с анимацией (по понятным причинам).

image
Читать дальше →
Total votes 27: ↑14 and ↓13 +1
Comments 19

Нахождения минимального расстояния до кривой с помощью API Яндекс.Карт

Reading time 8 min
Views 7.8K
Здравствуйте уважаемые читатели.

Если вы когда-нибудь сталкивались с задачей описанной в топике, то наверное удивлены, тем что в посте будет что-либо кроме ссылки на описание метода getClosestPoint(), потому сразу скажу, что мое решение конечно основывается именно на ней. Однако, мне хочется поделиться не столько алгоритмической красотой (ее за меня реализовывала команда Яндекса создавая API), сколько готовым решением поставленной перед мной задачей.

Наша компания занимается в том числе представлением услуг IP-телефонии и интернета, а так же километрами собственного оптоволокна. для нас весьма важен вопрос на сколько далеко от кабеля находится офис предполагаемого клиента.

Готовое решение, от создания карты с маршрутами оптики, до реализации встроенной в формы определения кратчайшего расстояния ищите под катом.
Читать дальше →
Total votes 24: ↑23 and ↓1 +22
Comments 6

Миграция с Ruby

Reading time 5 min
Views 8K
imageУверен, что на Хабре обитает огромное число юзеров, облизывающихся при чтении описаний технологий и архитектур, используемых в молодых, динамичных и, что наиболее важно, быстрорастущих в своей пользовательской базе, компаний. К сожалению, относительно небольшое количество наших соотечественников работает в таких компаниях по всему миру, а те, кто все-таки трудится во внутренней кухне, связаны различными условиями трудовых договоров или банальным NDA, запрещающим сливать публике самые интересные подробности. Тем не менее, я лично знаю большое количество специалистов, особенно заинтересованных в высоких нагрузках и не знающих, где получить эту информацию из первых рук.

Эту проблему можно решить единственным способом — предоставить слово кому-то из менеджеров отдела разработки или любому другому человеку, занимающему адекватно высокий пост и разбирающемуся в разработке, а после — тянуть, тянуть из него все подробности. Примерно так поступили в Information Queue, опросив одного из инженеров Twitter'а — Эвана Уивера (Evan Weaver) о том, почему компания так долго развивавшаяся на «рельсах», решила переключиться на использование других технологий и какие это имело последствия.

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

Итак, история начинается в прошлом году, когда Twitter анонсировал изменения в архитектуре бэкэнда (message queue), а так же заявил о намерении переписать Twitter Storage на Scala, а весной началась работа по переписыванию всего поискового движка. Как часть этих изменений, БД MySQL (лежавшая в основе поиска) была заменена Lucene. И, наконец, совсем недавно команда разработчиков заявила о замене Ruby on Rails в области поиска — на его место встал Java-сервер, который они сами называют Blender. Результатом этой замены стало трехкратное снижение задержки при выполнении поискового запроса.
Читать дальше →
Total votes 72: ↑65 and ↓7 +58
Comments 82

Клуб миллиардников

Reading time 3 min
Views 702
imageУдивительно, насколько быстро меняется современный мир. Еще недавно Wall Street был переполнен паникерами, которые спрыгивали с тонущих кораблей ипотечных банков и страховщиков недвижимости, а сегодня CEO многих компаний, которым еще даже не исполнилось и года с момента основания, выбирают между покупкой двух Murcielago или одного Aventador. В некоторых ситуациях это можно назвать выбором меньшего из двух зол, т.к. в Долине начинает появляться закрытый клуб очень молодых компаний, которым охотно дают деньги (порой, даже слишком охотно) при воздушных оценках в $1 миллиард.

И пока мы все все наблюдаем за тем, как некоторые из них начинают торговаться на открытых рынках (LinkedIn, чьи дела идут неплохо и Pandora, где все не так радужно), или только готовятся к выходу на фондовый рынок (Groupon, Zynga, Facebook), есть и другие, быстрорастущие грибы, прямо за спиной более крупных игроков. Эти компании закрывают раунды финансирования объемом от $50 до $100 миллионов, и судя по словам инвесторов, которые видели финансовые подробности и показатели роста, все эти компании достаточно здоровые для того, чтобы привлекать деньги каждого капиталиста, желающего рискнуть.

Кто входит в этот клуб?
Читать дальше →
Total votes 110: ↑101 and ↓9 +92
Comments 27

OAuth: описание протокола простым и понятным языком

Reading time 16 min
Views 190K
OAuth — популярный протокол, который позволяет социальным сервисам интегрироваться между собой и дает безопасный способ обмена персональной информацией. OAuth может связать между собой 2 сервиса, каждый из которых имеет свою пользовательскую базу — именно их я в данном случае называю «социальными». Когда начинаешь работать с OAuth, первое ощущение — что протокол весьма сложен и избыточен. В этой статье я попытаюсь объяснить основы OAuth человеческим языком.

Пример кросс-авторизации


Вернемся в 2005-й год и представим, что мы пишем социальную сеть. В ней имеется форма импорта контактов из адресной книги GMail. Что нужно для доступа к контактам GMail? Конечно, логин и пароль от ящика. Но если мы попросим ввести их на нашем сайте, пользователь заподозрит неладное. Где гарантия, что мы не сохраняем на сервере введенные пароли? Поэтому нам хочется, чтобы пароль вводился только на сайте GMail, и после этого доступ к контактам через API GMail предоставлялся нашей социальной сети (возможно, на время).
Под катом - повествование с примерами
Total votes 134: ↑124 and ↓10 +114
Comments 34

Выключение внутреннего экрана ноутбука в Lion

Reading time 1 min
Views 7.4K
В Mac OS X Lion компания Apple изменила поведение макбуков при закрытии крышки с подключенным внешним монитором, это было специальное изменение, о чём можно судить из документации: support.apple.com/kb/ht3131

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

На днях на форумах Apple наконец-то появилось решение, возвращающее поведение как в Snow Leopard.
Читать дальше →
Total votes 41: ↑35 and ↓6 +29
Comments 28

Виртуальные рабочие столы в Windows

Reading time 5 min
Views 289K
На данный топик, меня сподвиг вот этот опрос. Здесь будут рассмотрены программы, позволяющие создавать виртуальные рабочие столы.

Много картинок!
Читать дальше →
Total votes 109: ↑93 and ↓16 +77
Comments 154

Исследуем JavaScript Generators

Reading time 9 min
Views 43K


Когда я начинал писать на node.js, я ненавидел две вещи: все популярные шаблонизаторы и огромное количество callbacks. Я добровольно использовал callbacks, потому что понимал всю силу событийно-ориентированных серверов, но с тех пор в JavaScript появились генераторы, и я с нетерпением жду день, когда они будут имплементированы.

И вот этот день наступает. На сегодня генераторы доступны в V8 и SpiderMonkey, имплементация следует за обновлениями спецификации — это заря новой эры!
Читать дальше →
Total votes 54: ↑49 and ↓5 +44
Comments 17

Адаптивный дизайн: теперь дело уже не в размере экрана

Reading time 13 min
Views 108K
В марте 2012 года Гай Подъярны (Guy Podjarny) провел тест, в ходе которого сравнивалась продуктивность работы сотен новых адаптивных сайтов на устройствах с четырьмя различными разрешениями экранов. Получившиеся результаты были весьма разочаровывающими.

После двух лет подъема адаптивного дизайна, когда любой дизайнер и разработчик, которых только можно представить, запрыгнули в этот поезд, тест производительности на различных разрешениях потряс сами основы адаптивной теории.
Читать дальше →
Total votes 81: ↑73 and ↓8 +65
Comments 44

Получение 3D объекта по 1 фото

Reading time 1 min
Views 74K


На выставке SIGGRAPH ASIA 2013 (англ.), посвященной компьютерной графике и интерактивным технологиям, представлена разработка 3–Sweep, позволяющая лишь по одной фотографии получить трехмерный объект с текстурой. Хотя речь идет о объектах являющихся наборами примитивов и их растяжений по некоторому пути, но скорость и простота работы впечатляет! Также оценивается и дополняется то, что могло бы быть за объектом, после его вырезания из фотографии, хотя мы уже видели похожий инструмент от Adobe.
Читать дальше →
Total votes 124: ↑116 and ↓8 +108
Comments 28

HTML5 и drag & drop нескольких объектов

Reading time 4 min
Views 43K
Перетаскиванием объектов на HTML5 никого уже не удивишь, но все же попробую рассказать кое о чем интересном, а именно, как сделать красивое перетаскивание нескольких объектов, используя только HTML5.

На странице есть набор элементов типа А, которые можно по одному или группой перетащить в элемент типа Б. Пользователь должен видеть, перетаскивает он один элемент или несколько. Перетаскивать один элемент просто, достаточно присвоить свойству draggable значение true, наверняка, все это делали.
Как перетаскивать несколько?
Total votes 29: ↑29 and ↓0 +29
Comments 12

Information

Rating
Does not participate
Registered
Activity