Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: file SQL v 1.0 (beta). Класс для работы с файловой базой данных
Форумы портала PHP.SU » PHP » Пользовательские функции » file SQL v 1.0 (beta). Класс для работы с файловой базой данных

Страниц (2): [1] 2 »
 

1. Ximonni - 31 Июля, 2013 - 13:23:04 - перейти к сообщению
---- delete ----
2. EuGen - 31 Июля, 2013 - 13:25:08 - перейти к сообщению
sqlite
?
3. Ximonni - 31 Июля, 2013 - 13:28:33 - перейти к сообщению
SQLite - это модуль для PHP. А FileSQL - это обычная библиотека.
4. EuGen - 31 Июля, 2013 - 13:30:53 - перейти к сообщению
Не очень ясно, какая разница - обычная библиотека или модуль. Модуль будет установлен в 99% случаев на любом хостинге, тем более, что функционал там шире (начать следует хотя бы с того, что там - действительно используется SQL) - а стороннюю библиотеку нужно специально подключать в любом случае.
По поводу самого кода - думаю, пояснения и рецензирование составило бы объем, сопоставимый с объемом самого кода.
5. esterio - 31 Июля, 2013 - 13:31:25 - перейти к сообщению
По сути не знаю в чем у Вас увеличилась скорость. По сути тот же Mysql хранит данние также в файлах. Хотя там есть оверхед на права доступа и парсинг запроса.
6. Ximonni - 31 Июля, 2013 - 13:34:47 - перейти к сообщению
esterio пишет:
По сути не знаю в чем у Вас увеличилась скорость. По сути тот же Mysql хранит данние также в файлах. Хотя там есть оверхед на права доступа и парсинг запроса.

Тот же DDoS может убить MySQL сервер и сайт будет пуст. Файловая БД - решение этой проблемы.
7. EuGen - 31 Июля, 2013 - 13:35:27 - перейти к сообщению
Ximonni пишет:
Тот же DDoS может убить MySQL сервер и сайт будет пуст. Файловая БД - решение этой проблемы.

Почему? В чём разница? Вы представляете себе, что такое DDoS?
8. Мелкий - 31 Июля, 2013 - 13:36:31 - перейти к сообщению
Ximonni пишет:
увеличить скорость работы MySQL

Ximonni пишет:
свой мини-аналог базы данных

При этом на PHP.
Это взаимоисключающие параграфы.
Весьма рекомендую прочитать книгу "MySQL. Оптимизация производительности" (Бэрон Шварц) и разобраться, где ваша проблема.

На сколько вижу, вы загружаете оперируемые таблицы целиком в память - следовательно у вас не та ситуация, где даже тупой mysql не справится, банально не тот объём данных.

И вы используете json_encode, но класс в стиле PHP4 (объявление свойств с var, вместо public|protected|private).
Ну и SQL, заявленного в названии, тут нет.

Ximonni пишет:
Тот же DDoS может убить MySQL сервер

А вы ляжете тут же, как пойдут параллельные транзакции на чтение и запись. Хорошо ещё, если без потери данных - не смотрел, реализуете ли вы блокировки.
9. esterio - 31 Июля, 2013 - 13:37:18 - перейти к сообщению
Ximonni пишет:
Тот же DDoS может убить MySQL сервер и сайт будет пуст. Файловая БД - решение этой проблемы.

Обьясните как ваша лыба решит DDoS. Ну например как у Вас с одновременным доступом? А с записью как? А если данных много, то что парсить весь файл заради ИД?
Я конечно за велосепелостроение, но увы ето не удачный вариант
10. Ximonni - 31 Июля, 2013 - 13:38:30 - перейти к сообщению
EuGen пишет:
Ximonni пишет:
Тот же DDoS может убить MySQL сервер и сайт будет пуст. Файловая БД - решение этой проблемы.

Почему? В чём разница? Вы представляете себе, что такое DDoS?

