21

Re: PostgreSQL • MySQL • SQLite що швидше?

ktretyak, я думаю, що не настільки далекий від предмету спору, бодай тому, що усвідомлюю, що наведений вами скрипт вищенаведену ситуацію не імітує взагалі, оскільки виконується одним викликом, тоді як у реальному житті має виконуватись лок файлу, скрипт може виконуватись паралельно у 0-20 (точна цифра від балди) потоків, тощо. До того ж у себе на компі ви є єдиним користувачем, тоді як на типовому хостингу (що є звичним середовищем для PHP-скриптів) це не є так і гвинт аж ніяк не у вашому безроздільному використанні. Ба, є вже існуючі тестування, що доводять непридатність конструкції file_get_contents/file_put_contents для ефективної реалізації цієї задачі, саме тому питання ставилось в першу чергу щодо двигунів БД, а саме - який з них орієнтовно має бути швидшим для її реалізації.

22

Re: PostgreSQL • MySQL • SQLite що швидше?

немаю ніц проти файлів у якості статичного кешу але - запис...

Припустімо що буде два чи три записи в один момент часу - що станеться?

Кілька прикладів
1
2
3

загалом є

23 Востаннє редагувалося ktretyak (13.06.2015 15:33:30)

Re: PostgreSQL • MySQL • SQLite що швидше?

Djalin написав:

немаю ніц проти файлів у якості статичного кешу але - запис...
Припустімо що буде два чи три записи в один момент часу - що станеться?

Само собою, що треба враховувати можливість одночасного звернення. Функція file_put_contents() повертає false у випадку невдалої спроби, а тому зрозуміло що треба робити декілька спроб запису.

Але нагадаю, що час зчитування та запису дуже малий. На моєму компі ця пара операцій виконується приблизно за половину мілісекунди. Враховуючи що навіть статична невеличка сторінка у мене буде видаватись за 10-15 мілісекунд, можна припустити що у функції file_put_contents() буде достатньо часу щоб PHP-процеси "не стукались лобами", тим більше з другої чи із третьої спроби.

24

Re: PostgreSQL • MySQL • SQLite що швидше?

а Ви таки пройдіться по лінках

25 Востаннє редагувалося ktretyak (13.06.2015 15:36:27)

Re: PostgreSQL • MySQL • SQLite що швидше?

Djalin написав:

а Ви таки пройдіться по лінках

Я так і зробив, перш ніж написати відповідь. До речі, на тих сторінках багато інфи, яка не стосується нашої теми. Частіше за все можна давати лінки на конкретні DOM ID

26 Востаннє редагувалося Djalin (13.06.2015 15:39:56)

Re: PostgreSQL • MySQL • SQLite що швидше?

і вас не спантеличило що інфа обнуляється?

Прихований текст

Крім того ваш комп'ютер не весь світ, не слід думати що потужностей завжди вистачатиме - бо в результаті цього маємо гігабайтові ігри замість дисків 100 ігр на одному сіді - і зазначу - тоді вони не гальмували на значно менших потужностях

27 Востаннє редагувалося ktretyak (13.06.2015 15:52:48)

Re: PostgreSQL • MySQL • SQLite що швидше?

Djalin написав:

і вас не спантеличило що інфа обнуляється?

Якщо ви маєте на увазі ось це повідомлення, то ж вам треба враховувати що люди обговорюють хостера, який робить багато незрозумілих речей. Чи ви вважаєте, що "обнулитись" може все одномоментно по причині недосконалості функції file_put_contents()?

Ось вам конкретний приклад форуму, який за день може відвідувати до 10 тис. користувачів, і який працює вже багато років успішно саме на файлах. А ось його рушій.

Подякували: Djalin1

28 Востаннє редагувалося Lordie (13.06.2015 15:53:18)

Re: PostgreSQL • MySQL • SQLite що швидше?

ktretyak, і саме стосовно рушія ось цього самого форума теж були аналогічні скарги, лінк на тему щодо яких пан Djalin трохи вище і навів.

P.s.: тобто, так, усе одразу і одномоментно, саме так

29

Re: PostgreSQL • MySQL • SQLite що швидше?

Lordie написав:

ktretyak, і саме стосовно рушія ось цього самого форума теж були аналогічні скарги, лінк на тему щодо яких пан Djalin трохи вище і навів.

P.s.: тобто, так, усе одразу і одномоментно, саме так

http://exbb.info/community/topic.php?fo … 1235562826

30 Востаннє редагувалося Djalin (13.06.2015 16:03:15)

Re: PostgreSQL • MySQL • SQLite що швидше?

Таки не читаєте пане ktretyak - мій другий лінк :)

До речі його чомусь хочуть на мускуль переводити - хоча й не всі погоджуються але

російською

Но планируется оставить 2 ветки ExBB:

    Первая, на базе MySQL, будет позиционироваться как основная, работы над ней сейчас ведутся. Будет реализовано большинство из того, что в файловой версии оставалось недоступным
    Вторая версия не менее интересна - она будет файловой и в качестве основы работы с данными будут использоваться файлы прямого доступа (т.е. фактически на файлы мы распространим принцип работы СУБД).

31

Re: PostgreSQL • MySQL • SQLite що швидше?

Djalin написав:

Таки не читаєте пане ktretyak - мій другий лінк :)

Відкриваємо ваш другий лінк, бачимо напис "Восстановление старых версий форума после обнуления", і догадуємось, що в старих версіях програміст щось не врахував і тепер випустив нову версію, яка вже не робить обнулення.

Що не так? Це й же форум так і продовжив працювати на файлах.

32

Re: PostgreSQL • MySQL • SQLite що швидше?

ktretyak, простіше кажучи, в старих версіях програміст так само як ви у вашому прикладі поклався на те, що у PHP це робиться просто й очевидно - і зазнав краху

33

Re: PostgreSQL • MySQL • SQLite що швидше?

Djalin написав:

Таки не читаєте пане ktretyak - мій другий лінк :)

До речі його чомусь хочуть на мускуль переводити - хоча й не всі погоджуються але

Ну так дивіться ж пояснення (особливо виділене):

Текущее ядро форума (ExBB FM 1.0), построенное на базе хранения данных в файлах последовательного доступа постепенно становится менее актуальным, поскольку не позволяет полноценно оперировать данными и требует полной перезаписи файлов, даже если необходимо подредактировать всего одну запись в них.

Само собою, що якщо треба маніпулювати декількома рядками у файлі, то для цього файлові PHP-функції погано підходять. В нас же інша задача.

34 Востаннє редагувалося Djalin (13.06.2015 16:34:14)

Re: PostgreSQL • MySQL • SQLite що швидше?

окай - приклад вирішення такої задачі - вважаєте це того варто?

А задача - як видно з заголовку теми геть інша, але ви знову вперто не читаєте - а шкода