Pull to refresh
106
0
juks @juks

Пользователь

Send message
Такой подход чем-то похож на вариант для владельца сайта радикально оппозиционной настроенности: постоянно на колёсах :-)
Да, только если на сервере perl просто присутствует, придётся потратить некоторое время на настройку CPAN и установку модулей.
не базы, а таблицы я хотел сказать
Я бы сказал, что с индексами, конечно больше :-)

clyde# du -h ./superhabr
2.8G ./superhabr

InnoDb базы хранятся в отдельных файлах (innodb_file_per_table = 1)
Спасибо, надо будет изучить
Потому что InnoDB
Такой, что дамп её занимает 1.1G.
Хотя на Хабре больше популярны скриптовые языки, однако основы — должны знать все ;)


Я тут недавно стал вникать в C-код после большого перерыва и понял, что скриптовые языки потихоньку делают меня дебилом.
Кстати, вспомнил.

У крона ведь дискретность одна минута, у Memcached — секунда. Даже при периоде в 5 секунд, время от времени имеет место некоторая «раскачка» нагрузки от сервера к серверу.

Так что если выносить, то надо делать отдельный демон.
у нас есть сервер Gena
$users = new HabrUsers();
$user = $users->getOne(array('login'=>$login));

echo $user['email'];
Это базовый класс низкого уровня. В проекте думать про соединение вообще не надо.

Clyde: два Xeon 1.6 по 4 ядра в каждом. 6 гигабайт памяти, два SAS диска по 74 гигабайта. FreeBSD 6.2. Mysql 5.0.67
Я думаю, что это уже на любителя. Я стараюсь делать меньше крон-задач, меньше нагромождения.

Текущая реализация схожа по работоспособности с тем, что вы предлагаете, просто действует «on demand». Как-нибудь, может напишу про smartGet и smartSet, там всё элементарно, но в действительности спасает от лишних запросов к базе.

Если не кешировать запросы вообще, то это добавляет по 20% нагрузки CPU на каждый сервер. С кешированием дополнительная нагрузка незаметна. Как получить отдельно число работающих тредов без сбора всей статистики целиком я так и не нашёл.
mysql> show slave status\G
*************************** 1. row ***************************
Slave_IO_State: Waiting for master to send event
Master_Host: 10.0.0.3
Master_User: replication
Master_Port: 3306
Connect_Retry: 10
Master_Log_File: clyde-relay-bin.000011
Read_Master_Log_Pos: 698473286
Relay_Log_File: bonnie-relay-bin.000022
Relay_Log_Pos: 698473429
Relay_Master_Log_File: clyde-relay-bin.000011
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
Replicate_Do_DB: superhabr
Replicate_Ignore_DB:
Replicate_Do_Table:
Replicate_Ignore_Table:
Replicate_Wild_Do_Table:
Replicate_Wild_Ignore_Table:
Last_Errno: 0
Last_Error:
Skip_Counter: 0
Exec_Master_Log_Pos: 698473286
Relay_Log_Space: 698473429
Until_Condition: None
Until_Log_File:
Until_Log_Pos: 0
Master_SSL_Allowed: No
Master_SSL_CA_File:
Master_SSL_CA_Path:
Master_SSL_Cert:
Master_SSL_Cipher:
Master_SSL_Key:
Seconds_Behind_Master: 0
1 row in set (0.00 sec)
Можно конечно :-)

Я вообще хотел написать про это, собрать фольклёр, что ли, но решил что как-то глупо.

Одно из требований к названию это то, что его должны хорошо воспринимать по телефону люди из датацентра :-)
уже есть :-)
Отставание пока нет, надо конечно, но пока только статус. В деле существенное отставание бывает только когда слейв догоняет мастера после восстановления репликации
не один нормальный MySQL load-balancer, боюсь, за несколько часов не поставить. У них у большинства имеются свои ограничения на программную часть, как минимум, скорее всего придётся писать свой межсерверный join

Information

Rating
Does not participate
Location
Удельная, Москва и Московская обл., Россия
Date of birth
Registered
Activity