Подходит ли SQLite для использования на веб-сайте? - PullRequest
8 голосов
/ 06 октября 2010

У меня есть база данных размером 50 МБ в SQLite 3. Все объекты БД доступны через веб-сервис.Является ли SQLite хорошим выбором для одновременного использования в сети около 500 параллельных пользователей.

ПРИМЕЧАНИЕ. Пользователи будут использовать одни и те же таблицы, но не одинаковые строки.Каждый пользователь может видеть / обновлять / удалять только свои данные.

Ответы [ 4 ]

16 голосов
/ 06 октября 2010

SQLite обычно отлично работает в качестве движка базы данных для веб-сайтов с низким и средним трафиком (то есть 99,9% всех сайтов). Объем веб-трафика, который может обрабатывать SQLite, зависит, конечно, от того, насколько интенсивно веб-сайт использует свою базу данных. Вообще говоря, любой сайт, который получает менее 100 тыс. Посещений в день, должен нормально работать с SQLite. Показатель 100K хитов в день - это консервативная оценка, а не жесткая верхняя граница. Было продемонстрировано, что SQLite работает с 10-кратным объемом трафика.

( Источник )

3 голосов
/ 06 октября 2010

Согласно википедии SQLLite не сможет выполнить запись , если есть какие-либо одновременные обращения к базе данных. Уже одно это заставляет меня думать, что он не может использоваться для 500 одновременных пользователей.

Если только не происходит никаких обновлений. Я думаю, что для одновременного использования полноценной СУБД достаточно 500 одновременных пользователей.

Обратите внимание, похоже, что статья в Википедии неверна (на самом деле довольно часто встречается в Википедии). В любом случае, если эти 500 пользователей будут много обновляться, мне все равно надоело бы 500 одновременных пользователей с 0 одновременными записями. Хотя числа в потоке, на которые ссылается Nifle, звучат хорошо, они, скорее всего, взяты из тестов, разработанных для того, чтобы sqllite выглядела хорошо. Я сомневаюсь, что вы получите тот же показатель для всех запросов, всех размеров таблиц, всех состояний кэша и т. Д.

1 голос
/ 08 июля 2018

Я запускаю несколько веб-серверов на VPS и локально на компьютерах Pi, все они работают на Ubuntu Linux с использованием MySQL или MariaDB

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

SqLite предназначен для базы данных с низким уровнем использования, для единственного экземпляра, у вас могут возникнуть проблемы с целостностью данных, сбои записи и другие проблемы с ним

SqLite НЕ подходит для веб-серверов

Вам также придется узнать о веб-безопасности и проблемах, таких как межсайтовый скриптинг и атаки с использованием SQL-инъекций, или вы рискуете, что ваш сайт будет перегружен в течение дней

Я предлагаю вам установить пакет локального веб-сервера, известный как WAMP в Windows и LAMP в Linux, что означает Windows (Linux), Apache, MySQL, PHP
PHPMyAdmin является отличным инструментом для управления базами данных на веб-серверах и, как правило, входит в настройки WAMP, LAMP
Это всегда хорошая отправная точка для любого, кто узнает о веб-хостинге

0 голосов
/ 13 апреля 2016

MySQL - гораздо лучший выбор для веб-серверов.
SQLite не устанавливается по умолчанию на большинстве серверов, тогда как MySQL часто устанавливается.
MySQL имеет управление транзакциями, поэтому он подходит для нескольких одновременных записей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...