@sdfewf said in Переполнение ОЗУ:
Может проблемы из-за либ node js, которые используются (на скрине).
Это вы и сами можете проверить , сделайте какой нибудь тестовый скрипт без js и покрутите его 11часов
@smeckoi77 said in Счётчик:
@Tacker-Donovan Выцеплять нужную строку перебором через цикл
А каким образом её выцепить, если она будет вида "prodavec001;1" (запрос частичного совпадения через js?)? Как её проапдейтить при следующей ставке, чтобы стало "prodavec001;2"?
@Tacker-Donovan, использовать js обект
@GhostZ said in Переменные в имени переменных:
Ну и если нужно название из переменной то можно использовать js объекты.
VAR_OBJ = {}; VAR_TEST = "file"; VAR_OBJ[VAR_TEST] = "test1"; VAR_TEST = "folder"; VAR_OBJ[VAR_TEST] = "test2"; VAR_OBJ.file или VAR_OBJ["file"] или VAR_OBJ[VAR_TEST] (где VAR_TEST равна "file") //"test1" VAR_OBJ.folder //"test2"
@Tacker-Donovan said in Счётчик:
@smeckoi77 said in Счётчик:
@Tacker-Donovan Выцеплять нужную строку перебором через цикл
А каким образом её выцепить, если она будет вида "prodavec001;1" (запрос частичного совпадения через js?)? Как её проапдейтить при следующей ставке, чтобы стало "prodavec001;2"?
Парсить на две переменные
eb_seller.xml
ebay_sellerlog.txt (должен содержать хотя бы одну строку, иначе скрипт виснет)
Посмотрите тестовый скрипт кому интересно. Он собирает имена продавцов и пишет в файл, но суммировать не умеет (точнее не корректно это делает). Если в ресурсе задать обновление файла, то скрипт зацикливается.
Принцип работы:
Из-за того, что скрипт не читает внесённые им же изменения, то новозаписанный продавец не суммируется при следующем совпадении, а пишется дублем ниже. Если разрешить скрипту видеть свои изменения (вкл. обновление файла), то он зацикливается на этапе сравнения, т.к. он записывает в файл новую строку и следующим этапом проверяет её (а этого делать не надо, т.к. строка уже проверена)
Если есть мысли как поправить или допилить прошу поделиться.
@Tacker-Donovan, почему вы не хотите сделать через js обект?
Вот пример obj_test.xml, с начала устанавливаются значения, а потом увеличиваются.

@Tacker-Donovan, в вашем скрипте это выглядело бы примерно так
//Устанавливаете переменную
[[SELLERS_COUNTER]] = {}
//Используете переменную, в переменной SELLER ник продавца
if([[SELLERS_COUNTER]][VAR_SELLER]){
[[SELLERS_COUNTER]][VAR_SELLER] += 1 //Увеличиваем счетчик
}else{
[[SELLERS_COUNTER]][VAR_SELLER] = 1 //Устанавливаем счетчик
}
@GhostZ да я не против использовать, но для этого нужно понимать js. Сначала пробую штатные средства, вот зашёл в тупик, спросил. А с js даже не знаю куда чего, вот буду с вашим тестовым скриптом ща колдовать.
Опять же есть нужда извлечь данные из файла и загнать туда же потом, чтобы сохранить эти счётчики, как можно реализовать это? Считывать весь файл, парсить и загонять кодом в переменные а в конце массово сохранять текущие значения? А если цикл бесконечный?
@smeckoi77 said in Счётчик:
@Tacker-Donovan Выцеплять нужную строку перебором через цикл
Так и есть "Foreach"
@Tacker-Donovan, сохраняете в файл предварительно переведя объект в строку [[SELLERS_COUNTER_STR]] = JSON.stringify([[SELLERS_COUNTER]]), а после извлечения из файла обратно переводите в объект [[SELLERS_COUNTER]] = JSON.parse([[SELLERS_COUNTER_STR]])
@Tacker-Donovan, сохраняете в файл предварительно переведя объект в строку
[[SELLERS_COUNTER_STR]] = JSON.stringify([[SELLERS_COUNTER]]), а после извлечения из файла обратно переводите в объект[[SELLERS_COUNTER]] = JSON.parse([[SELLERS_COUNTER_STR]])
слишком сложно пока :(
В общем будет ли js в моём случае полезнее, чем штатный функционал? Пока что я понял, что только js может создать переменные с динамическими именами. Не понял как их считать из файла и записать на то же место, чтобы скрипт успешно их перебирал.
@Tacker-Donovan, js это штатный функционал, да и многие действия являются обертками для js функций.