Search
Write a publication
Pull to refresh
5
0
Джеймс Бонд @k0ldbl00d

Слесарь-сантехник

Send message

и Firebird SQL Server

Reading time6 min
Views13K


     О чем это


Являясь автором модуля подключения к Firebird для NodeJS, я долго откладывал публикацию о нем, считая, что модуль еще достаточно сырой. Кроме того, развитие модуля несколько застопорилось, поскольку весь необходимый мне функционал в нем уже присутствует (однако он еще далек от универсальности).
Время от времени только возникает необходимость исправить выявленную ошибку или подправить что-то для обеспечения совместимости с последней стабильной версией NodeJS. Надо сказать, что модуль не является популярным ввиду направленности NodeJS сообщества на NoSQL решения. А Firebird сообщество, видимо, смотрит на NodeJS с осторожностью, да и не такое уж оно и большое. К тому же довольно часто Firebird используется в связке с Delphi на платформе Windows, так что заинтересовать кого-либо из работающих под Windows специфичным Linux решением тоже тяжело. Однако, недавнее значительное продвижение проекта NodeJS в сторону поддержки Windows дало надежду на привлечение внимания таких людей к проекту. Эта публикация будет посвящена тому, как можно работать с Firebird из NodeJS. Будут даны инструкции по установке для Linux и Windows, примеры типовых сценариев работы. Топик, однако, рассчитан на тех, кто хоть немного знаком с Firebird (необходима рабочая копия сервера БД для экспериментов). Для тех, кто не знаком с Firebird, в конце публикации будут даны ссылки на ресурсы для изучения.

Заинтересовавшимся — добро пожаловать под кат.
Читать дальше →

Tinyicon — счетчик в favicon на js

Reading time1 min
Views4.2K
Tinyicon это небольшая библиотека для манипуляции с favicon сайта для передачи информации о новых событиях. Для браузеров не поддерживающих canvas счетчик отображается в title страницы.

image

Примеры и ссылки инсайд

Remote Follow Focus на Arduino

Reading time3 min
Views19K
Однажды я решил сделать Remote Follow Focus для своей камеры. Это система которая позволяет фокусировать объектив с некоторого расстояния. Таким образом камера может находится на кране, стедикаме или на плече у оператора и при этом оператор фокуса (focus puller) имеет возможность крутить фокусировочное кольцо на объективе удаленно. Идея родилась сама собой когда я смотрел что можно сделать при помощи Arduino.


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

Метод Виолы-Джонса (Viola-Jones) как основа для распознавания лиц

Reading time15 min
Views186K
Хотя метод был разработан и представлен в 2001 году Полом Виолой и Майклом Джонсом [1, 2], он до сих пор на момент написания моего поста является основополагающим для поиска объектов на изображении в реальном времени [2]. По следам топика хабраюзера Indalo о данном методе, я попытался сам написать программу, которая распознает эмоцию на моём лице, но, к сожалению, не увидел на Хабре недостающей теории и описания работы некоторых алгоритмов, кроме указания их названий. Я решил собрать всё воедино, в одном месте. Сразу скажу, что свою программу успешно написал по данным алгоритмам. Как получилось рассказать о них ниже, решать Вам, уважаемые Хабрачитатели!
Добро пожаловать под кат!

Оповещение от Nagios по телефону через Asterisk

Reading time5 min
Views7.2K
Прочитал вчера статью Google translate+Asterisk IVR и подумал — «Клёво! Можно пользоваться для быстрого создания звуковых файлов при заведении новых хостов и сервисов в Nagios!».

Затем задался вопросом, а описано ли где-то как настроить оповещения по телефону для Nagios? Погуглив немного я нашел пару статей, прочитал их и понял, что решения описанные там обладают рядом недостатков:
  • Nagios и Asterisk должны быть установлены на одном сервере.
  • Требуется локальная установка движка по синтезу речи.
  • Телефон админа «зашит» в скрипт и он получает ВСЕ уведомления.
Вот я и решил поделиться своим решением, которое использую уже не первый год.
Читать дальше →

Linux на службе у провайдера

Reading time4 min
Views12K


Просмотрев большинство тематических постов на хабре был безмерно удивлён тому факту, что крайне скудно освещена тема использования ОС Unix/Linux на службе интернет провайдеров (Internet service provider). Данной статьёй я частично попытаюсь восполнить данный пробел.
Читать дальше →

