[lang_en]Monitoring nginx Server Statistics With rrdtool[/lang_en][lang_ru]Сбор Статиcтики О Работе Сервера nginx При Помощи rrdtool[/lang_ru]
29 Apr2006

[lang_en]

Few days ago I have installed nginx on one of our adult projects as reverse proxy server and for static files management. Yesterday this server got 200Mbit/sec traffic and because all admins like to create miscellaneous graphs, I have decided to draw nginx stats on graphs to see server load not only in megabits and load averages. As the result, I have created perl script, which uses RRDs perl module to create and manage rrd-database and very beautiful graphs.

[/lang_en]

[lang_ru]

Неcколько дней тому назад я установил nginx на одном из своих adult-проектов как reverse proxy server и сервер для раздачи статичечких файлов. Вчера, когда трафик с этого сервера достиг 200Mbit/сек и, наверное, потому, что все админы любят рисовать графики, я решил отобразить статистику работы сервера nginx на графиках чтобы увидеть загрузку не только в мегабитах и системных параметрах загрузки сервера. В результате работы над этими графиками родился скрипт на perl, использующий модель RRDs для создания и управления базой rrd и рисования очень красивых графиков.

[/lang_ru]

Read the rest of this entry


[lang_en]Typical Configurations Overview For Nginx HTTP(S) Reverse Proxy/Web Server[/lang_en][lang_ru]Обзор Типичных Конфигураций Для Nginx[/lang_ru]
17 Apr2006

[lang_en]

In one of my previous posts I have described very powerful Unix admin tool – Nginx. As I said, main problem of this server is lack of English documentation. That is why I decided to write this post with list of typical nginx configurations and example configuration snippets for these configurations.

[/lang_en]

[lang_ru]

В одном из предыдущих постов я рассказывал об очень мощном инструменте для Unix-администраторов – web/reverse proxy-сервере Nginx. Как я говорил, одна из главных проблем этого сервера – это недостаточная документированность для англоязычных пользователей. Имнно поэтому я решил написать эту статью, в которой перечислены типичные конфигурации для nginx и приведены примеры конфигурационных файлов для этих ситуаций.

[/lang_ru]

Read the rest of this entry


[lang_en]Using epoll() For Asynchronous Network Programming[/lang_en][lang_ru]Использование epoll() Для Организации Асинхронной Работы С Сетевыми Соединениями[/lang_ru]
13 Apr2006

[lang_en]

General way to implement tcp servers is “one thread/process per connection”. But on high loads this approach can be not so efficient and we need to use another patterns of connection handling. In this article I will describe how to implement tcp-server with synchronous connections handling using epoll() system call of Linux 2.6. kernel.

[/lang_en]

[lang_ru]
Одним из самых распространенных способов реализации серверов tcp является “один поток/процесс на соединение”. Но при высокой нагрузке этот метод может быть не слишком эффективным, и необходимо использовать другие паттерны обработки соединений. В этой статье я расскажу, как реализовать tcp-сервер с синхронной обработкой запросов с помощью системного вызова ecall в ядре Linux 2.6.
[/lang_ru]

Read the rest of this entry


[lang_en]5 Minutes Guide To Linux Traffic Shaping[/lang_en][lang_ru]Linux Traffic Shaping За 5 Минут При Помощи htb.init[/lang_ru]
6 Apr2006

[lang_en]

If you have your own home network with two or more computers, you definitely know all of the problems with concurrent access to internet channel. Most annoying problem is bandwidth sharing: when you are trying to use remote ssh connection to some server, and at the same time your wife/brother/friend decided to watch some new and very cool video clip at Google Video or YouTube, your connection will be stalled and you can forget about comfortable work. In this small article I will give you a simple solution for this problem and you will be able to do anything without worrying about traffic sharing problems!

[/lang_en]

[lang_ru]

Если у Вас есть Ваша собственная домашняя сеть с двумя или более компьютерами и она подключена к интернету, вы точно знаете о тех проблемах с одновременным доступом к сети, которые практически неизбежны при таком подключении. Самой большой и раздражающей проблемой является разделение ширины канала между всеми участниками сети: когда вы пытаетесь работать серез ssh с удаленным сервером, а в этот момент ваша wife/брат/друг решает поглядеть новый и очень классный видео клип с Google Video или YouTube, Ваше соединение замирает и вы можете забыть о комфортабельной работе . В этой маленькой статье я дам вам простое решение этой проблемы, которое позволит вам делать все, что угодно не думая о проблемах разделения трафика!

[/lang_ru]

Read the rest of this entry


[lang_en]Connecting Two Remote Local Networks With Transparent Bridging Technique[/lang_en][lang_ru]Прозрачное Соединение Двух Удаленных Локальных Сетей (Remote Bridging)[/lang_ru]
5 Apr2006

[lang_en]

Sometimes we need to connect two or more geographically distrubuted ethernet networks to one broadcast domain. There can be two different office networks of some company which uses smb protocol partially based on broadcast network messages. Another example of such situation is computer cafes: a couple of computer cafes can provide to users more convinient environment forr playing multiplayer computer games without dedicated servers.

Both sample networks in this article need to have one *nix server for bridging. Our networks can be connected by any possible hardware that provides IP connection between them.

[/lang_en]

[lang_ru]

Часто возникает потребность в соединении нескольких географически разрозненных сетей (ethernet) в единый broadcast domain. Такая потребность, например, может возникнуть при соединении нескольких отделений одной компании, в которой используется smb-протокол (частично основанный на широковещательных сообщениях). Также одним из вариантов использования описываемой схемы являются игровые клубы (несколько клубов одной игровой сети, будучи объединенными в
единое пространство для широковещательных запросов могут обеспечить пользователям возможность сетевой игры без наличия выделенного сервера).

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

[/lang_ru]

Read the rest of this entry