• Как понять, что все сообщения в очереди обработаны?

    2ord
    @2ord
    По мне, так для того, чтобы знать когда задача обработана, достаточно отправлять сообщение об окончании в отдельную очередь "оповещения". Обработчик очереди будет слушать ее и может запустить "агрегирующие процессы".

    Соответственно, узнать длину очереди в таком состоянии воркер не может.
    Обработчики очередей не должны заботиться о длине очереди. Это не их ответственность. Они находятся в постоянной готовности обработать следующую задачу.

    Плюс, воркер в процессе собирает статистику, и должен как-то отдать её в конце работы. Я пока что решил это таким способом: напихиваю в конец очереди N (по числу воркеров) специальных заданий останова - воркер получает такое задание, отключается от очереди и делает всё необходимое.

    статистику можно сохранять в СУБД, отправлять в какую-либо отдельную очередь "отчеты" и пр. (в общем обмениваться через IPC).
    Ответ написан
    1 комментарий
  • С чем может быть связано не правильный вывод изображений?

    @anmkh Автор вопроса
    Если вставлять изображение через тег picture, то работает нормально:
    <picture>
    				<source media="(min-width: 600px)" srcset={bgURL} />
    				<source media="(max-width: 599px)" srcset={bgURLMob} />
    				<img
    					className="hero__bg"
    					src={bgURL}
    					width="359"
    					height="694"
    					alt={title}
    				/>
    			</picture>
    Ответ написан
    Комментировать
  • Как извлечь топ 15 очков из таблицы чтобы игроки не дублировались?

    @rPman
    так?
    SELECT user_id, name, MAX(points) as max_points
    FROM `games`
    GROUP BY user_id, name
    ORDER BY max_points DESC
    LIMIT 15;
    Ответ написан
    1 комментарий
  • Как сделать чтобы разные субдомены вели на разные порты одного ip адреса?

    @Drno
    Веб порты это 80 и 443. такие перенаправления обычно делаются с помощью reverse proxy. например на nginx
    когда он принимает на вход имя домена, а перенаправляет на внутренний сервис \ IP + порт.
    тогда для клиента это выглядит прозрачно
    Ответ написан
  • На чём писать клиентское приложение с GUI?

    Можно посмотреть в сторону PWA и кэшировать данные в local storage или на диск.
    Ответ написан
    Комментировать
  • Зачем использовать свою АТС, если есть облачная?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    которая гораздо удобнее и легче в настройке
    Ровно до тех пор, пока у вас не появляются нестандартные запросы. Например, перевод входящего звонка в зависимости от графика работы подразделений, меняющегося по праздникам и выходным. Или использование нескольких очередей с самостоятельной регистрацией в них операторов и интерфейсом, отображающим отвеченные и пропущенные звонки в этой очереди. Или дать возможность регистрироваться под одним номером с нескольких телефонов (рабочий аппарат сотрудника, софтфон на смартфоне сотрудника, софтфон на домашнем компьютере сотрудника). Или связать напрямую свой Asterisk с Asterisk организации-партнёра/клиента для прямых звонков.
    Чистый Asterisk очень гибок в настройке, способен работать напрямую с базами данных, LDAP/AD и запускать внешние скрипты.
    Ответ написан
    3 комментария
  • Как принять данные от JQuery.ajax на сервере php?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    На сервере пытаюсь принять так:
    Нет, ищите в $_POST

    header: 'Content-Type: application/json', а это лишнее.

    А вообще нужно уметь открыть инструменты хорма и посмотреть в нетворке что и как отправляется.

    Ну или если хочется отправить в боди, то сделать
    $.ajax({
        contentType: 'application/json',
        dataType: 'json',
        data: JSON.stringify({ some valid JSON})
    ...
    Ответ написан
  • Как распарсить вывод ifconfig/ip, чтобы показывало имя интерфейса, отвечающее за беспроводную сеть?

    @rPman
    зачем так сложно? читаешь /proc/net/wireless и получаешь начиная с третьей строки список wireless интерфейсов, типа так:
    Inter-| sta-|   Quality        |   Discarded packets               | Missed | WE
     face | tus | link level noise |  nwid  crypt   frag  retry   misc | beacon | 22
    wlan0: 0000   70.  -50   -256        0      0      0      0    325        0
    Ответ написан
    Комментировать
  • MySQL ошибка InnoDB: Attempted to open a previously opened tablespace. Куда копать?

    martin74ua
    @martin74ua Куратор тега MySQL
    Linux administrator
    Что такое "база расшарена по сети" ?
    У вас есть один сервер mysql и к нему коннектится приложение с нескольких компов? Так же, правда?
    Ответ написан
    Комментировать
  • Как убрать поле "комментарий" в заданиях бп?

    gromdron
    @gromdron Куратор тега Битрикс24
    Работаю с Bitrix24
    Вы не можете убрать (имеется ввиду "настройкой или галочкой") это поле, потому что это не поле, а лог комментариев.

    Для того чтобы убрать или контролировать его появление необходима кастомизация шаблона bitrix:bizproc.task
    Ответ написан
    1 комментарий
  • Регулярное выражение поиск по группам или нет?

    vhood
    @vhood
    Не забывайте отмечать решения
    preg_match()
    $str = "$status['Совершенно_новое'] = 'Brand_new<br>New'";
    $pattern = "(?<=\$status\[')([а-яА-ЯёЁa-zA-Z]+?.*')([A-za-z]+?.*)(?=')";
    preg_match($patern, $str, $matches);
    
    var_dump($matches);
    // полный match и группы


    Паттерн получше: \$status\['([^']+)'\][^']*'([^']*)'
    https://regex101.com/r/10CLSM/1
    Ответ написан
  • Как связать таблицы по одному столбцу и посчитать сумму?

    @alexalexes
    /* создание подготавливаемого запроса */
    $stmt = $mysql->prepare("select sum(c.`Price`) as price_sum
                                 from `dogovor` d
                                 join `catalog` c on c.`Id_Product` = d.`Id_Product`
                              where d.`id_client` = ?");
    /* связывание параметров с метками */
    $stmt->bind_param("i", $id_client);
    /* выполнение запроса */
    $result = $stmt->execute();
    /* выборка результатов */
    $row = $result->fetch_accos();
    if($row)
    {
      echo 'Общая стоимость всех заказов клиента: '.$row['price_sum'];
    }
    else
    {
      echo 'Запрос не дал результата!';
    }

    Ошибки в вашем решении:
    1) Небезопасная подстановка параметров в запросах. Неумение использовать в этой ситуации подготовленные запросы.
    2) Использование id_client как строкового параметра, если он состоит из цифр, то целесообразно использовать целочисленный тип в колонке таблицы.
    3) Неиспользование агрегированных функций среды sql. Зачем на php плодить лишние циклы, когда сумму можно посчитать "из коробки" средствами самой СУБД? Она под это заточена.
    4) Связывание таблиц по наименованию сущности, а не по его идентификатору. Рационально связывать по id_product вместо name_product.
    Ответ написан
    Комментировать
  • Как подружить html с json?

    vhood
    @vhood
    Не забывайте отмечать решения
    HTML - язык разметки, никакие значения он не меняет
    Ответ написан
    Комментировать
  • Как substring правильно извлеките символы?

    @psiklop
    Если нужен массив таких же ссылок с нарастающими "pages", тогда вариант в цикле еще добавить все после знака ? еще раз сделав substring.

    let TotalPages = 10, pages = [], i=0, href="https://site/ua-search/page-2?search=футболка";
    while (++i <= TotalPages)
    pages.push(href.substring(0,href.indexOf("page-")+5) + i + href.substring(href.indexOf("?")));


    Или через replace
    let TotalPages = 11, pages = [], i=0, href="https://site/ua-search/page-2?search=футболка";
    while (++i <= TotalPages)
    pages.push(href.replace(/\/page-\d+\?/, "/page-"+i+"?"));


    P.S. Но так пагинацию не делают. URL не строят из текущей страницы и меняя в ней цифру, это велосипед в буквальном смысле.
    Ответ написан
    Комментировать
  • Как масштабировать число с идеальной точностью?

    vaut
    @vaut
    Предлагаю решить уравнение
    11*x=13
    И почитать что такое рациональные числа.
    Ответ написан
    2 комментария
  • Почему не работает проверка NAN?

    Это JavaScript, детка!
    661a3785d1ef6444222209.png
    661a37a01e49d767748270.jpeg
    661a37d8b28b9965055125.png
    Ответ написан
    Комментировать
  • Почему не работает проверка NAN?

    @Endless1ve
    if (isNaN(F.current)) {
      console.log('F.current is NaN.')
    }
    else {
      console.log('F.current is NOT a NaN.');
    }
    Ответ написан
    Комментировать
  • Почему запрос возвращает пустоту?

    ipatiev
    @ipatiev Куратор тега PHP
    Потомок старинного рода Ипатьевых-Колотитьевых
    Если запрос выполняется без ошибок но не возвращает ни одной строки, это значит что в БД отсутствуют данные, подходящие под указанные в запросе условия.
    Ответ написан
    Комментировать
  • Как сопоставлять товары при парсинге?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    0. Тренируем нейронку распознавать товары, материалы по Вашей теме:
    0.1. https://habr.com/ru/companies/stm_labs/articles/708608/
    0.2. https://new-retail.ru/business/e_commerce/price_ru...
    0.3. Сравнение текстовых описаний через методы обработки естественного языка (NLP), такие как TF-IDF, word2vec, BERT для извлечения смысла и семантического сравнения текстов (Spacy, Hugging Face Transformers и другие библиотеки NLP для анализа текста).
    0.4. Анализ изображений товаров с помощью сверточных нейронных сетей (CNN), которые могут выявлять визуальные сходства между изображениями товаров, даже если они отличаются углом съемки, освещением или масштабом (OpenCV и TensorFlow).
    0.5. Графовые базы данных и алгоритмы, которые могут использоваться для идентификации связей между товарами на основе их атрибутов и отношений.
    1. Нейронка из п0. распознает товары.
    2. Человек в случайном порядке проверяет работу нейронки из п1. и при необходимости, сообщает ей её ошибки. Таким образом происходит дообучение нейронки уже в процессе работы.

    Либо, использовать поисковые движки (с его возможностями полнотекстового поиска и сопоставления), по типу Elasticsearch или OpenSearch (получая наибольшую вероятность сопоставления).
    Ответ написан
    5 комментариев
  • Как в wordpress отредактировать тексты именно в теме с файлами которую я загрузил, а не уже готовые? именно чтоб без кода?

    @Refguser
    Решения для бизнеса: от создания ИМ до...
    В любой CMS, включая ВП "тексты" (контент и не только) редактируются не в файлах, а в админке.
    Ответ написан
    4 комментария