an4oys228

Рейтинг
60
Регистрация
24.09.2013
fagot_seo:
Как часто вы обновляете контент на сайте? Добавляете новые статьи?

Я использую технологии api. Контент берется с других сайтов автоматически. Мой сайт на подобии mrwhatis

Cchale:
Появилась идея: если с прокси никак у вас, то заходите на любой форум типа Русские в австралии, и там вам все сделают. )

Спасибо, я как раз этим занимаюсь 🤪

Так не пойдет, прокси Thailand и тд. Au не обнаружил...

---------- Добавлено 22.10.2013 в 09:36 ----------

ivan-lev:
Осталось найти бесплатный AU адрес :D

Информацию скину только в личку...

---------- Добавлено 22.10.2013 в 09:38 ----------

eis:
На бесплатном австралийском домене?

Видимо да, если кто-то из AU :)

axxil:
Извините, но я частными консультациями не занимаюсь. Ни просто так ни за деньги. Просто нет времени.

Я просто хотел скинуть код, а на форуме в личку не могу написать тебе.

Было бы интересно, если ты смог написать реляционную к базе (mysql). Чтобы сбоя и лишних траблов не было

axxil:
Можно. Замените

<?

$keys = array_slice($keys,1); // Удаляем из базы ключей верхний ключ
?>


на

<?

$old_key = array_shift($keys);
array_push($keys,$oldkey);
?>


---------- Добавлено 24.09.2013 в 16:27 ----------



Там вы смешиваете счётчик и файл данных. Это лишает программу гибкости.

Написал в Skype. Жду ответ... Там проще пообщаться

axxil:
На файлах алгоритм решения вашей задачи выглядит так:

<?  
$count = (int)file_get_contents('counter.txt'); // Читаем текущее значение счётчика
$keys = file('keys_db.txt'); // Читаем базу ключей
if($count < 1000){
$count++; // Если счётчик меньше тысячи, то просто увеличваем его
}else{
$count = 0; // Если достигли 1000 посещений, то обнуляем счётчик
$keys = array_slice($keys,1); // Удаляем из базы ключей верхний ключ
$h = fopen('keys_db.txt','w+'); // Сохраняем обновлённую базу ключей
fwrite($h,implode('',$keys));
fclose($h);
}

$h = fopen('counter.txt','w+'); // Обновляем счётчик
fwrite($h,$count + 1);
fclose($h);

$Key = trim(array_shift($keys)); // Получаем текущий ключ
?>


Но если предполагается большая посещаемость, то файлам доверять нельзя из-за низкой скорости работы с диском и, как уже отмечали выше, проблем с блокировками (два процесса могут одновременно ломиться в один файл для обновления счётчика и/или чтения базы ключей, что рано или поздно приведёт к коллизиям).

Здесь нужно счётчик и базу выносить либо в реляционную (mysql), либо (что логичнее) в key-value БД (типа redis, memcache и т.д.). Тогда всех вышеперечисленных проблем можно збежать.

Спасибо скрипт работает, но в counter.txt прибавляет сразу по +2 было 2, обновил страницу стало 4 и тд. Хотя с эти решил проблему. Сам смог понять ))

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

LEOnidUKG:
ну закидывайте в папку файлики с рандомным названием и считайте их, когда будет 1000 чистим папку и меняем значения.
А так хз, в чём проблема. ТС вы хотите, чтобы за вас написали или какие-то сложности в разработке и выборе метода решения?

Я бы хотел, чтобы написали. А то я не знаю ни чего в этом. Писал человек другой, а он пропал... Так и не доделал сайт

izbushka:
Как лочить? .lock фалом? И .lock файл тоже потом лочить? :)
При большом кол-ве запросов одними файлами не отделаться

Ну да, будет большое кол-во запросов. Бывало сайт доходил до 80к уников в день :)

ukrdev:
С файлом конечно неудачная идея, но если это единственный выход то желательно его лочить перед чтением и записью, а иначе считать не правильно будет при большом количестве запросов.

ukrdev, а вы можете помочь реализовать?

izbushka:
Помочь можем, написать за вас.. тоже можем, но не будем :)

Алгоритм такой:
Чтоб меньше читать файлов предлагаю хранить в одном файле хиты и текущий ключ. например так: "12;KEY_IS_HERE".

1. вначале вашего search.php читаете число и ключ из файла, в котором хранятся хиты. Парсите его (explode(';',$line))
2. увеличиваете это число на 1
3. проверяете не больше ли оно 1000.
4. Если нет - пишете его назад в файл.
5. Если больше - читаете файл с ключами, достаете новый ключ, пишете в файл хитов число 1 и ключ.
6. отдаете ключ в свою программу

Спасибо за информацию, но я не умею писать на php. Всеми делами занимался другой человек, но он пропал. Уже как 2 месяца не отвечает мне. И поэтому обратился за помощью сюда.

Сайт делаю для рекламы adsense. Обещаю заплатить 10% от выхлопа, когда будет 1000 уников в день посещалка. Я посещение такое будет очень скоро. Просто был уже опыт в этих делах.

Всего: 131