Николай Ростов, find создаст не больше нагрузки, чем php-скрипт, а даже меньше. Ведь и тому, и другому придётся прочитать список файлов с диска и затем отправить ему какое-то количество операций удаления. Две основных разницы в том, что, во-первых, find написан на C, а во-вторых, он написан очень эффективно и заточен как раз для подобных задач.
И у файла есть своя собственная дата изменения (mtime), которую можно использовать, не читая какие-то спецфайлы (что ещё и гораздо медленнее).
Совет отказаться от плохого механизма и внедрить хороший - он очень правильный и полезный.
Ivansh_v, да, только ssh:// не нужен (по-моему, там надо не ssh:// а git+ssh://, я никогда не запоминал, потому что он всё равно избыточен, достаточно user@server)
XG22, нет никакого смысла городить два разных подхода. Тем более что наверняка некоторые API-вызовы будут использоваться и в публичном API, и в SPA. Отсылки на распространённость практики не заградительны: вы можете делать так, как вам удобнее. Особенно если публичный API у вас будет глубоко вторичным способом работы.
Но это в любом случае решать вам внутри команды, а не посторонние пользователи Хабра будут за вас решать. Если с консенсусом в команде сложно - пусть окончательнео решение принимает тимлид.
Gioplens, не знаю, я селекты не использовал, только сообщения с кнопками (кнопка редактирует сообщение и поэтому получается многоэтажное меню). Но отредактировать код всё равно надо, может при нормальном виде кода и проблема бы стала более понятной.
Не надо лепить какие попало тэги, ни питон, ни vscode вопрос в текущей формулирове не касается: нет ни кода на python, да и вопрос никак не связан с интерфейсом/функционалом vscode.
Да и вопрос непонятный. Это два разных interaction? В discord с точки зрения общих идей заложено, что пользователь работает с однимм interaction единомоментно. И там можно редактировать, что именно показывается в текущий момент, в том числе можно одни менюшки заменять на другие - вполне себе решение для всяких многошаговых и разветвлённых взаимодействий.
DemChick, Internet Archive - это не просто дорогое - это мегадорогое удовольствие. У них даже свои датацентры. И иногда они вешают прогрессбар донатов, там запредельные суммы.
Скорее всего, альтернативы даже близко не обладают таким охватом.
Так что я бы попробовал в сторону API. Ещё можно накачивать локально с помощью готовых скриптов типа wayback-machine-downloader.
Sanes, довольно много оборудования поддерживает LLDP. Я сто лет назад находил скрипт, который по CDP строил карту в формате dot, адаптировал под свои цели, а потом когда понадобилось не только для цисок - переделал на LLDP. Также можно угадывать топологию по макам на портах (сложно и не всегда надёжно). В общем, карту сети автоматизированно построить вполне можно, даже при зоопарке оборудования.
Но вон в комментариях интересное решение предлагают...
Можно например форварднуть сообщение от такого пользователя где угодно (в привате, в чужом канале итд) боту навроде ShowJsonBot и там увидеть их user_id. Но в целом это дурацкая идея. Те же самые пользователи легко могут создать другой аккаунт или попросить посмотреть своих друзей. И вся затея станет бессмысленной.
Постановка задачи совершенно непонятно. Что за объект? Где находится? Движется или неподвижен? Что за координаты приходят и что они означают - другие объекты (подвижные/неподвижные)? Есть ли ограничения на движения (по прямой, по кривой, по дорогам, с посещением каких-то точек, с поворотами не больше какого-то угла итд)?
С высокой вероятностью нейросеть тут просто не нужна, и нужен какой-нибудь простой итерационный алогоритм, а то и вообще аналитическое решение есть...
Если идея в том чтобы проверять что ящик не на бесплатном почтовом сервисе то список таких доменов наверное нарыть можно. Но если хочется чтобы это был именно домен организации то всё намного хуже. Мне, например, принадлежит несколько личных доменов, в которых почты не относятся к бесплатным почтовым сервисам. Но это не домены никаких организаций, и ящики в них личные.
Есть понятие "домен зарегистрирован на организацию", но по факту тысячи организаций имеют домены, зареганные на руководителя, сисадмина, родственника или наёмного разработчика сайта... В общем, задача тухлая с самого начала.
Я бы пошёл с другой стороны. Зачем всё это нужно? По адресу определять, что это организация? Резать спам от левых пользователей? В зависимости от этого и надо искать решение исходной задачи.
Не надо никаких циклов в обработчике запроса! Пока цикл не завершится, запрашивающий не получит ответ на запрос. А 5 минут никто ответа ждать не будет, тем более что запрос сам оборвётся раньше
Обычно это делают как отправку "задания" на сервер. То есть s1 делает запрос нам на выполнение задачи, в ответ возвращается id задачи. Где-то на сервере в отдельном потоке или даже в отдельном скрипте задача потихоньку пытается выполниться (можно сделать обмен данными, например, через базу). Или через модули типа schedule выполнять регулярную задачу проверки "не нужно ли уже считать запрос неудавшимся". Когда приходит запрос от s2, можно сверить время его выполнения с временем первого запроса и сразу ответить ему и пометить для s1 результат для последующего ответа.
s1 может регулярно делать запросы "а скажи-ка мне статус такой-то задачи". Или можно вернуть s1 результат через callback (наш сервер сам дёрнет s1 и передаст ответ).
В общем, примерно такие методы используются в подобных задачах. А как именно сделать в данном случае - это нужно уже смотреть его особенности.
Например, RIPE: https://ftp.ripe.net/ripe/dbase/split/