|
updated 24.03.09 02:05 24.03.09 01:59 | developers :
Damnedest | Получаем инфу из БК |
ru |
Давным давно Alex Nomad [9] рассказывал о том, как правильно получать информацию о персонаже в и приводил пример обращения к страницам БК. Мне кажется, что уже давным давно пора начинать использовать ООП, котрое есть в пыхе и использовать православные методы.
Собственно преимущества кода, который я предлагаю:
1. Мы ограничиваем максимальное количество редиректов тремя. Это не даст возможность серверу БК зациклить наш скрипт.
2. Мы ограничиваем время доступа к странице 10 секундами (хотя даже 10 много, лучше 3-5), чтобы не тратить много времени на тормозящий сервер БК.
3. Получением данных занимается curl (редиректы, таймауты, правильное разархивация)
4. В результате работы, с помощью iconv, мы получаем нормальную UTF-8 строчку, с которой можем спокойно работать. Забудьте вы уже о win-1251 - это архаизм! Надо смотреть в будущее.
5. Ну и собственно мы получаем очень хорошие исключение на все ошибки, которые возникнут во время получения данных, которые можно будет отловить и как-то обработать.
Код модуля можно посмотреть под катом. Появившиеся вопросы можно оставить в комментах.
CUT: Продолжение
|
Comments: 12 | |
|
|
|
updated 21.03.09 22:15 21.03.09 22:08 | developers :
Damnedest | Кеш спасет мир! |
ru |
В блоге очень много было рассказов о том, как написать какой-то функционал и как что-то ускорить. Конечно, все этого, очень здорово, но мне кажется сообщество не совсем понимает, что этими постами оно дает в руки бомбу замедленного действия будущим программерам клановых сайтов (как показывает практика сервер БК можно положить обычной ссылкой на полный лог великой ).
По моим наблюдения в БК очень мало сильных программистов, тех, которые имеют за плечами проекты не в 200-300 хостов в сутки, а у которых есть сайты, на которых одновременно находится несколько десятков тысяч человек. Я бы хотел в этом посте затронуть тему оптимизации сайта под высокие нагрузки.
В БК о высоких нагрузках кроме некоторых кланов никто и не задумывался, а те, кто с этим сталкивались решали ее просто - покупали более мощные сервер или переходили на новый тарифный план. Некоторые пытались запретить очень частые запросы пользователей на сайт, последовав по стопам БК, хотя в большинстве случаев необходимости не было.
Я видел некоторые клановые сайты, на которых при выводе ника автора новости, происходило обращение к информации о персонаже БК. Это п****ц и так делать нельзя. Если вы так сделали - убейтесь пожалуйста. Спасибо.
Я видел, как писали вывод состава на PHP, когда по крону раз в 5 минут запускался скрипт и вытягивал инфу о персонаже, чтобы получить его оналайн. Вы правда думаете, что у сокланов нет кнопочки в БК, в которой можно посмотреть весь состав? А может вы решили сделать доброе дело для тех, кто хочет отрабатывать по вашему клану ЧС? А может вы думаете, что нуб 8 левела, который зайдет к вам на сайт и посмотрит ваш состав будет сильно переживать из-за того, что не увидит кого-нить в онлайне? Не смешите.
Что делать? Все просто - надо думать!
1. Думаем куда делать запрос. Если персонаж при последнем обновлении состава находился в Столице, то с вероятностью около 70% он и щас будет находится там же (вероятность не придумана, это реальная цифра). Таким вот простым способом мы уменьшили нагрузку на сервер.
2. Между запросами к БК надо делать задержку. 2-5 секунд примерно, чтобы не мучать ни БК, ни свой сервер (например скрипт получения состава просто в цикле делал запросы, из-за чего раз в 5 минут на сервере наблюдалась некоторая заторможенность).
3. Кешируйте запросы. Зачем каждый раз делать запрос к базе на получение состава, если вы знаете, что скрипт обновления у вам работает раз в пол часа? Получите данные из базы и сохраните их в файле. И следующие пол часа получайте инфу из файла. Да, тут вам придется думать. Если это будет интересно, я могу рассказать как реализовать грамотное кеширование в мемкешед или в обычных файлах )
4. Кешируйте не только данные, но и html. Для вывода состава клана серверу требуется произвести достаточно большое количество обращений к шаблонам. Проще закешировать html с составом клана и отдавать его. Ускорение будет реальное.
Вообще есть еще множество различных оптимизаций, которые может сделать каждый клановый сайт, сталкивающийся с нагрузкой, но это уже индивидуально.
P.S. Думайте, что делаете!
P.P.S. И не делайте всякий бред типа ограничения запросов с одного IP. Лучше займитесь оптимизайией.
Mood: рабочее
|
Comments: 5 | |
|
|
|
14.02.09 00:10 | adminion :
Дух Свободы | |
ru |
Храм в Эмеральде подвергся реконструкции и превратился в самый настоящий Дворец Бракосочетаний.
Дворец предоставляет услуги по проведению свадебных церемоний и процедуры развода, также работает магазин по продаже сопутствующих предметов гардероба и сувенирной продукции.
Соединиться узами брака могут двое, разного пола, обладающие равными или не противоречащими друг другу склонностями. Процесс бракосочетания может быть исполнен либо с помощью квалифицированных служащих, либо с приглашением стороннего регистратора, который и будет вести ход церемонии. Всю прочую информацию можно узнать у работников Дворца.
P.S. По случаю Дня Всех Влюбленных цены на вещи из свадебных комплектов добрые, но в ближайшее время могут быть пересмотрены.
Mood: романтичное
|
Comments: 121 | |
|
|
|
31.12.08 22:37 |
Волынщик | |
ru |
Новый Год.. Праздник, удивительный тем, что желания, загаданные в новогоднюю ночь, имеют свойство сбываться.. Каждый получит или же уже получил пожелания счастья, любви, достатка и прочего того, что ему, по мнению пожелателя, может пригодиться.. Добавлять от себя в общую кучу поздравлений что-то смысла не вижу - затеряется среди десятков подобных..
Интересно другое - а что бы вы хотели пожелать нам? Вы - те, кто живет в этом мире или следит за его развитием, нам - тем, кто ответственен за все изменения, в нем происходящие..
И что бы вы хотели пожелать нашему миру? Каким бы вы хотели видеть его в новом году?
С праздником )
|
Comments: 60 | |
|
|
|
updated 16.01.09 21:52 15.12.08 15:29 | adminion :
Дух Свободы | Хоккей. Обновление. |
ru |
Хоккейная площадка была подвергнута некоторым изменениям:
- Площадь поля увеличена.
- Игра продолжается до тех пор, пока одна из команд не забьет 2 шайбы.
- В каждой раздевалке - по тренеру.
- Ловушки.
С предложениями и багами - сюда.
Update: 30-12-08 19:17
- Старый выход из раздевалки заменен односторонними дверьми.
- В начале раунда вешаются путы на 2 минуты.
- Через 3 часа после начала раунда становится активной кнопка "Выйти".
Update: 16-01-09 20:48
- В обычном хоккее введена система случайного распределения игроков на команды.
- Профессиональная лига - "старые" правила набора в команды, нет снятия кулдауна. Вход с золотой или серебряной клюшкой.
- Шайба теперь вешает эффект на -25% к максимальному количеству здоровья.
|
Comments: 106 | |
|
|
|
updated 16.12.08 17:34 15.12.08 14:45 | adminion :
Повелитель Снов | Обновление БС |
ru |
Обновлена карта Башни Смерти, кроме того, в нее добавленны сундуки с персональными вещами.
Характеристики персонажа распределяются после начала турнира.
Update: 16-12-08 17:28
- особенности теперь раскидываются нормально
- добавлен эффект, восстанавливающий жизни и ману персонажа некоторое время после старта БС
P.S. по поводу перегруза и перемешивания уровня БС опишите случаи подробней и если возможно включите ссылки на логи подобных турниров.
Music: The Prodigy - Invaders Must Die
|
Comments: 105 | |
|
|
|
updated 19.05.09 08:35 27.11.08 19:39 |
Я любима | А просто так!))) |
ru |
Моё,руками не трогать так как у него есть Я
- Бубуськ,это ты)))
Любовь - это ты,
Любовь - это я,
Любовь - это жизнь
Твоя и моя!
Что-то всё так уже поднадоело!!!!!!!!!!!!
Mood: романтичное
|
Comments: 2 | |
|
|
Total posts: 366 Pages: 37
1.. 9 10 11 12 13 14 15 16 17 18 19 20.. 30..
|
|
Mo |
Tu |
We |
Th |
Fr |
Sa |
Su |
| | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | | |
|