PDA

Просмотр полной версии : Гильдии: Перезагрузка


Softer
25.09.2010, 19:07
Доброго времени суток.
Задался вопросом перезагрузки данных гильдии(й) на лету, без рестарта мира. Хочу иметь возможность применять на лету правку гильдии через базу. (В админ. целях)

Соответственно возникли вопросы к спецам:
- Реально ли это? В принципе ф-ю отвечающую за загрузку гильдии я нашел, но как к этому отнесется клиент?
- Не вызовет ли это повреждение базы?
- Есть ли смысл? :)

DiffuSer
25.09.2010, 19:22
Не вижу смысла перезагружать гильдии на лету. Они не должны так часто меняться, чтобы требовалась перезагрузка гильдий на лету. Ну по крайней мере мне так кажется.

LordJZ
25.09.2010, 19:47
Сложно, но можно. Например, я писал перезагрузку item_template раньше.


DiffuSer: они ВООБЩЕ не должны меняться вне ядра ;)

Softer
25.09.2010, 21:33
Нет, часто они менятся не будут :)

Кот ДаWINчи
27.09.2010, 10:56
Нет, часто они меняться не будут :)

тогда самое простое:

ночью по расписанию. все изменения заливаются SQL-запросом, и тут же рестарт.

Softer
27.09.2010, 11:32
Это самое простое, но хотелось бы уменьшить количество рестартов.

Offtop: Как я понял - npc_text на лету тоже не перегружается, верно?

Кот ДаWINчи
27.09.2010, 15:38
Как я понял - npc_text на лету тоже не перегружается, верно?

"на лету" многое из БД mangos, scripdev2 и characters не перегружается.

Softer
27.09.2010, 15:57
А где-то причины можно узнать? Я написал патч например на перегрузку npc_text, но интересно почему этого нет в ядре.

Кот ДаWINчи
27.09.2010, 19:28
а зачем изменять то, что не должно меняться по ходу работы сервера?

Если у тебя толковый сервер. то все изменения базы и ядра ты, как админ, должен проводить и тестировать на тестовом сервере, и когда все обновы готовы, то только тогда на часок останавливать сервер, и устанавливать их.

Lordronn
27.09.2010, 19:38
А где-то причины можно узнать? Я написал патч например на перегрузку npc_text, но интересно почему этого нет в ядре.

1.Вы не выкладывали свой патч
2.Смысла нету перезагружать эту таблицу на лету.

Softer
27.09.2010, 21:40
Если у тебя толковый сервер. то все изменения базы и ядра ты, как админ, должен проводить и тестировать на тестовом сервере, и когда все обновы готовы, то только тогда на часок останавливать сервер, и устанавливать их.
Если б я все свои изменения делал на рабочем реалме - народу некогда было-бы играть ;) Большие обновления я действительно произвожу при полной остановке сервера, но что-то помельче - неудобно (см. ниже)
1.Вы не выкладывали свой патч
Если Вам нужен - выложу :)
2.Смысла нету перезагружать эту таблицу на лету.
Может я чего-то не понял, но как тогда на лету делать goosip меню у npc?

Lordronn
27.09.2010, 22:09
А давайте еще на лету сделаем перезагрузку таблици db version?

Softer
27.09.2010, 22:19
А давайте еще на лету сделаем перезагрузку таблици db version?
Я, кончено, извращенец, но не настолько :-D

Mr.Grom
28.09.2010, 00:41
Сервер не останавливают на часок, обнова заливается как диск. :mda:

Кот ДаWINчи
28.09.2010, 08:52
Сервер не останавливают на часок, обнова заливается как диск. :mda:

пост № 5 перечитай!

LordJZ
28.09.2010, 15:20
А давайте еще на лету сделаем перезагрузку таблици db version?Между прочем, достаточно нужная возможность. Зря иронизируете.

Softer
28.09.2010, 15:22
Между прочем, достаточно нужная возможность. Зря иронизируете.
Это в какой ситуации? О_о

LordJZ
28.09.2010, 18:12
К примеру, поменять cache_id.

Softer
28.09.2010, 19:31
К примеру, поменять cache_id.
Можно чуть подробнее?

LordJZ
28.09.2010, 19:46
Что вам конкретно интересно по этой теме? Укажите, я расскажу.

Softer
28.09.2010, 21:34
Мне интересно что есть cache_id и чем чревата перегрузка некоторых таблиц. В частности npc_text и guild*. Собственно для этого я и создал топик :)

LordJZ
28.09.2010, 22:28
Про cache_id вы можете прочитать в конфиге под параметром ClientCacheVersion.

Softer
28.09.2010, 23:08
Я верно понял - это связано с Cache клиента?

Medivh
30.09.2010, 20:46
А почему бы не реализовать перезагрузку всех таблиц? Думаю тогда бы возникало поменьше тем такого рода!?

virusav
01.10.2010, 10:33
Перезапуск всех таблиц - это рестарт сервера.