Пожалуйста, не стесняйтесь предлагать улучшения в моих идеях.Основные вопросы проектирования баз данных
Моя цель состоит в том, чтобы у нескольких пользователей была запущена настольная программа, которая передаст информацию скрипту php, который затем будет записывать информацию в базу данных. Не нужно беспокоиться о деталях настольного приложения.
Мои вопросы: 1) Будет ли этот метод эффективным? Или было бы лучше, если бы PHP-скрипт записывал данные в текстовый файл, а затем для задания cron вызывать php-скрипт для обработки текстового файла каждую минуту?
2) Когда я выхожу с версией 2 настольного приложения, как мне настроить базу данных для обработки новых изменений? Например, предположим, что v1 программы просто отправляет одну переменную. Тогда v2 программы отправляет две переменные. Я не смогу убедиться, что все пользователи обновятся до версии 2. Итак, если пользователь все еще использует версию 1, должен ли сценарий php просто записывать данные одной переменной в базу данных и оставить другую переменную пустой?
Другой сценарий заключается в том, что в версии 2 я решил, что исходная переменная должна быть изменена? Как мне это обработать?
Любые комментарии оцениваются!
Одной из причин для PHP является то, что если кто-то может напрямую подключиться к базе данных, у них уже есть больше доступа, чем любой клиент должен иметь. Любой, кто мог бы найти строку подключения к DB в приложении, мог бы вставлять тонны поддельных данных по своему усмотрению, потенциально снимая все. Сценарий PHP или какая-либо другая служба, работающая на сервере, сделает это сложнее, поскольку данные могут быть легко проверены и до того, как они будут сохранены. И для справки, PHP-скрипт может быть веб-сервисом. – cHao
Да точно. PHP-скрипт просто получает данные и дает мне параметры для фильтрации данных перед добавлением в базу данных. Это также означает, что мне не нужно жестко кодировать данные базы данных в настольном приложении. – Steve
cHao: вопрос о последующей деятельности. Какой адрес я должен использовать для базы данных. Например, если мой веб-сервер был google.com, я не должен также использовать google.com для моего адреса базы данных, потому что я не смог бы разделить эти два позже, если бы я хотел, чтобы мой веб-сервер на одном компьютере и моей базе данных на другом компьютере, правильно ? Так какие адреса следует использовать? google.com для веб-сервера и database.google.com для базы данных? – Steve