понедельник, 27 сентября 2010 г.

Как работает mytop

В процессе разработки web-приложений периодически остро встает вопрос использования ресурсов системы и, в большинстве случаев, базы данных. Наиболее распространенное сочетание это Apache + MySQL + PHP. В данной статье речь пойдет о простой, но очень важной консольной утилите mytop. По сути это клон знакомой любому админу системной утилиты top. Mytop показывает текущее состояние mysql-сервера и использование ресурсов системы. Утилита следит за потоками MySQL -она подключается к серверу MySQL, периодически выполняя команды SHOW PROCESSLIST, SHOW STATUS и отображает сводные результаты, к которым можно применять различные фильтры.
Совместимость.
* Linux (2.2.x, 2.4.x)
* FreeBSD (2.2, 3.x, 4.x)
* Mac OS X
* BSDI 4.x
* Solaris 2.x
* Windows NT 4.x (ActivePerl)
Установка.
Утилита входит в состав большинства дистрибутивов серверных операционных систем (за исключением Windows 2003-2008, там используются свои утилиты для MSSQL). Тем не менее, можно установить mytop из дистрибутива: http://jeremy.zawodny.com/mysql/mytop/
Использование.
Запуск утилиты производится из консоли стандартым синтаксисом команды: mytop -u пользователь -p пароль -d база_данных
(Подробнее о дополнительных параметрах: http://jeremy.zawodny.com/mysql/mytop/mytop.html)
Экран Mytop разбит на 2 части.
Заголовок (верхние 4 строки) содержат суммарную информацию о состоянии вашего MySQL сервера. Он может выглядеть например так:
MySQL on localhost (3.22.32) up 3+23:14:20 [23:54:52]
Queries Total: 617 Avg/Sec: 0.00 Now/Sec: 0.05 Slow: 0
Threads Total: 1 Active: 1 Cached: 0
Key Efficiency: 88.38% Bytes in: 0 Bytes out: 0

  • Первая строка: имя хоста и версия запущенного сервера MySQL. Верххний правый угол - аптайм сервера (время непрерывной работы) дней+часов+минут+секунд.
  • Вторая строка выводит: общее количество обработанных запросов к базе, среднее количество запросов в секунду (производительность сервера), текущее кол-во запросов в секунду (реалтайм) и кол-во медленных запросов.
  • Третья строка показывает информацию о процессах: всего, активных, кешированных. В версиях MySQL ниже 3.23.x эти ззначения остаются нулевыми (сервер не предоставляет такую информацию).
  • Четвертая строка: сведения об эффективности буфера ключей - как часто MySQL находит ключи в буфере, не обращаясь к диску, среднее число байтов, посланных и полученных сервером, и число байтов, пересылаемых в данный момент.

Вторая часть экрана показывает все активные потоки (в том числе тот, который использует MyTop). Здесь выводятся в табличной форме имя пользователя, базы данных и узла, а также текущий запрос и состояние.
Id User Host Dbase Time Cmd Query or State
-- ---- ---- ----- ---- --- --------------
61 jzawodn localhost music 0 Query show processlist


С помощью данной утилиты легко "подсмотреть" кто и что используется сервер БД.

пятница, 24 сентября 2010 г.

Все новинки Google - в одном блоге

Google открыл новый блог, посвященный всем выходящим новинкам. Google New будет освещать и рекламировать все новые проекты и сервисы компании, которые привлекают меньше внимания, чем, к примеру, такие «хиты» как Google Instant Search или звонки в Gmail.

четверг, 26 августа 2010 г.

Учет трафика на роутера Cisco (NetFlow).

Встала задача учитывать трафик как внутри сети, так и его "вынос" в интернет.
Что есть: Cisco 1801 (с перепрошитым образом advanced router 1821-K9/HSEC).
Cамое оптимальное- использовать встроенный в Cisco протокол NetFlow. Т.е. надо настроить циску на трансляцию данных о трафике на какую-то клиентскую машину, на которой установлен коллектор (сборщик) этой инфы. Погуглив, почитав собрал таки неплохую комбинацию:
1. На циске настройки NetFlow
На устройствах cisco Вам понадобится выполнить всего лишь 3 команды. 2 из них – в режиме конфигурирования устройства cisco и 1 в режиме конфигуриования интерфейса. Предположим, что мы хотим собирать статистику с интерфейса FastEthernet 0/0 и отправлять информацию на рабочую станцию администратора с адресом 192.168.0.10 на UDP порт 2205. Сконфигурируем маршрутизатор, для этого в режиме конфигурирования введем:

router(config)# ip flow-export version 5
router(config)# ip flow-export destination 192.168.0.10 2205
Теперь в режиме конфигурирования интерфейса FastEthernet 0/0 введем:

router(config-if)# ip route-cache flow

Остается только установить NetFlow коллектор на рабочую станцию администратора и настроить его на прослушивание порта 2205.
(вся статья http://wolandblog.com/347-netflow-uchet-tr...zatorax-cisco/)

2. Далее встал выбор коллектора (я планировал установку на сервер Win2008 - поэтому платформа Win32/64):
Список всех утилит: http://www.networkuptime.com/tools/netflow/
Я сначала установил NetFlow Analyzer from SolarWinds, но потом оказалось реал-тайм - хорошо, но мне важна история, скажем за месяц, а это уже платно. Затем поставил ManageEngine NetFlow Analyzer. Последний встает как сервис под win2008 и попутно ставит свой мини-веб-сервер (8080) для просмотра статистики через броузер. Очень хорошая штука - пока доволен: мощная, гибкая в настройках.

вторник, 23 марта 2010 г.

Разработка веб-приложений с помощью PNaCl

Проект Google по ускорению разработки веб-приложений Native Client вступил в новую фазу развития. Современные браузеры оснащаются достаточно мощными движками, которые позволяют быстро выполнять программы, написанные на JavaScript, однако перевод этих программ на нативный язык компьютера является трудоемким процессом и значительно замедляет процесс исполнения приложения. Native Client является «мостом» между этими мирами, позволяя коду, полученному из веб выполняться максимально быстро.

Полтора года назад, когда Google анонсировал Native Client, проект мог выполнять только 32-битные программы на процессорах x86. В среду Google анонсировал завершение внедрения новой версии Native Client с поддержкой 64-бит для процессоров x86 и ARM. Эта задача была весьма трудной к техническому исполнению, однако сулит значительный прогресс, так как эти процессоры установлена на большинстве современных компьютеров и смартфонов.

Более того, компания огласила планы по развитию нового, портативного клиента PNaCl (Portable Native Client), который наиболее полно соответствует философии Java, сформулированной Sun Microsystems в выражении «написать раз, исполнять везде». Таким образом, вместо разработки различных модулей Native Client для каждого вида процессора, разработчики могут работать над единственным модулем PNaCl.

TVroid (aka TV-android)

Чем интересна политика Google - так это разноплановостью (хотя и напоминает "хочу таблеток от жадности, да побольше!"). В частности перспективные разработки, куда компания вкладывается - радуют воображение.
Недавно Google заключил партнерство с Intel и Sony с целью создания совместного "продукта", суть которого придать телевидению больше интерактивности. Сама идея интерактивного ТВ очень и очень не нова, а вот способы реализации у всех разные. Google планирует разработать и представлять свою ТВ-платформу по такой же модели как и Android для мобильного рынка – в течение нескольких месяцев он откроет платформу для разработчиков, а первые версии готового продукта поступят в продажу этим летом. Фактически, можно уже ожидать в скором времени появления специальных приложений для TV от сторонних разработчиков.

понедельник, 15 марта 2010 г.

Листья падают...


В эпоху моего детства отрывной календарь являлся неотъемлемым атрибутом практически любого дома. И по его тематике, дизайну, а главное, состоянию - можно было судить о хозяине дома. Рассеянный или нет, аккуратист или пофигист. Элегантную штучку придумали в Дюссельдорфе (Euro RSCG of Duesseldorf, Germany) - календарь, с автоматическим "отстрелом" дней. Причем, дни календаря выполнены в стиле листьев.

Вертикальная архитектура микрочипов


В 1965 году один из основателей компании Intel, Гордон Мур предсказал, что количество транзисторов на кремниевой подложке будет удваиваться каждые два года, что повлечет удвоение производительности и снижение вдвое рыночной стоимости.В настоящий момент мы наблюдаем технологический "стопор" с пределом в 30-20нм.
Компания IBM и Швейцарский Федеральный Институт Технологий предлагают 3х мерную концепцию: не уплотнение кристаллов, а построение вертикальной архитектуры микрочипов.