Настройка свитчей уровня доступа в сети провайдера

Reading time4 min
Views249K
В статье я расскажу о том, как мы (небольшой региональный провайдер) настраиваем коммутаторы уровня доступа.

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

Тонкости 9-patch ресурсов

Reading time3 min
Views6.7K
В этой заметке пойдет речь о неочевидных особенностях работы 9-patch структур, использующихся в Андроиде для создания «растягивающихся» элементов графического оформления.

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

Голосовое дерево на Asterisk своими руками

Reading time4 min
Views104K
image

Доброго времени суток хабражители.

Хотелось бы поделиться опытом развертывания голосовых деревьев (IVR), с помощью Asterisk.
Для этого нам понадобится:
  • Машина с установленным Asterisk`ом
  • Телефонный номер, заведенный в Asterisk посредством SIP/H.323 от провайдера ip-телефонии, либо посредством аналоговой линии/цифрового потока Е1 через платы Digium
Читать дальше →

Временное переключение WIFI в режим точки доступа

Reading time3 min
Views36K
Представьте, что вы поехали в другую страну, у вас собой есть смартфон и вам очень нужно зайти с него в интернет (например синхронизировать контакты или поставить какой-то софт). Какие есть варианты?
— Первый вариант — это мобильный интернет. К сожалению, это не всегда просто и не всегда дёшево.
— Второй вариант — WIFI. Вам повезло, если вы можете подключиться к WIFI там, куда вы прибыли, и в этом случае задача уже решена.
— Третий вариант — LAN. А что если у нас есть только LAN? Самое простое — это захватить с собой из дома небольшую точку доступа, но что если вы её не взяли с собой или у вас её нет? В этос случае вам поможет случайно захваченный с собой ноутбук или нетбук :)

Имеем


— EeePC 901 с Ubuntu 10.10
— Смартфон
— Локальная сеть

Задача


— Получить доступ в сеть со смартфона используя WIFI
Читать дальше →

Медиа-сервер, собираем своими руками из найденного в «закромах родины»

Reading time6 min
Views52K
Кризис! Работы мало, времени много… никто не мешает навести порядок в закромах.

В результате получился полноценный мультимедиа компьютер с огромным экраном, беспроводной клавиатурой, мышкой, WiFi. С торрент качалкой, файло-помойкой, персональный веб-сервер. И все это под управлением страшной операционной системы Linux. Компактный корпус и уровень шума не мешает спать.
image
Читать дальше →

Мультидоменный сервер nginx -> apache

Reading time3 min
Views9.6K
Приветствую! Размещаю по просьбе друга статью.
У него к сожалению пока нет регистрации на хабе, а у меня мало кармы что бы выслать приглашение.
Если есть возможность и понравились статья вышлите ему инвайт, или можно попробовать поднять мне карму что бы я мог выслать ему инвайт.

Итак задача:
Организовать удобное администрирование многодоменного web сервера.
Модель системы: linux -> nginx -> apache -> php -> mysql.

Раньше у меня для каждого домена были отдельные конфиги для nginx и apache,
и для добавления нового хоста требовалось добавить как минимум 2 конфига.

Работа была организована удобно. По сути, были 2 скрипта. 1 для добаления хоста к nginx, другой для apache. (ещё есть скрипт добавления хоста в bind но это другая история).

Но и это было не удобно в условия добавления удаления хостов… иногда забыл nginx прописать, иногда в апаче чтото не то…
Решено было следующим образом:

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

Ошибки конфигурирования nginx (или как правильно писать рерайты)

Reading time4 min
Views100K
Привет, хабралюди!

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

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

Ошибка номер 1, самая фатальная.

Отдаём статику nginx'ом

Reading time2 min
Views5K
Начиная с версии 0.8.11 в nginx появилась новая возможность для раздачи статики — использование AIO (Asyncronous Input-Output — неблокирующий ввод-вывод) для Linux и FreeBSD.

Чем это событие знаменательно? До этого момента nginx использовал неблокирующий режим только при работе с сетью — любая работа с файлами блокировала рабочий процесс. К чему это приводило? Если у вас есть много разного контента, который не весь находится в кэше ОС (фотохостинг, etc) — то рано или поздно все 50, 150, 200 процессов будут ждать дисковые операции и не смогут обслужить нового клиента — даже если нужный ему контент можно отдать из файлового кэша или запросить с бэкенда.

Как с этим боролись раньше?

nginx, ещё раз про кэширование

Reading time3 min
Views14K
Иногда скорость роста проекта несколько выше чем скорость оптимизации веб-приложения или приобретение более мощного оборудования под backend.

Наиболее простая схема «распараллеливания» нагрузки — вынос основной нагрузки на несколько frontend. Раньше приходилось мучиться (или наслаждаться, кому как) с webdav'ами, кластерными ФС и прочими хитростями чтобы обеспечить актуальную информацию, так было до тех пор, пока не появился nginx, а точнее proxy_store и proxy_cache в нём.

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

Установка PHP-FPM на Debian из пакетов

Reading time3 min
Views13K
PHP-FPM — патч к PHP, предоставляющие альтернативный интерфейс FastCGI. Обычно используется с nginx в проектах с высокими нагрузками или дефицитом ресурсов. Для удобной и упрощенной инсталляции мы собрали PHP-FPM в пакет для Debian 5 Lenny. Последнюю пару недель тестировали и тюнили, сейчас выложили в публичный доступ. Над пакетами в поте лица трудился viliar, которому дружно направляем за это благодарности и карму. Багрепорты и замечания приветствуются, лучше комментами к посту.

Инструкция по установке


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

Ресайз изображений на лету

Reading time9 min
Views20K
Практически в любом веб-приложении использующем изображения существует потребность формировать уменьшенные копии этих изображений, причем зачастую, форматов дополнительных изображений несколько.
Так же вызывает некоторую головную боль добавление новых размеров на существующем приложении. Отсюда задача:
Читать дальше →

nginx + apache. Кеширование

Reading time4 min
Views20K
Привет, %username%
Тут я хочу рассказать о том, как я настраивал кеширование на одном сервере, точнее VDS. Характеристики сервера: 2000MHz, 2GB RAM, 80Gb HDD, технология виртуализации — OpenVZ.
Было решено использовать Nginx версии 0.7.64. На сервере находилось около 200 сайтов. И несколько высоко нагруженных проектов. Вот эти самые проекты и давали ощутимые тормоза и нагрузку на сервер. Мы будем рассматривать DLE в этом примере.
Читать дальше →

Up the pool

Reading time1 min
Views1.9K
Я программист. Поэтому, меня всегда потрясают вещи, которые «просто работают». Это чувство у меня было и когда я знакомился с Erlang Pool. Настройка требует некоторого внимания, но после, механизм оказывается «оскорбительно» простым.
Читать дальше →

TOP'ай сюда

Reading time5 min
Views184K
Обзор практически всех *top утилит под linux (atop, iotop, htop, foobartop и т.д.).

top

Все мы знаем top — самую простую и самую распространённую утилиту из этого списка. Показывает примерно то же, что утилита vmstat, плюс рейтинг процессов по потреблению памяти или процессора. Совсем ничего не знает про загрузку сети или дисков. Позволяет минимальный набор операций с процессом: renice, kill (в смысле отправки сигнала, убийство — частный случай). По имени top суффикс "-top" получили и все остальные подобные утилиты в этом обзоре.

atop


Atop имеет два режима работы — сбор статистики и наблюдение за системой в реальном времени. В режиме сбора статистики atop запускается как демон и раз в N времени (обычно 10 мин) скидывает состояние в двоичный журнал. Потом по этому журналу atop'ом же (ключ -r и имя лог-файла) можно бегать вперёд-назад кнопками T и t, наблюдая показания atop'а с усреднением за 10 минут в любой интересный момент времени.

В отличие от top отлично знает про существование блочных устройств и сетевых интерфейса, способен показывать их загрузку в процентах (на 10G, правда, процентов не получается, но хотя бы показывается количество мегабит).

Незаменимое средство для поиска источников лагов на сервере, так как сохраняет не только статистику загрузки системы, но и показатели каждого процесса — то есть «долистав» до нужного момента времени можно увидеть, кто этот счастливый момент с LA > 30 создал. И что именно было причиной — IO программ, своп (нехватка памяти), процесор или что-то ещё. Помимо большего количества информации ещё способен двумя цветами подсказывать, какие параметры выходят за разумные пределы.
Читать дальше →

Information

Rating
Does not participate
Location
Параньга, Марий Эл, Россия
Date of birth
Registered
Activity