Как уже говорилось, это зависит от данных, но также и от вашего текущего узкого места.
Если ваше приложение работает на сервере, на котором уже недостаточно ресурсов ввода-вывода, в любом случае вы можете предпочесть хранилище сетевого типа.
Проблемы безопасности больше связаны с настройкой и хорошими практиками, чем с используемой технологией.Если вы пишете файлы, вы должны убедиться, что они не загружаются.Если вы используете базу данных, вам нужно позаботиться о внедрении SQL и т. Д. ...
Я просто хотел бы подчеркнуть, что вы не ограничены файлами и реляционными базами данных.
Вы также можете использовать memcached для хранения данных в памяти (например, идеально для кеша). NOSQL базы данных, такие как Redis также являются опцией.
- База данных (т. Е. MySQL):
плюсы: доступны для поиска, могут обрабатывать сложные и структурированные данные,может быть размещен на другом сервере, постоянный
минусы: медленный
типичное использование: хранение бизнес-данных - Файлы:
плюсы: очень прост в настройке, довольно быстрый, постоянный
минусы: не подходит для обработки очень сложных данных, недоступен для поиска, потребляет ресурсы ввода-вывода хоста сервера, не , которые быстро
типичное использование: файлы журналов, файлы кэша шаблонов - NOSQL (т. Е. Redis):
плюсы: быстрые, могут быть настроены на удаленном хосте, постоянные
минусы: нелегко найти, не подходят для сильно структурированных данных
типичное использование: снижение производительности (поиск) - Память:
плюсы: самая быстрая !, можно настроить на удаленном хосте минусы: такие же, как NOSQL + не постоянные
типичное использование: кеширование объектов