Как многие знают, Window 7, 8. и особенно 10 может внезапно обновиться...
Обычно парсинг не страдает, но при записи в sqlite базу возникают сбой - база больше не читается !
У меня 3 раза был такой печальный случай - винда ночью обновилась без разрешения и пропал суточный результат работы А-парсера, потому что заказной пресет писал данные в sqlite базу и при внезапной остановке А-парсера база остается без правильного заголовка - данные в 3 гигабайтном файле есть, а заголовка - нет!
Предлагаю:
1) время от времени сбрасывать базу sqlite целиком из памяти на диск, или закрывать-открывать, в общем что-то такое делать, чтобы файл получил заголовок.
Кто сомневается - могу показать 20гб файл базы sqlite с пустым местом вместо заголовка. Ничем не открывается...
2) Понимать, когда Винда хочет перезагрузиться и останавливать все работающие задания на Паузу. При этом заголовки базы тоже корректно записываются.
3) Исправить мелкий косячок - при включении продолжения данные в этот файл "db.sqlite" не не будет продолжать писаться!! , а создастся НОВЫЙ ФАЙЛ с именем ".sqlite"
Видимо имя файла не запоминается на период паузы-остановки и поэтому создается новый с пустым именем и расширением .sqlite
4) Убрать утечки памяти - в этом же пресете, после 2 суточного задания апарсер занимал до 3ГБ ЗУ, и после полного окончания задания объём уменьшился до 2 ГБ с остановленными проверками прокси. То есть апарсер просто висел в памяти занимая 2ГБ!!!
Сделал дамп памяти - внутри видны данные со страниц, которые парсил.
Номер пресета сообщу в личку, если надо.
Обычно парсинг не страдает, но при записи в sqlite базу возникают сбой - база больше не читается !
У меня 3 раза был такой печальный случай - винда ночью обновилась без разрешения и пропал суточный результат работы А-парсера, потому что заказной пресет писал данные в sqlite базу и при внезапной остановке А-парсера база остается без правильного заголовка - данные в 3 гигабайтном файле есть, а заголовка - нет!
Предлагаю:
1) время от времени сбрасывать базу sqlite целиком из памяти на диск, или закрывать-открывать, в общем что-то такое делать, чтобы файл получил заголовок.
Кто сомневается - могу показать 20гб файл базы sqlite с пустым местом вместо заголовка. Ничем не открывается...
2) Понимать, когда Винда хочет перезагрузиться и останавливать все работающие задания на Паузу. При этом заголовки базы тоже корректно записываются.
3) Исправить мелкий косячок - при включении продолжения данные в этот файл "db.sqlite" не не будет продолжать писаться!! , а создастся НОВЫЙ ФАЙЛ с именем ".sqlite"
Видимо имя файла не запоминается на период паузы-остановки и поэтому создается новый с пустым именем и расширением .sqlite
4) Убрать утечки памяти - в этом же пресете, после 2 суточного задания апарсер занимал до 3ГБ ЗУ, и после полного окончания задания объём уменьшился до 2 ГБ с остановленными проверками прокси. То есть апарсер просто висел в памяти занимая 2ГБ!!!
Сделал дамп памяти - внутри видны данные со страниц, которые парсил.
Номер пресета сообщу в личку, если надо.