Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Где лучше хранить данные(переменные) ?

976
01 апреля 2009 года
mikhalych
198 / / 04.01.2009
Уважаемые PHP'шники

Поделитесь пожалуйста опытом. Где лучше хранить глобальные данные, данные которые не являются специфическими для каждого вошедшего на сайт юзера. Такие как количество всех вошедших юзеров, и т.д.

:D
244
01 апреля 2009 года
UAS
2.0K / / 19.07.2006
В файлах. Работа с ними быстрее, да и нет смысла использовать БД для "таких вещей". Так что вон или все в обычном хранить или xml|ini
976
01 апреля 2009 года
mikhalych
198 / / 04.01.2009
Понятно
5
01 апреля 2009 года
hardcase
4.5K / / 09.08.2005
Цитата: UAS
В файлах. Работа с ними быстрее, да и нет смысла использовать БД для "таких вещей". Так что вон или все в обычном хранить или xml|ini


А как же единство концепции? А если у нас веб-ферма? С файлами тогда выйдет косячок-с.

976
01 апреля 2009 года
mikhalych
198 / / 04.01.2009
Если хранить данные в файлах то подумайте сколько файлов то будет если каждый день по файлу создавать. В год 365. А если все данные только в один файл записывать то за пол года размер файла достигнет впечятляющих размеров.
244
01 апреля 2009 года
UAS
2.0K / / 19.07.2006
hardcase, тут привели пример:
Цитата:
Такие как количество всех вошедших юзеров, и т.д.


Если вы считаете разумным хранить это в БД, то я лично нет. Так как я не вижу смысла заводить в БД отдельную таблицу для того, чтобы в неё при каждом посещении UPDATE <table> SET `hits`=`hits`+1;. Лишний раз дергать базу запросом. В этом случае разумнее сделать на файлах.


mikhalych, просто надо уточнять, что вы понимаете под "данные которые не являются специфическими для каждого вошедшего на сайт юзера".

Цитата:
Если хранить данные в файлах то подумайте сколько файлов то будет если каждый день по файлу создавать. В год 365. А если все данные только в один файл записывать то за пол года размер файла достигнет впечятляющих размеров.


Опять же, что за данные? Для каждой задачи - свои цели решения, которые будут максимально оптимальны в создании/применении. Если вам надо надо собрать урожай с огорода 10х10м, вы же не будете заказывать комбайн для этого? Я к тому клоню, что при вашей постановке проблемы (и её описании) сложно однозначно сказать, где лучше хранить данные(переменные)

285
01 апреля 2009 года
Romik
479 / / 24.11.2002
я не против хранения значений в базе или в файлах, но, признаться, я не знаю как решить вопрос конкурентных запросов к файлу, как быть с блокировками, на сколько эффективно использовать дисковые IO операции?
Признаться сам пользуюсь базой, по скольку решение всех выше означенных вопросов берёт на себя СУБД. Однако мне более симпатична модель применяемая в python-фрейворке Pylons, когда все скрипты загружаются единожды и только некоторые перечитываются, если это действительно необходимо (напримеры сменились записи в routes). Я это к тому, что возможно есть смысл хранить данные в памяти, однако мне кажется это проще применять в Python-проектах
13
01 апреля 2009 года
RussianSpy
3.0K / / 04.07.2006
Цитата: UAS
hardcase, тут привели пример:

Если вы считаете разумным хранить это в БД, то я лично нет. Так как я не вижу смысла заводить в БД отдельную таблицу для того, чтобы в неё при каждом посещении UPDATE <table> SET `hits`=`hits`+1;. Лишний раз дергать базу запросом. В этом случае разумнее сделать на файлах.



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

976
01 апреля 2009 года
mikhalych
198 / / 04.01.2009
Цитата: RussianSpy
А нормальные люди и не хранят это ни в базе, ни в файлах. Для этого есть счетчики.



По подробнее пожалуйста. Надеюсь вы не имеете ввиду готовые счётчики типа SpyLog HotLog и т.д.

