Чтобы было понятно о чем речь, прикладываю 3 скринкаста, второй и третий под катом.
Никита Киприянов @merlin-vrn
Пользователь
Повышение производительности netfilter, использование ipset
3 min
40Kiptables — интерфейс к файрволу Linux (netfilter). При большом количестве правил iptables нагрузка может быть достаточно высокой и создавать проблемы. В этой заметке я постараюсь описать, что влияет на производительность iptables и как ее повысить.
+68
Числа, которые должен знать каждый программист
1 min
17KTranslation
Чтобы было понятно, на чём следует концентрироваться при оптимизации, слайд из доклада «Создание программных систем в Google и его уроки»:
+52
IPoE, а также Client-VLAN и DHCP Option 82
5 min
84KВ этой статье я опишу что из себя представляет технология доступа в Интернет IPoE, которой на самом деле не существует. А также расскажу про схему Client-VLAN и про опцию 82 DHCP (DHCP Option 82), которые стали неотъемлемой частью этой несуществующей технологии. Все это, конечно же, с технической точки зрения и с примерами конфигов.
+34
Еще раз об архитектуре сетевых демонов
13 min
19KВо многих статьях, в том числе на хабре, упоминаются и даже описываются разные способы построения архитектуры сетевых сервисов (демонов). При этом мало у кого из авторов есть реальный опыт создания и оптимизации демонов, работающих с десятками тысяч одновременных соединений и/или гигабитным трафиком.
Так как большинство авторов не удосуживается хотя бы залезть в документацию, то обычно в таких статьях вся информация базируется на неких слухах и пересказах слухов. Эти слухи бродят по сети и поражают википедию, хабрахабр и другие уважаемые ресурсы. В результате получаются опусы вроде "Вы наверное шутите, мистер Дал, или почему Node.js" (пунктуация автора сохранена): она, в основном, верная по сути, но изобилует неточностями, содержит ряд фактических ошибок и изображает предмет с какого-то непонятного ракурса.
Мне было сложно пройти мимо статьи, изобилующей фразами вроде «эффективные реализации polling'а на сегодняшний день имеются лишь в *nix-системах» (как будто poll() есть где-то, кроме некоторых *nix). Этот пост начинался как комментарий, разъясняющий уважаемому inikulin ошибки в его статье. В процессе написания оказалось, что проще изложить предмет с самого начала, что я собственно и делаю отдельным постом.
В моем очерке нет срыва покровов или каких-то неизвестных трюков, здесь просто описываются преимущества и недостатки разных подходов человеком, который проверял, как всё это работает на практике в разных операционных системах.
Для желающих просветиться — добро пожаловать под кат.
Так как большинство авторов не удосуживается хотя бы залезть в документацию, то обычно в таких статьях вся информация базируется на неких слухах и пересказах слухов. Эти слухи бродят по сети и поражают википедию, хабрахабр и другие уважаемые ресурсы. В результате получаются опусы вроде "Вы наверное шутите, мистер Дал, или почему Node.js" (пунктуация автора сохранена): она, в основном, верная по сути, но изобилует неточностями, содержит ряд фактических ошибок и изображает предмет с какого-то непонятного ракурса.
Мне было сложно пройти мимо статьи, изобилующей фразами вроде «эффективные реализации polling'а на сегодняшний день имеются лишь в *nix-системах» (как будто poll() есть где-то, кроме некоторых *nix). Этот пост начинался как комментарий, разъясняющий уважаемому inikulin ошибки в его статье. В процессе написания оказалось, что проще изложить предмет с самого начала, что я собственно и делаю отдельным постом.
В моем очерке нет срыва покровов или каких-то неизвестных трюков, здесь просто описываются преимущества и недостатки разных подходов человеком, который проверял, как всё это работает на практике в разных операционных системах.
Для желающих просветиться — добро пожаловать под кат.
+157
Большие потоки трафика и управление прерываниями в Linux
4 min
64KВ этой заметке я опишу методы увеличения производительности линуксового маршрутизатора. Для меня эта тема стала актуальна, когда проходящий сетевой трафик через один линуксовый маршрутизатор стал достаточно высоким (>150 Мбит/с, > 50 Kpps). Маршрутизатор помимо роутинга еще занимается шейпированием и выступает в качестве файрволла.
+97
Если нет денег на AXIS, или управляемая вебкамера своими, в меру кривыми, руками
6 min
42KКогда я впервые увидел трансляцию видео с управляемой вебкамеры на 13-м этаже МГУ, меня это очень впечатлило. Настолько, что захотелось устроить нечто аналогичное. На камеры типа AXIS 214PTZ лишних денег у меня нет, так что пришлось на некоторое время эту идею оставить. До тех пор, пока я не узнал про Arduino и про то, что к ней можно приделать «сетевую карту» и моторчики. Необходимые комплектующие быстренько были приобретены и у меня в наличии оказалось всё для сооружения полноценной вебкамеры, управляемой по сети.
Изучение интернетов показало что идея приделать камеру к сервам приходит первой ко всем счастливым обладателей ардуины и сервомашинок. Однако, ни одна из уже реализованных схем управления (кнопками, мышкой PS/2, с управляемого роутера, с компа, с вебстранички на встроенном в ардуину сервере) меня не впечатлило, ибо неудобно, имхо. Хотелось чего-то универсального, чтобы можно было выложить веб-интерфейс на сайт и с него управлять.
В итоге появилась вот такая штукенция:
Изучение интернетов показало что идея приделать камеру к сервам приходит первой ко всем счастливым обладателей ардуины и сервомашинок. Однако, ни одна из уже реализованных схем управления (кнопками, мышкой PS/2, с управляемого роутера, с компа, с вебстранички на встроенном в ардуину сервере) меня не впечатлило, ибо неудобно, имхо. Хотелось чего-то универсального, чтобы можно было выложить веб-интерфейс на сайт и с него управлять.
В итоге появилась вот такая штукенция:
+239
ICQ — платить за каждого пользователя альтернативного клиента?
2 min
1.8KСегодня в блоге Экслера появилась любопытная запись, откуда можно узнать об аппетитах нового владельца ICQ.
Как вы знаете, недавно компания DST (ныне — «Mail.ru Group») купила один из популярнейших сервисов — ICQ. Также под управлением компании находится ряд других популярных проектов, таких, как «Mail.ru» и «Одноклассники».
Так вот, данная контора продолжает давно начатую борьбу с альтернативными клиентами. Только если ранее AOL путем изменения протокола делала неработоспособными те или иные клиенты, то теперь владельцы службы начинают требовать с владельцев неофициальных клиентов денег за каждого пользователя.
Как вы знаете, недавно компания DST (ныне — «Mail.ru Group») купила один из популярнейших сервисов — ICQ. Также под управлением компании находится ряд других популярных проектов, таких, как «Mail.ru» и «Одноклассники».
Так вот, данная контора продолжает давно начатую борьбу с альтернативными клиентами. Только если ранее AOL путем изменения протокола делала неработоспособными те или иные клиенты, то теперь владельцы службы начинают требовать с владельцев неофициальных клиентов денег за каждого пользователя.
+132
Настраиваем принтер Canon LBP3010 в Ubuntu 10.10
4 min
18KЯ почти полтора месяца пытался заставить работать этот принтер (за это время я даже успел перейти на сборку PinguyOS, обзор которой, возможно, скоро будет). И никаких успехов я не достиг в этом, но лишь до сегодняшнего дня. Пару дней назад я стал искать свежие мануалы по настройке этого принтера и сопоставив их, мне удалось сделать задуманное.
И теперь я хочу поделиться работающим решением с хабрасообществом. Я надеюсь, что эта информация окажется полезна.
Перед выполнением всех пунктов инструкции принтер лучше держать в выключенном состоянии.
Итак, первым пунктом я предлагаю воспользоваться скриптом по автоматической настройке (что, правда, у меня не заработало, однако это наиболее простой метод установить сами драйвера) принтера, который можно скачать тут.
Далее, распаковываем архив и запускаем имеющийся скрипт (вы должны находиться в терминале в той папке, в которой и лежит интересующий нас скрипт — canonLBP_install.sh) следующей командой (в терминале):
sudo ./canonLBP_install.sh LBP3010
Это установить все необходимые драйвера, а также некоторые дополнительные пакеты из числа зависимостей — очень удобно.
Далее идём в Система — Администрирование — Печать и удаляем там появившийся принтер, он нам больше не понадобится.
После этого запустим ещё одну команду в терминале:
+3
Кроссплатформенный зловред: Linux, MacOS, Windows
2 min
5.6KУчитывая недавний спор и требования показать вирус не под Windows, позволю себе небольшой перевод интересного блога Джерома Сегуры, специалиста по безопасности компании ParetoLogic.
+59
HowTo: Skype-шлюз на базе FreeSwitch
8 min
29KВ этой статье я бы хотел рассмотреть создание SIP<->Skype шлюза для проброса входящих skype-вызовов на корпоративную IP АТС (в данном случае это будет Asterisk). Так как Skype на данный момент является, пожалуй, самым популярным клиентом VoIP среди пользователей, возможность позвонить в Вашу компанию через Skype будет дополнительным плюсом для клиентов.
+36
Минэкономразвития России об использовании свободного программного обеспечения
2 min
7.8KУвидев на хабре топик про то, что веб-форма писем Президенту работает, тоже решил воспользоваться этой замечательной возможностью и получить официальные разъяснения по-поводу использования свободного программного обеспечения. В частности, меня интересовала законность установки операционной системы Linux во благо моего небольшого IT бизнеса.
24 февраля зашел на сайт президента Российской Федерации и отправил вопрос (текст, к сожалению, не сохранил).
26 марта получил правительственное письмо о том, что мое обращение передано в Министерство экономического развития.
И наконец сегодня, рядом с пухленьким конвертом со свежим CD Ubuntu, обнаружил в почтовом ящике
24 февраля зашел на сайт президента Российской Федерации и отправил вопрос (текст, к сожалению, не сохранил).
26 марта получил правительственное письмо о том, что мое обращение передано в Министерство экономического развития.
И наконец сегодня, рядом с пухленьким конвертом со свежим CD Ubuntu, обнаружил в почтовом ящике
+169
Three Futamura Projections и не только
7 min
11KПривет, хабрачеловек. Сегодня я расскажу тебе про некоторые фундаментальные вещи в computer science: частичные вычисления, три проекции Футамуры и суперкомпиляцию.
1. Сразу к коду
-- функция, которая возводит x в степень y (неотрицательную)
power x y =
case y of
0 → 1
1 → x
_ → x * (power x (y - 1))
+108
Постраничная навигация с MySQL при большом количестве записей
7 min
41KРано или поздно многие крупные проекты сталкиваются с проблемами производительности при постраничной навигации по записям. Некоторые из них решают эту проблему ограничением количества доступных для просмотра записей (скажем, не больше 1000). Вполне приемлемое решение. Но в этом случаем могут возникнуть проблемы с индексированием сайта сторонними поисковиками, которые и представляют наибольшую угрозу. В этой статье я хотел бы отказаться от привычной для всех панели навигации вида «1..2..3..4..» в пользу простой «вперед… назад» (будет проще объяснить), но это не проблема реализовать подобное и с первым вариантом.
Более точно определить тему, назвав, какое количество записей считать достаточно большим для появления тормозов, не получится, так как эта цифра для всех разная и сильно зависит от того, насколько быстрые у Вас жесткие диски, сколько памяти, и какая часть Ваших данных уже закеширована в ней и тд. Но если Вы и Ваши сервера ощущают, что n-ная страница при выводе даётся тяжелее первой, и при этом не знаете, что с этим делать – статья для Вас. Но для начала, я хотел бы на пальцах объяснить, почему ОНО работает медленно.
Кстати, тест происходит на виртуальной машинке, работаю я с СУБД под рутом, версия MySQL – 5.0.32.
Более точно определить тему, назвав, какое количество записей считать достаточно большим для появления тормозов, не получится, так как эта цифра для всех разная и сильно зависит от того, насколько быстрые у Вас жесткие диски, сколько памяти, и какая часть Ваших данных уже закеширована в ней и тд. Но если Вы и Ваши сервера ощущают, что n-ная страница при выводе даётся тяжелее первой, и при этом не знаете, что с этим делать – статья для Вас. Но для начала, я хотел бы на пальцах объяснить, почему ОНО работает медленно.
Кстати, тест происходит на виртуальной машинке, работаю я с СУБД под рутом, версия MySQL – 5.0.32.
+131
Боремся с ручным спамом в блогах при помощи Parasite Eliminator (с 10 ноября сервис открыт для всех желающих)
4 min
1.6KИтак, свершилось то, чего так долго ждали некоторые посвященные блоггеры. Я открыл для всех желающих Parasite Eliminator – сервис и плагин для Wordpress, благодаря которым в моих блогах нет ручного спама.
10 ноября 2008 года – это черный день российских блогоспамеров (у зарубежных будет другой черный день, я еще не знаю, когда сделаю международную версию плагина).
10 ноября 2008 года – это черный день российских блогоспамеров (у зарубежных будет другой черный день, я еще не знаю, когда сделаю международную версию плагина).
Как оно работает
+93
Information
- Rating
- Does not participate
- Location
- Россия
- Date of birth
- Registered
- Activity