11.03.2007, 18:56 | #1 |
Новичок
Регистрация: 16.01.2007
Сообщений: 18
Вес репутации: 0
|
Может немного сменим алгоритм апдейта link.db?
Сейчас это простое кэширование по таймауту. Помоему много лишнего кода, странности в работе(периодическая рассинхронизация с сервером), тормоза при недоступности сервера.
Вот какая мысль стукнула. Если скрипт системы разнести на 2 части. 1 - тупая клиентская часть. хапает links.db и цепляет из него ссылки.. обычный принцип работы. 20 строчек кода.. всё просто и понятно. 2 - updater. При обращении опрашивает сервер sape.ru и запрашивает обновления. Обновления складывает в link.db. Тоже крайне тупая часть... А теперь маленькая фишка. Обращение к updater-у происходит самим сервером sape.ru ... Т.е. что то изменилось для данного сайта - система постучалась на апдейтер.. апдейтер обратился к серверу системы за новыми данными и сохранил в link.db .. Система лежит - никто в апдейтер не торкается.. сервер сапы недоступен? ну так файл не обновился.. на работе сайта эти траблы ВООБЩЕ не сказываются.. помоему удобно. а? разработчики? помоему можно сииильно упростить клиентскую часть и сделать её надёжнее. |
26.03.2007, 07:31 | #5 |
Новичок
Регистрация: 26.02.2007
Сообщений: 26
Вес репутации: 0
|
Самый простой и надежный способ работы с SAPE заключается в следующем.
Есть два скрипта; 1. Скрипт загрузки - загружает данные с диспенсера и сохраняет их в файл links.db (или с другим именем) в каталог с именем SAPE_USER (или любой другой удобный каталог ). Этот скрипт запускается кроном каждый час. При этом при недоступности диспенсера проверяется также его зеркало. 2. Скрипт отображения ссылок - читает файл links.db и показывает ссылки в желаемом формате (например, табличкой). Этот скрипт включается в любую страницу площадки в нужном месте. При таком подходе абсолютно невозможны какие-либо торможения на сайте, т.к. его страницы вообще не знают о существовании SAPE. Спасибо разработчику SAPE за грамотно организованную структуру данных :-) У меня такой подход реализован уже с полмесяца. И все работает как часы. Хотя диспенсер бывает регулярно недоступен (обычно по утрам). Оба скрипта работают независимо (не используют класс sape.php) |
26.03.2007, 13:48 | #7 |
Новичок
Регистрация: 06.02.2007
Сообщений: 99
Вес репутации: 211
|
Скрипт, который скачивает по крону и скрипт, который выдает на сайте - это один и тот же скрипт с разными параметрами :) Обсуждалось тут: http://forum.sape.ru/viewtopic.php?t=130
У меня уже давно работает без единого глюка... |
26.03.2007, 14:37 | #8 | |
Новичок
Регистрация: 26.02.2007
Сообщений: 26
Вес репутации: 0
|
Цитата:
Если человек знает PHP, то напишет скрипт самостоятельно (например, для вывода ссылок достаточно написать 3 строчки кода). А если не знает, то это лучший способ, чтобы его еще больше запутать. Для такого пользователя нужен простой скрипт без настроек, работающий по принципу "как есть". Класс sape.php написан универсально на все случаи жизни (и это правильно), в нем одних только параметров аж 16 штук ! Поэтому использовать его в варианте вс кроном - большая избыточность и разобраться в возможных проблемах будет трудно. Да и разбираться в проблемах в такой ситуации (при нештатном использовании скрипта) вряд ли кто возьмется. Впрочем, я не буду никого отговаривать :-) Рискните ... Если кому-то вариант с кроном интересен - пишите в личку, попытаюсь помочь. |
|
26.03.2007, 15:10 | #9 |
Новичок
Регистрация: 06.02.2007
Сообщений: 99
Вес репутации: 211
|
Если выполнить все, что я там написал (в общем-то несложно, copy-paste :)), единственная внештатная ситуация, которая может быть - много людей поставят крон на начало часа ("каждый час"), т.е. с 57й по 3ю минуту запуск этого крона ставить не надо, а цифру между 4 и 56 выбирать случайно и для разных сайтов разную :)
|
26.03.2007, 17:39 | #10 | |
Новичок
Регистрация: 26.02.2007
Сообщений: 26
Вес репутации: 0
|
Цитата:
Работает ведь этот скрипт в штатном режиме (без крона), хотя бывают и проблемы. Но представьте себе, что у кого-то эти проблемы при работе с кроном возникнут. Например, ссылки в ERROR'е окажутся. Что тогда ? Как разбираться - в чем причина ? Вопрос: какое сообщение придет от крона на e-mail, если диспенсер висит ? |
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Страшная правда последнего апдейта PR. Google идет к нам. | Se0man | Курилка | 21 | 25.11.2008 22:52 |
Изменятся ли показатели тиц и пр после апдейта? | Denis777 | Вопросы от новичков | 18 | 26.06.2008 15:15 |
Прогресс бар апдейта иц/pr | mnemonic | Пожелания пользователей системы | 6 | 24.01.2008 16:00 |
Немного о будущем | KritikMassa | Курилка | 6 | 20.09.2007 11:38 |
error после апдейта движка | Shem | Ошибки при работе с системой | 3 | 18.01.2007 10:26 |
Часовой пояс GMT +3, время: 05:51.