13
01 апреля 2009 года
RussianSpy
3.0K / / 04.07.2006
Именно их родимых я и имею ввиду.
976
01 апреля 2009 года
mikhalych
198 / / 04.01.2009
Жжаллль я то уж обрадовался.
13
01 апреля 2009 года
RussianSpy
3.0K / / 04.07.2006
Цитата: mikhalych
Жжаллль я то уж обрадовался.



Ну и что такого вам требуется чего нет в готовых счетчиках? Просто вот интересно куда вас больная фантазия завела.

976
01 апреля 2009 года
mikhalych
198 / / 04.01.2009
Я просто напросто хочу создать свой собственный любительский счетчик.
Чтобы любой желающий мог взять код счетчика и поставить на свой сайт. А расчет вел именно мой сайт.;)

Например что то вроде этого
<a href='http://my-site.com/?stat=1910' target='_blank' title='Наша статистика на my-site.com'><img border=0 src='http://my-site.com/img.php?1910'/></a>

Браузер клиента будет вызывать рисунок счетчика из моего сайта как и должно быть.
Перед тем как отправить обновленный рисунок счетчика мой сайт на один увеличить количество посещений и т.д.
13
01 апреля 2009 года
RussianSpy
3.0K / / 04.07.2006
Цитата: mikhalych
Я просто напросто хочу создать свой собственный любительский счетчик.
Чтобы любой желающий мог взять код счетчика и поставить на свой сайт. А расчет вел именно мой сайт.;)

Например что то вроде этого
<a href='http://my-site.com/?stat=1910' target='_blank' title='Наша статистика на my-site.com'><img border=0 src='http://my-site.com/img.php?1910'/></a>

Браузер клиента будет вызывать рисунок счетчика из моего сайта как и должно быть.
Перед тем как отправить обновленный рисунок счетчика мой сайт на один увеличить количество посещений и т.д.



В таком случае тут вариант только один - база данных. Иных вариантов быть просто не может (если конечно вы хотите показывать что-то еще кроме тупого количества загрузки страниц - ни один вменяемый человек не будет себе ставить вашу поделку).

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

976
02 апреля 2009 года
mikhalych
198 / / 04.01.2009
В стране где я живу население меньше чем у Москвы.
Из них не больше 5% имеют доступ к интернету (И заходят в интернет когда свет есть).
Итого получается даже если в лучшем случае сайтов 100 поставят мой счетчик. Нагрузка для сервера будет не значительным всего около 1000 посещений в день в хучшем случае (если не меньше)
Так что я спокоен.:D

вопрос: Угадайте в какой стране я живу ! :)
13
02 апреля 2009 года
RussianSpy
3.0K / / 04.07.2006
Цитата: mikhalych
В стране где я живу население меньше чем у Москвы.
Из них не больше 5% имеют доступ к интернету (И заходят в интернет когда свет есть).
Итого получается даже если в лучшем случае сайтов 100 поставят мой счетчик. Нагрузка для сервера будет не значительным всего около 1000 посещений в день в хучшем случае (если не меньше)
Так что я спокоен.:D

вопрос: Угадайте в какой стране я живу ! :)


Среднеазиатские полудикие страны вроде Таджикистана?


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

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

304
03 апреля 2009 года
Fenyx
707 / / 26.01.2005
Для данной конкретной задачи - апач имеет такое свойство как логирование (файл), парсим и заносим в БД (база) - в итоге получаем гибридную реализацию
976
03 апреля 2009 года
mikhalych
198 / / 04.01.2009
Цитата: RussianSpy
Среднеазиатские полудикие страны вроде Таджикистана?



А почему вы считаете что Среднеазиатские страны полудикие ?:eek:

13
03 апреля 2009 года
RussianSpy
3.0K / / 04.07.2006
Цитата: mikhalych
А почему вы считаете что Среднеазиатские страны полудикие ?:eek:



А разве нет?

ЗЫ нас покарает модератор за оффтопик

976
06 апреля 2009 года
mikhalych
198 / / 04.01.2009
Цитата: RussianSpy
А разве нет?



Конечно нет.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог