[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Работа с фалом!
solib
Вопрос на засыпку.
Есть файл txt
В нём примерно 1000 строк
Можно ли выдрать какието определённые строки?
И обьясните пожалуйста как работает php c файлам
будет ли большая нагрузка если 100 человек откроет файл в 1000 и более строк

_____________
solib
про определённый строки пусть это будут с 456 до 465 к примеру

_____________
kirik
Можно забивать строки в массив через file(); и потом выводить нужную. Или читать файл через fgets();

Я использовал на одном из сайтов первый способ, для определения уникальности просмотра, сейчас есть файл содержащий около 40 тысяч строк (каждая строка - хэш md5), при этом на сайте около 100-150 человек онлайн - не каких проблем (правда хостинг дедикейтед).

А что за файлы?
twin
Интригующее название темы biggrin.gif . А что значит "выДрать", имеется ввиду удалить?

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

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
solib
Ой опечатка))
выдрать в плане работать с этими строками надо загвоздка в том что расчёт сейчас делать не на 100 -200 человек а около 1000 не факт что будет но лучше щас подумать чем потом перекраивать ВСЁ что нагородил )

Меня пугает что к примеру будет 200-300 человек онлайн и у каждого из них будут эти файлы грузится минимум через каждые 5 секунд (ну если он ф5 жамкать не будет)

Я просто с работой файлов мало опытен вопросы следующие родились

1. Насколько сильную нагрузку может иметь открытие файла перевод кажой строки в массив в последствии малая часть которых будет использована(хотелось бы узнать есть способ с экономить на требованиях к ресурсам машины)
2. Появилась идея кэшировать данные тока каким способом мне не очень понятно((

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

3. Вопрос по майскулу.
Предложили хранить данные в майскуле но так получается что мне нужна 121 строчка
я это смог сжать в 11 СКУл запросов что тоже жирновато 11*200=2200 скул запросов каждые 5 сек это не уверен что сервер будет долго жить )
запросы из бд будут браться по id
к примеру
10-21
40-51
70-81 и так 11 раз

_____________
solib
Цитата
А что за файлы?

обычные тхт

_____________
twin
Тут система простая. Если просто чтать файлы, то есть не записывать и ничего не изменять, то ничего страшного. Единственно, если хостер не нагонит из за такой нагрузки на сервер. А с
Цитата
ну если он ф5 жамкать не будет
надо бороться. А вот если что то в файлах надо менять, то тогда предпочтительнее MySQL. Это все таки сервер, и он сумеет навести порядок. Иначе может очень запросто случиться совместный доступ.
А вообще конечно сказать трудно, потому что не ясна логика приложения и вообще ничего не ясно. Запросы явно можно оптимизировать.

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

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
kirik
Цитата (solib @ 12.03.2009 - 23:01)
обычные тхт

Имелось ввиду, что в них предполагается хранить?

Цитата (solib @ 12.03.2009 - 22:58)
11*200=2200 скул запросов

Такое может случиться когда у тебя на сайте сто тыщ миллионов людей, и то наврятли wink.gif А если у тебя на сайте будет пастись такое количество людей, то на вырученные деньги с ресурса не грешно будет преобрести выделенный сервер smile.gif

Цитата (twin @ 12.03.2009 - 23:40)
не ясна логика приложения и вообще ничего не ясно. Запросы явно можно оптимизировать.

+++
solib
Скрипт будет находится на специально арендованом сервере.
Тесть на чтение файла расходуются небольшие ресурсы?!
ТОгда я спокоен буду делать дальше начатое!
-----------
Приложение редактор карт для браузерной онлайн игры

_____________
solib
В том то и дело что каждый человек онлайн будет эти файлы очень часто запрашивать!

В этих файлах будут хранится данные о карте и изменятся они не будут!
Именяемых данных на карте будет не много так что за них я не беспокоюсь!

_____________
sergeiss
А я так и не понял: почему нельзя использовать базу данных?
БД - это точно такие же файлы, только управление ими осуществляется через отдельный драйвер, и уже оптимизировано по максимуму. Зачем "изобретать велосипед"? Ведь всё это: хранение, выборка части данных, всякие сортировки, буферы, транзакции, защита от ошибок - это и есть работа для БД.

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
solib
мне кажется что 11 запросов это много + веть там будут запросы ешё в другие таблицы

_____________
kirik
Цитата (solib @ 13.03.2009 - 12:59)
мне кажется что 11 запросов это много + веть там будут запросы ешё в другие таблицы

Ой не знаю, не знаю smile.gif Скорее всего при грамотной логике и построении таблиц это все можно будет уложить в пару запросов.
sergeiss
Цитата (solib @ 13.03.2009 - 20:59)
мне кажется что 11 запросов это много + веть там будут запросы ешё в другие таблицы

Еще раз повторю: БД - это такие же файлы, в которых хранятся данные, и плюс управляющие файлы.
Разница с использованием простых файлов только в том, что БД берет на себя функции кэширования, сохранения целостности данных, оптимизации запросов, и многое другое. В частности, что ты будешь делать, если хотя бы 2 пользователя обратятся одновременно??? В БД эти проблемы уже решены.
Короче говоря, если ты захочешь сделать хорошую системы работу с данными на основе файлов, то придешь к тому, что надо делать свою собственную БД. Не более и не менее smile.gif
Вопрос: а нафига изобретать то, что другие умные люди уже сделали? Не лучше ли сосредоточить свои усилия на чем-то более уникальном, типа твоего скрипта?

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
solib
sergeiss
я знаю что такое бд ))))
дело в том что в файлах будут хранится статичные данные которые НЕ БУДУТ ИЗМЕНЯТСЯ!
вот я хорошо буду юзать бд если 1м запросом можно быташить 121 строку по id
к примеру id будут такими
с 10 до 21
с 40 до 51
с 70 до 81
с 110 до 121
с 150 до 161

я знаю как вызвать нужное 5ю запросами приведённое выше
но это ради примера у меня будет в скрипте 11

_____________
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.