Я создаю приложение, которое отображает информацию на веб-портале. У меня есть некоторое количество карточек-считывателей X в здании, и эти считыватели карт разговаривают с контроллером в том же здании. Если на устройствах считывания карт есть какая-либо возможность, они отправляют информацию контроллеру, а контроллер записывает его в базу данных.Быстрее ли использовать инструкции else/if или SQL-запрос?
Мне нужно отобразить эту информацию для чтения карт на веб-странице, как только произойдет событие проверки. , поэтому я использую perl Pcap для захвата пакетов между контроллером и базой данных, чтения полезной нагрузки, разбора его как «если nth бит - это распечатать это еще, если, напечатать это», и я повторяю то же самое, если процесс для номеров дверей, карты номера, состояние открытия/блокировки двери и т. д.
Так что мой вопрос: какой из них быстрее? Программа, которая извлекает последние данные из базы данных SQL для обновления веб-страницы или else, если итерации, которые анализируют данные, а затем записывают их в базу данных XML и скрипт подписки, запущенный для обновления веб-страницы?
У меня возникает ощущение, что база данных менее эффективна, так как она должна делать много доступа к диску. Но единственный реальный способ - измерить. Специфика вашей архитектуры может быть важным фактором. – Barmar
Если вы идете с помощью метода pcap, вам может понадобиться изучить библиотеку, используемую для написания декодеров tcpdump/wireshark, поэтому вам не нужно выполнять все необходимые операции if/then. – Barmar
У вас есть проблема с скоростью? У вас есть какая-то минимальная метрика, которую вы должны встретить? Беспокойство о скорости без каких-либо измерений или каких-либо целей преследует слепых. Получите рабочее решение, а если это слишком медленно, беспокойтесь о его оптимизации. –