|
Нужна консультация по очень большой нагрузке
|
|||
---|---|---|---|
#18+
Попытаюсь обьяснить суть задачи. Около 150-200кк запросов к серверу в сутки Это около 1700-2300 запросов в секунду. Задача - определить было ли уже в течении 24 часов обращение с одного и того же ИП и желательно сколько раз. Хранить данные более 24 часов ненужно. Что потянет подобную задачу и потянет ли вообще ? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2012, 02:59 |
|
Нужна консультация по очень большой нагрузке
|
|||
---|---|---|---|
#18+
Задача не для СУБД. Копайте в сторону ферм. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2012, 08:37 |
|
Нужна консультация по очень большой нагрузке
|
|||
---|---|---|---|
#18+
авторЭто около 1700-2300 запросов в секунду. Код: sql 1.
тоже запрос. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2012, 08:54 |
|
Нужна консультация по очень большой нагрузке
|
|||
---|---|---|---|
#18+
SERG1257Задача не для СУБД. Да ну?! ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2012, 09:07 |
|
Нужна консультация по очень большой нагрузке
|
|||
---|---|---|---|
#18+
Stinger03Задача - определить было ли уже в течении 24 часов обращение с одного и того же ИП и желательно сколько раз. Хранить данные более 24 часов ненужно. Что потянет подобную задачу и потянет ли вообще ?Сколько раз вообще или сколько раз за последние 24 часа? С какой точностью это нужно делать? Как часто это "определить" должно происходить? Как долго/быстро оно должно происходить? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2012, 10:21 |
|
Нужна консультация по очень большой нагрузке
|
|||
---|---|---|---|
#18+
Stinger03Попытаюсь обьяснить суть задачи. Около 150-200кк запросов к серверу в сутки Это около 1700-2300 запросов в секунду. Задача - определить было ли уже в течении 24 часов обращение с одного и того же ИП и желательно сколько раз. Хранить данные более 24 часов ненужно. Что потянет подобную задачу и потянет ли вообще ? По сути задача сводится к работе с таблицей из двух полей, одно из которых уникальный ключ из целочисленного представления IP-адреса (IPv4 - 4 байта, IPv6 - максимум 16 байт), а вторая - время последнего обращения... Чтобы прикрутить "сколько раз" - ну, добавь еще одно поле с накоплением количества обращений. В итоге - с этой задачей вполне справится ЛЮБОЙ SQL сервер. Выбирать, естественно, лучше из тех, которые "лучше знаешь"... ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2012, 11:37 |
|
Нужна консультация по очень большой нагрузке
|
|||
---|---|---|---|
#18+
Stinger03Попытаюсь обьяснить суть задачи. Около 150-200кк запросов к серверу в сутки Это около 1700-2300 запросов в секунду. Задача - определить было ли уже в течении 24 часов обращение с одного и того же ИП и желательно сколько раз. Хранить данные более 24 часов ненужно. Что потянет подобную задачу и потянет ли вообще ? Добрый день. Довольно-таки примитивная задача для СУБД CACHE. Даже если все это будет установлено на обычный ПК совресенной косплектации Нагрузка на процессор будет 1-3%. Проверено опытом. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2012, 12:57 |
|
Нужна консультация по очень большой нагрузке
|
|||
---|---|---|---|
#18+
Кто бы спорил что запросы на статических данных будут делатся быстро. А как ТС собирается базу обновлять? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2012, 16:58 |
|
Нужна консультация по очень большой нагрузке
|
|||
---|---|---|---|
#18+
SERG1257Кто бы спорил что запросы на статических данных будут делатся быстро. А как ТС собирается базу обновлять? Вы полагаете, что 2300 модифицирующих запросов для СУБД - это нереальные цифры? Автору надо быстро вставлять... ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2012, 17:33 |
|
Нужна консультация по очень большой нагрузке
|
|||
---|---|---|---|
#18+
сори, возможно немного не точно обьяснил. На вебсервер приходит запрос. Мне надо проверить был ли уже запрос с таким ИП в течении суток и сколько раз. Плотность запросов - 1700-2300 в секунду. SERG1257Задача не для СУБД. Копайте в сторону ферм. Если не сложно - что это такое ? Всем отписавшимся спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2012, 18:44 |
|
Нужна консультация по очень большой нагрузке
|
|||
---|---|---|---|
#18+
Stinger03На вебсервер приходит запрос. Мне надо проверить был ли уже запрос с таким ИП в течении суток и сколько раз. Плотность запросов - 1700-2300 в секунду. И как тебе уже сказали: СУБД тут ни к чему. То, что тебе нужно, это простейшее in-memory key-value хранилище. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2012, 18:55 |
|
Нужна консультация по очень большой нагрузке
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovИ как тебе уже сказали: СУБД тут ни к чему. То, что тебе нужно, это простейшее in-memory key-value хранилище.Можно подумать, что "in-memory key-value хранилище" - это не СУБД :) ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2012, 19:14 |
|
Нужна консультация по очень большой нагрузке
|
|||
---|---|---|---|
#18+
pkarklin Вы полагаете, что 2300 модифицирующих запросов для СУБД - это нереальные цифры? Автору надо быстро вставлять...Одиночными инсертами с коммитом? Нет я верю, что вы можете этого добится, я сомневаюсь что РСУБД для этого предназначена. miksoft Можно подумать, что "in-memory key-value хранилище" - это не СУБД :) Не РСУБД. Плюс, забив на ACID, ее можно легко кластеризовать (раскидать по нодам) ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2012, 22:40 |
|
Нужна консультация по очень большой нагрузке
|
|||
---|---|---|---|
#18+
Stinger03 Если не сложно - что это такое ? http://en.wikipedia.org/wiki/Server_farm ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2012, 22:46 |
|
Нужна консультация по очень большой нагрузке
|
|||
---|---|---|---|
#18+
SERG1257Stinger03Если не сложно - что это такое ? http://en.wikipedia.org/wiki/Server_farm это само-собой и так сейчас работает, ибо на каждый полученный запрос формируется 3-4 от нас, обрабатывается с них инфа и выдается наружу. Но вот с некоторыми вопросами статистики выходят затыки. поэтому решил у олла проконсультироватся. коллективный разум оно сподручнее :) ... |
|||
:
Нравится:
Не нравится:
|
|||
21.03.2012, 01:12 |
|
Нужна консультация по очень большой нагрузке
|
|||
---|---|---|---|
#18+
ответьте на вопросы miksoft ... |
|||
:
Нравится:
Не нравится:
|
|||
21.03.2012, 03:25 |
|
Нужна консультация по очень большой нагрузке
|
|||
---|---|---|---|
#18+
miksoftStinger03Задача - определить было ли уже в течении 24 часов обращение с одного и того же ИП и желательно сколько раз. Хранить данные более 24 часов ненужно. Что потянет подобную задачу и потянет ли вообще ?Сколько раз вообще или сколько раз за последние 24 часа? С какой точностью это нужно делать? Как часто это "определить" должно происходить? Как долго/быстро оно должно происходить? Сколько раз за последние 24 часа. если ИП за 24 часа не сделал ни одного запроса данных он считается уникальным. "Определить" должно происходить при каждом запросе данных. Т.е. если есть запрос данных есть надо определить - он уникальный или нет и сколько раз он уже был и от этого планируются дальнейшие действия с ним. Происходить должно очень быстро - время ответа сервера доли секунды ибо он должен дождатся ответов от других серверов и отдать данные обработки максимум за 2-3 секунды. лучше 1-1,5. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.03.2012, 10:54 |
|
Нужна консультация по очень большой нагрузке
|
|||
---|---|---|---|
#18+
miksoftМожно подумать, что "in-memory key-value хранилище" - это не СУБД :) Массив в памяти это БД? А код, который с ним работает это СУБД? Тогда std::map это точно СУБД. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
21.03.2012, 14:04 |
|
Нужна консультация по очень большой нагрузке
|
|||
---|---|---|---|
#18+
2Stinger03 То есть по сути у вас есть Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9.
Вы не ответили за точность - произойдет ли большая беда если там будет плюс минус одна секунда в 24 часов. Что будет если один (только один запрос, и очень редко будет забыт) Нужна ли высокая доступность, что будет если ваша система уйдет в даун (потому как все это очень сильно пахнет кластерами) Что будет если во время форс-мажора (все ноды были обесточены) ляжет весь кластер. (тут вопрос надо ли делать бакап свежевставленных записей на диск или можно просто поднять лишную ноду) Если ошибки в принципе приемлимы (неприятно, но не смертельно) то дорога вам в NoSQL базы, кластеры, распределители нагрузки и бежнодовое взаимодействие. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.03.2012, 16:34 |
|
Нужна консультация по очень большой нагрузке
|
|||
---|---|---|---|
#18+
SERG1257Вы не ответили за точность - произойдет ли большая беда если там будет плюс минус одна секунда в 24 часов. Нет, беды никакой не будет. SERG1257Что будет если один (только один запрос, и очень редко будет забыт) Тоже не смертельно. SERG1257Нужна ли высокая доступность, что будет если ваша система уйдет в даун (потому как все это очень сильно пахнет кластерами) Вряд ли уйдет - сервера стоят в разных странах, не то что в разных ДЦ. Выход 1 сервера не ложит систему - нагрузка распределяется между живыми. Запас пока есть. SERG1257Что будет если во время форс-мажора (все ноды были обесточены) ляжет весь кластер. (тут вопрос надо ли делать бакап свежевставленных записей на диск или можно просто поднять лишную ноду) выше ответил. SERG1257Если ошибки в принципе приемлимы (неприятно, но не смертельно) то дорога вам в NoSQL базы, кластеры, распределители нагрузки и бежнодовое взаимодействие. Ошибки (небольшие) приемлемы. Система по сути работает и без этого, но это очень не оптимальный вариант работы. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.03.2012, 17:30 |
|
Нужна консультация по очень большой нагрузке
|
|||
---|---|---|---|
#18+
SERG1257Вряд ли уйдет - сервера стоят в разных странах, не то что в разных ДЦ. Выход 1 сервера не кладет систему - нагрузка распределяется между живыми. Запас пока есть. Т.е. для сервиса "контроля IP" тоже нужно обеспечивать синхронизацию между ДЦ хотя бы на уровне logshipping? А сколько вообще, в среднем, IP в сутки? А сколько в пике? И какая нагрузка в пике? А то есть у меня подозрение, что при таком сценарии работы любая СУБД будет, де-факто, in-memory и справится с легкостью. Нужно только каким-то образом (специфичном для БД) указать, что локи при update делать не нужно (или, по крайней мере, не нужно их писать на диск). Ну, еще можно включать write cache на дисках (потери при падении, как уже говорилось, не существенны). Основная сложность - синхронизация между ДЦ и автоматическое управление при падении. Какая сейчас РСУБД используется в системе? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.03.2012, 03:36 |
|
Нужна консультация по очень большой нагрузке
|
|||
---|---|---|---|
#18+
Берешь любую СУБД. Создаешь таблицы: Unlogged Tables. Отключаешь у СУБД синхронные commit и flush на диск. Выставляешь в СУБД побольше размеры буфера. Включаешь на диске cache на запись и отключаешь flush. И используешь параметризованные запросы и пулы конектов в php. Ну и используй особенности каждой СУБД. Если допустим используешь PostgreSQL, то используй хэш-индекс. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.03.2012, 13:59 |
|
Нужна консультация по очень большой нагрузке
|
|||
---|---|---|---|
#18+
DPH3SERG1257Вряд ли уйдет - сервера стоят в разных странах, не то что в разных ДЦ. Выход 1 сервера не кладет систему - нагрузка распределяется между живыми. Запас пока есть. Т.е. для сервиса "контроля IP" тоже нужно обеспечивать синхронизацию между ДЦ хотя бы на уровне logshipping? что то будем изобретать наверное... отельно пасиб за то что сразу обратили на это внимание. DPH3А сколько вообще, в среднем, IP в сутки? А сколько в пике? И какая нагрузка в пике? Основная сложность - синхронизация между ДЦ и автоматическое управление при падении. Какая сейчас РСУБД используется в системе? В среднем около 150кк в среднем и до 360кк в пиках в сутки. в сукунду до 10к в пиках, но это редко. среднее что то около 2-3к в секунду. Вобщем то запросы идут относительно ровно. При этих расчетах не используется никакая. Пока для всего что нужно хватает текстовых файлов для расчетов - они небольшие и в основном все считается в памяти со сбросом изредка на диск. Но этой информации очень нехватает, надо проводить более сложные статистические расчеты по этому трафику. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2012, 14:11 |
|
Нужна консультация по очень большой нагрузке
|
|||
---|---|---|---|
#18+
Stinger03При этих расчетах не используется никакая. Пока для всего что нужно хватает текстовых файлов для расчетов - они небольшие и в основном все считается в памяти со сбросом изредка на диск. Но этой информации очень нехватает, надо проводить более сложные статистические расчеты по этому трафику.А расчёты нужны сразу? А то может просто импортитовать раз в сутки данные и уже потом считать аналитику. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2012, 19:10 |
|
Нужна консультация по очень большой нагрузке
|
|||
---|---|---|---|
#18+
В среднем около 150кк в среднем и до 360кк в пиках в сутки. в сукунду до 10к в пиках, но это редко. среднее что то около 2-3к в секунду. Я плохо выразился. А сколько разных IP в сутки и сколько, например, в секунду в пике. Именно "разных" (по которым аггрегацию и нужно проводить). ... |
|||
:
Нравится:
Не нравится:
|
|||
24.03.2012, 21:39 |
|
|
start [/forum/topic.php?fid=35&msg=37721286&tid=1552527]: |
0ms |
get settings: |
10ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
26ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
54ms |
get tp. blocked users: |
1ms |
others: | 243ms |
total: | 361ms |
0 / 0 |