Асинхронный сервер: C или Python?

Здравствуйте, нам требуется сделать сервер для браузерной игры, рассчитанный на высокие нагрузки. Клиент у нас на Flash. Ожидаемый онлайн > 100к.
Сервер мы хотим сделать так, чтобы он эффективно справлялся со следующими задачами:
1) Асинхронно принимать запросы, сохранять данные в БД, отправлять ответы;
2) Данные могут поступать на сервер в большом кол-ве, точнее с большой частотой, возможно даже очень большой, поэтому возникает потребность в быстрой БД;
3) Сервер должен масштабироваться горизонтально.

Мы очень колеблемся относительно того, на чем его писать. С одной стороны быстрый, но тяжелый в написании «Cи», с другой стороны простой и удобный Python. Поскольку опыта с высоко нагруженными системами у нас мало, мы не можем с уверенностью для себя решить, как же поступить сейчас, чтобы не прогадать потом…

Поэтому мы хотели бы спросить помощи у хабралюдей, которые возможно имели подобный опыт. Мы бы хотели узнать, на каком языке нам лучше остановиться, какую лучше взять БД, воспользоваться ли каким-либо фреймворком? Мы очень боимся прогадать, а статьи в сети дают еще больше вопросов, нежели ответов.

Мы будем признательны любому совету или возможно даже личному опыту.
Заранее спасибо!

Оптимальная организация домашнего медиа-сервера?

Захотелось себе для дома приобрести такую чудесную штуку как HP Microserver для того чтобы использовать его в качестве хранилища/качалки/медиа-библиотеки

Понятно что можно просто взять, поставить винду или линукс, настроить, раскрутить и всё будет замечательно.

но поскольку познаний в линукс гораздо меньше чем в винде, а изучить и пользоваться хочется, поэтому и хотелось бы для этого поставить на микросервер несколько виртуальных машин, благо поддержка виртуализации имеется и процессор не самый слабый (мощнее иона получается) (AMD N40L)

1.Мало того, плюсы виртуалки мне видятся в том, что я ставлю гипервизор, поднимаю гостевые ОС и могу ставить аппарат в угол только включенным в 220/lan, а сам по сети могу сколько угодно поднимать/ронять/перегружать/всё что угодно, так?
2. Если делать виртуалки, то какой гипервизор предпочесть?

хочется чтобы виртуальные машины помещались просто в контейнер в ФС и их можно было бекапить/убивать/создавать
3. В качестве дистрибутива для экспериментов выбрал пока Zentyal

может есть что то лучше?
Читать дальше

1С на собственном сервере

Приветствую!

Подскажите пожалуйста, какое ПО необходимо использовать, чтобы 1С (Бухгалтерия 8 базовая) работала на сервере через удаленный доступ (максимум 2-3 человека)?

Есть свой сервер на Debian 5 (консоль), на котором крутится некоторое количество сайтов. Возникает ряд вопросов:

1) Нужно ли для 1С устанавливать отдельную виртуальную систему или имеет смысл использовать ту же систему, обслуживающую сайты?
1.1) Если нужна виртуальная система, то нужен ли ей выделенный IP?
1.2) Какую систему виртуализации лучше использовать?
2) Нужны ли для 1С рабочие X11 и Wine для работы в Debian?
3) Как лучше всего настроить удаленный доступ к 1С (гостевые системы — WinXP, Win7, Ubuntu 10.4)?
4) Как обезопасить удаленное соединение?

Может кто-то знает как это все заставить работать на практике?

nginx и права на доступ для /home/zinter..