Конечно представляю. Имел дело и не раз. По совместительству администрирую несколько ВДСок и выделенных серверов. (D)DoS на 3306 порт и MySQL ретурнит ошибку, т.к на него идет слишком много соединений. При этом апач в большинстве случаев (если это не UDP флуд) работает. Сайт остается без связи с БД
(Добавление)
Ну ясно. Тему можно закрывать. Смысла, как я вижу - нету.

Всем спасибо за внимание.
11. Мелкий - 31 Июля, 2013 - 13:40:30 - перейти к сообщению
Ximonni пишет:
DoS на 3306 порт и MySQL ретурнит ошибку

А какого он у вас вообще внешний мир слушает?

Цитата:
При этом апач в большинстве случаев

С какой радости у вас апач публично доступен?
12. esterio - 31 Июля, 2013 - 13:42:15 - перейти к сообщению
Ximonni пишет:
на 3306 порт и MySQL ретурнит ошибку

Для етого вешаем мускуль на localhost только и прощайте там всякые ДДоСы на мускуль
13. EuGen - 31 Июля, 2013 - 13:43:52 - перейти к сообщению
Ximonni пишет:
(D)DoS на 3306 пор

Ximonni пишет:
Конечно представляю

Ximonni пишет:
По совместительству администрирую несколько ВДСок и выделенных серверов

Полагаю, именно в таком порядке следует выстроить взаимоисключающие пункты в Вашем комментарии. Поясню - если Вы администрируете сервер, то должны знать, что сервер СУБД не должен слушать входящие соединения на публично доступном адресе, равно как и любой другой обслуживающий приложение сервер. Вместо этого архитектура бэкенда должна скрывать детали реализации приложения, предоставляя лишь доступ через веб. В заключение - DDoS не делается "на порт".
14. Ximonni - 31 Июля, 2013 - 13:46:21 - перейти к сообщению
EuGen пишет:
Ximonni пишет:
(D)DoS на 3306 пор

Ximonni пишет:
Конечно представляю

Ximonni пишет:
По совместительству администрирую несколько ВДСок и выделенных серверов

Полагаю, именно в таком порядке следует выстроить взаимоисключающие пункты в Вашем комментарии. Поясню - если Вы администрируете сервер, то должны знать, что сервер СУБД не должен слушать входящие соединения на публично доступном адресе. Вместо этого архитектура бэкенда должна скрывать детали реализации приложения, предоставляя лишь доступ через веб. В заключение - DDoS не делается "на порт".

DDoS не делается на порт? Шутите?
TCP флуд (SYN например), слышали?

А MySQL внешний мир слушает, т.к он нужен для подключения клиентов через Navicat. Через PhpMyAdmin они не желают работать.

"С какой радости у вас апач публично доступен?"
А мне, что, на локалхост его вешать? Если он нужен для работы сайта в Интернете.
Да и Nginx'а нету, ибо не нужен еще.
(Добавление)
Тему можно закрыть, все ясно.
15. Мелкий - 31 Июля, 2013 - 13:53:55 - перейти к сообщению
Ximonni пишет:
А мне, что, на локалхост его вешать? Если он нужен для работы сайта в Интернете.
Да и Nginx'а нету, ибо не нужен еще.

Ставить nginx.
Nginx - архитектурно предназначен для фронтэнда.
Apache - нет. Он хороший бекэнд, но ужасный фронтэнд.

Ximonni пишет:
он нужен для подключения клиентов через Navicat. Через PhpMyAdmin они не желают работать.

Как с этим требованием уживается ваш класс?
Какие клиенты? Зачем вообще неуправляемый доступ к СУБД? Он нужен только администраторам и разработчикам - а их можно принудительно загнать в пул разрешённых IP (+ VPN для доступа с неизвестного места)

Это замечательно, что вы в 13 лет занялись программированием и в 15 администрируете несколько машин. Понимаю, возраст. Но прислушивайтесь к критике.

 

Powered by ExBB FM 1.0 RC1