Вернуться к станкам
Machine photo coming soon

Б/у станок LOADED-8931

Скрипт публикации также имеет ту же проблему медленной загрузки, что и программа загрузки Moments: D:\Work\machine_china>python roc_scripts\publish_wechat_english_machines.py Загружено 8931 опубликованных сигнатур изображений из базы данных. Загружено 5221 точных хэшей и 8931 перцептивных хэшей для проверки дубликатов. Суббота 11:12 Обработано за 1 мин 45 с Добавлен локальный снимок/инкрементальная загрузка, аналогичная сбору Moments, в скрипт публикации. Теперь при первом запуске он все еще извлекает из базы данных и генерирует:

Код станка
OE260705
Год
По запросу
Местонахождение
Китай
Наработка
По запросу

Основные характеристики

Проблема медленной загрузкиD:\Work\machine_china>python roc_scripts\publish_wechat_english_machines.py Загружено 8931 опубликованных сигнатур изображений из базы данных. Загружено 5221 точных хэшей и 8931 перцептивных хэшей для проверки дубликатов. Суббота 11:12 Обработано за 1 мин 45 с Добавлен локальный снимок/инкрементальная загрузка, аналогичная сбору Moments, в скрипт публикации. Теперь при первом запуске он извлекает из базы данных и генерирует:
Скорость загрузки скрипта публикации и механизм локального снимкаПроблема медленной загрузки: D:\Work\machine_china>python roc_scripts\publish_wechat_english_machines.py Загружено 8931 опубликованных сигнатур изображений из базы данных. Загружено 5221 точных хэшей и 8931 перцептивных хэшей для проверки дубликатов. Сб 11:12 Обработано за 1 мин 45 с Добавлен локальный снимок/инкрементальная загрузка, аналогичная сбору Moments, в скрипт публикации. Теперь при первом запуске он извлекает из базы данных и генерирует: resources/data/publish_image_signature_db_snapshot.json. При последующих запусках: если база данных не изменилась: Загружено 8931 опубликованных сигнатур изображений из локального снимка базы данных. Если в базе данных есть несколько новых/обновлений: Загружено 8950 опубликованных сигнатур изображений из локального снимка и 19 инкрементальных обновлений из базы данных. Только если снимок отсутствует.
Запись и проверка снимкаЗаписывает только текущий индекс сигнатур в памяти в локальный снимок. Проверка пройдена: py_compile, python -m unittest roc_scripts.tests.test_publish_wechat_english_machines. Отредактирован publish_wechat_english_machines.py +83 -2. Сб 11:14 Почему Moments превышает 13000?
Разница в области загрузки между публикацией и MomentsЭтот превышает 8000? Сб 11:14 Потому что области загрузки различаются. Сбор Moments загружает глобальные сигнатуры изображений: published_machine + wechat_moment + local_audit, то есть сравниваются изображения из всех источников.
Предназначение областей загрузкиПоэтому вы видите более 13000. Скрипт публикации загружает только сигнатуры опубликованных станков: published_machine, поэтому более 8000. Это сделано намеренно: на этапе сбора Moments: чем раньше найдены дубликаты, тем лучше.
Изображения аудита и логика суждения публикацииИзображения аудита также сравниваются. На этапе публикации: определить, был ли этот станок уже опубликован.
Нормальная разница в количестве и сохранение дубликатов изображений в скрипте MomentsПотому что это может быть тот же станок, еще не опубликованный. Количество, которое вы видите сейчас, можно примерно понять как: глобальное удаление дубликатов Moments: около 13000+ записей; удаление дубликатов публикации: около 8000+ записей из published_machine. Эта разница нормальна. Сб 11:14 wechat_moments_semi_auto.py сохраняет удаление дубликатов изображений.
Изменение именования папок и обработка дублирующихся изображенийНапрямую называть папки как machine_260712_0737_01. 7:22 Обработано за 3 мин 4 с. Изменен wechat_moments_semi_auto.py. Теперь: если в той же папке найдено дублирующееся изображение: удалить текущее изображение.
Различная обработка дубликатов по типу папокПродолжить сохранение следующего. Если дубликат с исторической папкой: все равно остановить текущий момент.
Цель именования папок и обработки существованияИзбежать полного дублирования данных. Именование папок изменено на: machine_260712_0737_01. Если каталог уже существует.
Избежать перезаписи старых данных и тестовый запускИзбежать перезаписи старых данных. Пройдена проверка синтаксиса и проверка именования каталогов. Отредактирован wechat_moments_semi_auto.py +26 -3. 7:25 D:\Work\machine_china>python roc_scripts\wechat\wechat_moments_semi_auto.py --phone Обнаружена историческая конфигурация.
Запрос на повторное использование конфигурацииПо умолчанию y): y Включить пошаговый режим подтверждения для этого запуска? (y/n
Запрос режима подтверждения (продолжение)По умолчанию использовать существующую конфигурацию): n Включить отладочный журнал для этого запуска? (y/n
Запрос отладочного журнала и начало трассировки ошибкиПо умолчанию использовать существующую конфигурацию): n Загружено 14450 сигнатур изображений из локального снимка базы данных для глобальных проверок дубликатов. Traceback (most recent call last): File "D:\Work\machine_china\roc_scripts\wechat\wechat_moments_semi_auto.py"
Номер строки ошибки 758line 758
Кадр ошибкиMain() Call: in <module> main() File "D:\Work\machine_china\roc_scripts\wechat\wechat_moments_semi_auto.py"
Номер строки ошибки 689line 689
Кадр ошибкиSignature_cache.refresh(): in main cache_stats = signature_cache.refresh() File "D:\Work\machine_china\roc_scripts\wechat\wechat_moments_semi_auto.py"
Номер строки ошибки 269line 269
Кадр ошибки_sync_path_to_database: signature) File "D:\Work\machine_china\roc_scripts\wechat\wechat_moments_semi_auto.py"
Номер строки ошибки 242line 242
Кадр ошибкиUpsert_image_signature Call: in _sync_path_to_database upsert_image_signature( File "D:\Work\machine_china\roc_scripts\image_signature_store.py"
Номер строки ошибки 90line 90
Кадр ошибкиUpdate_or_create Call: in upsert_image_signature DbImageSignature.objects.update_or_create( File "C:\Users\Administrator\AppData\Roaming\Python\Python 310\site-packages\django\db\models\manager.py"
Номер строки ошибки 87line 87
Кадр ошибкиKwargs Argument: x x kwargs) File "C:\Users\Administrator\AppData\Roaming\Python\Python 310\site-packages\django\db\models\query.py"
Номер строки ошибки 946line 946
Кадр ошибкиTransaction.atomic: in update_or_create with transaction.atomic(using=self.db): File "C:\Users\Administrator\AppData\Roaming\Python\Python 310\site-packages\django\db\transaction.py"
Номер строки ошибки 216line 216
Кадр ошибкиSet_autocommit: in enter connection.set_autocommit( File "C:\Users\Administrator\AppData\Roaming\Python\Python 310\site-packages\django\db\backends\base\base.py"
Номер строки ошибки 497line 497
Кадр ошибки_set_autocommit: in set_autocommit self._set_autocommit(autocommit) File "C:\Users\Administrator\AppData\Roaming\Python\Python 310\site-packages\django\db\backends\mysql\base.py"
Номер строки ошибки 289line 289
Кадр ошибкиConnection.autocommit: in _set_autocommit self.connection.autocommit(autocommit) File "C:\Users\Administrator\AppData\Roaming\Python\Python 310\site-packages\pymysql\connections.py"
Номер строки ошибки 447line 447
Кадр ошибки_send_autocommit_mode: in autocommit self._send_autocommit_mode() File "C:\Users\Administrator\AppData\Roaming\Python\Python 310\site-packages\pymysql\connections.py"
Номер строки ошибки 468line 468
Кадр ошибки_read_ok_packet: in _send_autocommit_mode self._read_ok_packet() File "C:\Users\Administrator\AppData\Roaming\Python\Python 310\site-packages\pymysql\connections.py"
Номер строки ошибки 453line 453
Кадр ошибки_read_packet: in _read_ok_packet pkt = self._read_packet() File "C:\Users\Administrator\AppData\Roaming\Python\Python 310\site-packages\pymysql\connections.py"
Номер строки ошибки 744line 744
Кадр ошибки_read_bytes: in _read_packet packet_header = self._read_bytes(4) File "C:\Users\Administrator\AppData\Roaming\Python\Python 310\site-packages\pymysql\connections.py"
Номер строки ошибки 782line 782
Кадр ошибкиSocket Read: in _read_bytes data = self._rfile.read(num_bytes) File "C:\Program Files\Python 310\lib\socket.py"
Номер строки ошибки 705line 705
Keyboardinterrupt И ошибка командыin readinto return self._sock.recv_into(b) KeyboardInterrupt ^C D:\Work\machine_china>7 '7' не является внутренней или внешней командой
Сообщение об ошибке и последующий запускни исполняемой программой, ни пакетным файлом. D:\Work\machine_china> D:\Work\machine_china> D:\Work\machine_china>python roc_scripts\wechat\wechat_moments_semi_auto.py --phone Обнаружена историческая конфигурация.
Вывод запуска с инкрементальными обновлениямиПо умолчанию использовать существующую конфигурацию): n Загружено 14679 сигнатур изображений из локального снимка и 229 инкрементальных обновлений из базы данных. Загрузка Moments WeChat
Медленное время загрузкипревышена 1 минута
Завершение оптимизации и коренная причинаКак сделать это быстрее? Показать больше 7:47 Обработано за 3 мин 23 с Оптимизация завершена. Коренная причина медлительности действительно в ошибке слияния кэша
Детали оптимизацииОбработка кэша и отпечатков: не просто из-за 14 тыс. записей данных. Ранее при запуске: серверный снимок перезаписывал локальный кэш для текущего номера телефона. Пересчет существующих отпечатков изображений. Запись каждого изображения по отдельности в серверную базу данных. JSON каждого номера телефона также многократно сохранял все серверные отпечатки. Теперь изменено: кэш номера телефона сохраняет только состояние локальных файлов для этого номера. Глобальные серверные отпечатки хранят только один снимок. Изображения, уже находящиеся в базе данных, напрямую используют отпечатки
Пакетная запись и автоматическая очисткане загружают повторно. Действительно отсутствующие отпечатки записываются в базу данных один раз пакетно. Старый кэш будет автоматически очищен после этого запуска. 229 инкрементальных обновлений, которые вы видели.
Значение инкрементальных обновленийэто 229 изображений, уже записанных по одному в базу данных до первого прерывания.
Команда для продолжения и ожидаемое поведениеНе аномалия данных. Продолжить с использованием исходной команды: python roc_scripts\wechat\wechat_moments_semi_auto.py --phone На этот раз она должна распознать существующие 229 изображений как повторно используемые.
Тест пройден и сводка изменений файловНе будет загружать индивидуально снова. Проверка синтаксиса и 7 связанных тестов пройдены. Отредактировано 2 файла +132 -38: roc_scripts/image_signature_store.py +56 -0; roc_scripts/wechat/wechat_moments_semi_auto.py +76 -38. 7:51 Изменения информации о среде +573 -1
Статус Git и исходные файлы767 локальный мастер commit или push GitHub CLI не аутентифицирован Исходные файлы wechat_moments_semi_auto.py publish_wechat_english_machines.py Просмотреть все

Похожие станки

Другие станки Прочее оборудование

Открыть категорию