Люди, подскажите — чуть застрял по работе:
Ubuntu 11.10 поднят Nginx + php-fpm.
Машина девелоперская.
В папке пользователя /home/zinter/projects лежат коды сайтов.
Пользователь www-data добавлен в группу юзверей zinter
sudo gpasswd -a www-data zinter
, однако он не видит /home/zinter/projects/*
Как победить?

Ошибка Java Could not reserve enough space for object heap?

Ошибка
Error occurred during initialization of VM
Could not reserve enough space for object heap

возникает и исчезает как-то спонтанно время от времени. С чем это может быть вызвано?

На любое действие, будь то java или java -version

Windows 2008 Server R2

Как произвести горячую замену дисков в RAID1 с помощью mdadm в Ubuntu Server 10.04?

Дано:
сервер с возможностью горячей замены hdd
2 hdd
ubuntu server 10.04, при установке был создан RAID1 для корневого раздела и раздела подкачки по мануалу с офф.сайта убунты не могу найти статью-оригинал, но вот тут liski.vsi.ru/ubuntu/index.php?page=33 описан аналогичный алгоритм установки

Вопросы:
Как убедиться, что после выхода одного из дисков система останется работоспособной? Продолжить работать и перезагружаться
Как заменить вышедший из строя диск без остановки системы?
Как добавить «третьим» запасной диск, который будет автоматически/вручную задействован после выхода из строя одного из дисков
Как настроить оповещение на email, о необходимости замены (выходе одного из дисков из строя)

Приведу свои соображения, до которых удалось додуматься самому:
Читать дальше

Проблемы с Hetzner, нужен совет

Приветствую. Скажу сразу — я не гуру админ, я могу поставить софт и как-то базово настроить сервер, но не более.

Вчера мой VPS у Хетцнер внезапно упал.

Сервер перестал отдавать http, ftp\ssh — не коннектится. Пинг не пингует. Т.е. сложилось ощущение что сервер просто отключился. В роботе статус «работает».

Ткнул в роботе «рестарт», получил ошибку:

> The server details could not be determined due to an internal error.
> Please contact our support team by using the contact form on the support page.

Написал в саппорт, в это время ткнул еще несколько раз «выкл» и «вкл», в роботе то выдавалась вышеописанная ошибка, то говорилось что все ок, но при этом сервер также был в дауне.

Зашел в консоль аварийную и увидел там следующее:
Читать дальше

Как настроить DNS на AWS для собственного домена?

Доброго времени суток,

Я приобрел домен на webn**es.ru.

На Amazon настроил ubuntu micro instance и сделал следующую настройку BIND9 на AWS:

1. Добавил строку в конце файла
/etc/bind/named.conf

include "/etc/bind/zones.conf";

2. Создал файл
/etc/bind/zones.conf

zone «мойдомен.ru» {
type master;
file "/etc/bind/мойдомен.ru";
};
Читать дальше

Необходимо решение, которое в случае неработоспособности одного сервера, перенаправит входящий трафик на другой сервер

Есть 4 реальных IР адреса от одного провайдера: 3 IР уже используются (1.1.1.1, 2.2.2.2, 3.3.3.3) на 3х рядом стоящих серверах в его дата-центре и один IР свободен (4.4.4.4)
Есть еще 1 IР (5.5.5.5) от другого провайдера, который используется сервером размещенном в его дата центре.

Допустим клиенты жестко привязаны к IР 1.1.1.1. Необходимо решение, которое в случае неработоспособности 1.1.1.1 перенаправит весь трафик к 5.5.5.5 (другой дата центр).
Знаю что это делает itpables, но загвоздка в том, что он это будет делать когда установлен на 1.1.1.1 и когда этот сервер включен. А необходимо, чтобы была возможность сделать перенаправление даже если сервер 1.1.1.1 выключен. При этом ставить перед ним отдельный сервер который будет этим рулить нежелательно, потому что если он упадет, никакого перенаправления вообще не будет. То есть, делать в этой цепи ГЛАВНОЕ звено нельзя, необходимо быть взаимозаменяемым. Например временно назначать IР 1.1.1.1 рядом стоящему 2.2.2.2 который и будет перенаправлять на 5.5.5.5, а когда 1.1.1.1 вернется к нормальной работе, то вернуть IР и отменять политику фаерволла на 2.2.2.2. Но в этой схеме на каждую машину надо ставить iptables, и следить за ними, чтобы включать и выключать нужные\ненужные фаерволлы. Это не совсем, как я понимаю, правильно.

Подскажите более элегантное решение этой задачи

MySQL протокол

Сижу, разбираюсь с протоколом MySQL по forge.mysql.com/wiki/MySQL_Internals_ClientServer_Protocol
итак, начинаем. Коннектимся, в случае доступности сервера, как и положено, получаем
34 00 00 00 0A 34 2E 31 2E 32 32 00…
( 34 00 00) первые 3 байта — длина пакета
( 00 ) четвертый байт — номер пакета.
далее — версия сервера и прочая инфа по конфигу сервера.(строка с нулём на конце)
НО если вдруг превышен лимит коннектов к серверу — мы получаем от него ошибку «Host '***' is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts', то есть такой пакет:
7C 00 00 00 FF 69 04 48 6F 73 74 20
тут так же, 4 байта — заголовок (длина пакета + номер пакета), но что дальше за три байта?
Как именно отделять пакеты с подобными ошибками от нормальных? откуда эти байты „FF 69 04“? где вообще можно найти полную инфу по всем возможным вариантам ответов сервера? Есть ли opensource проекты реализации mysql протокола? Или может я что-то пропустил когда читал по ссылке выше? Помогите пожалуйста.

p.s. да, я изобретаю велосипед, но он мне сейчас очень нужен :)