Ignatiy2, ну так настрой Xampp, чтобы при обращении к localhost/update.php (на этот урл и будешь из React запросы делать) запускался C:/Users/%D0%9E%D0%BB%D0%B5%D0%B3/esktop/React+Redux/new-react/public/update.php
Ignatiy2 Если не хочешь с настройкой всего этого заморачиваться, установи себе в Винде OpenServer/Wamp/Xampp/Denwer (если он не помер еще) - что-то из этого.
Anton Semenov, так что мешает запихать результаты запроса в кеш? Вытаскиваться оттуда они будут в разы быстрее.
Еще есть вариант попробовать в условия связывания таблиц запихать некоторые условия из where. Например:
Вместо JOIN wp_postmeta AS pm ON (p.ID = pm.post_id)
Сделать
JOIN wp_postmeta AS pm ON (p.ID = pm.post_id AND pm.meta_key = 'fave_property_id' AND pm.meta_value in (70441,70451,70481,70482,70483,70501))
P.s. а учитывая что база почти 1 Гб, странно, что запрос медленно работает. Дело в том, что 1 Гб для современных баз данных - это крайне мало.
Durin Qurkingo, так а что конкретно не понятно? Я понял это так:
useSelector - это, грубо говоря, маппинг значения из стора на переменную. Но "хитрый" маппинг, благодаря которому изменения в этом значении в стор приведут к перерисовке компонента, в котором вызван useSelector для этого значения стора.
useStore - получение стора целиком (где конкретно такое может пригодиться - не знаю, потому что обычно требуется useSelector для конкретных значений).
useDispatch - ссылка на функцию dispatch редакс стора. Нужно, чтобы диспатчить экшены
Anton Semenov, ну не совсем, потому что сам запрос непосредственно в кеш не засунешь же. Надо сделать выборку этим запросом без условия pm.meta_value in (70441,70451,70481,70482,70483,70501). После этого по полученному массиву (который является набором данных, которые вернул этот запрос) пройтись циклом, и на основе PID (pm.meta_value) сформировать ключи для кеша - и записать в него строки этого массива (например, сериализовав их).
После этого, вместо выполнения этого сложного запроса к базе, надо вытаскивать данные из кеша по ключам и десериализовывать их - это будет гораздо быстрее, чем выполнять тяжелый запрос к базе. Периодически значения в кеше надо обновлять, если требуется.
Anton Semenov, а есть вариант закешировать результаты этого запроса в мемкеш или Redis, но без условия pm.meta_value in (70441,70451,70481,70482,70483,70501)? Ключами сделать meta_value_70441, meta_value_70451 и т.д. И выборку делать не из базы, а из кеша?
dospayne2, так уберите пароль от базы из скрипта и сделайте возможность при запуске скрипта указывать путь к конфигурационному файлу через параметр командной строки. Те, кто знает пароль от базы, создадут такой файл, впишут в него пароль от базы - и без проблем запустят скрипт. Если же надо давать людям скрипт на питоне, но при этом скрывать прямо внутри него пароль от базы, то это вообще не безопасный вариант - что-то делаете не так. Надо тогда, чтобы с базой взаимодействовал api-сервис, а ваш питон-скрипт делал к нему обращения по http, а не напрямую в базу ходил. А пароли в клиентских приложениях хранить вообще не безопасно. Даже если вы как-то круто обфусцируете код - все равно не безопасно.
tasadar2, как и большинство серверов. Поэтому разрабатывать под Виндой особо смысла не имеет такие проекты. Советую в таком случае установить VirtualBox, в котором установить Linux какой-нибудь с графической оболочкой (тот же Mint Cinnamon можно) - и там работать.
tasadar2, так и писал бы сразу, что у тебя Винда) А то скидываешь видео, где настройка идет в Linux Mint Cinnamon. Ясное дело, в Винде иначе дело обстоит.
tasadar2, команду source venv/bin activate (проверь, точно ли правильно ее пишешь, есть ли пробел после source, например) надо запускать из той же директории, где была вызвана команда virtualenv venv. То есть в этом каталоге точно должна быть папка с названием venv. Проверь с помощью команды ls