Aleksand
какая?
документ - массив объектов, каждая строка - объект в котором завернуты все нужные тебе данные, при чтении срезается открывающие и закрывающие [] и построчно можно читать и писать в любую позицию в файле без чтения в память всего файла и без парсинга лишних данных
Aleksand
[
{"data": [{}]},
...
{"data": [{}]}
]
Zaur
ну вот я так и подумал, только без [ ] в начале и в конце. Клиент загрузит эту не json-строку добавит скобки и пропарсит как ему надо.
Zaur
и файл отдавать nginx-м как статику
Aleksand
Aleksand
Zaur
да, сервер только записывает в этот файл)
Алексей
а клиенту валидность не нужна? или проблемы клиента шерифа не волнуют?
Zaur
зачем на сервере делать то что может сделать клиент )
Алексей
то есть каждая добавка данных будет приводить в конечном виде к увеличению вложенности json, который будет парсить клиент? я правильно понимаю?
Zaur
нет, увеличение вложенности не будет, будут добавляться только новые item-ы в глобальный массив
Zaur
итоговый json - это [{}, {}, ..., {}]
в файл планируется добавлять только
{},
{},
...
{},
Клиент после загрузки удалил последнюю запятую, добавил скобок [] в начало и конец и получил валидный json
Алексей
если ставить запятую перед добавляемыми данными, клиенту и удалять ничего не надо будет
Алексей
Zaur
смысл в том, чтобы не делать дополнительных проверок на сервере
Zaur
хотя, пустой файл быть не может, а проверка на существование файла все равно будет. Поэтому да, можно запятую в начале ставить)
Zaur
Егор
Zaur
Zaur
ок, как тогда без загрузки всего файла добавить в конец массива новый объект?
Nikolay
Zaur
Врайтлайн?
историю читал? вроде обсуждали как в json массив добавить записи без загрузки всего массива
Nikolay
Anonymous
Что читать про Ноду, чтобы хотя бы примерно представлять, что это, как оно работает и что со всем этим великолепием можно сделать?
Nikolay
Nikolay
Если жс конечно шаришь
Yar
Zaur
Safort
Zaur
где можно проголосовать за ноду? ))) он очень понятно рассказывает
GG
Нет, про js он уже все рассказал. Теперь хотелось бы от него послушать best practic architecture aplication in node js
Dmitry
Sergey
Промисы: введение, шпаргалка по API, применение, пример собственной реализации — https://www.promisejs.org/
Sergey
Anonymous
флаг -g
Anonymous
Sergey @sergeysova подскажите почему так?
Sergey
npm кеширует пакеты
Sergey
-g не влияет на это
Dmitry
Да точно забыли про npm init и он ставит пакет как глобальный
Sergey
если забыл он не будет ставить глобально
Sergey
он установит в текущую директорию с варнингом
Sergey
не надо выдумывать
Sergey
но он установит в .npm и оттуда скопирует в директорию установки
Dmitry
Какая версия npm? Было упомянуто?
Sergey
3, 4, 5
Dmitry
К, консоли нет под рукой.
Второй вариант был это dedupe, но в любом случае node_modules не должен быть пустым.
Может в package.json что-то необычное?
Алексей
походу все намного проще
Алексей
я тестировал на слабом vds с 512 мб оперативы
Dmitry
Должно на все хватать... что-то тяжелое ставили ?
Алексей
Dmitry
Если не хватило памяти или других ресурсов, должно закончится ошибкой.
А что с файловой системой? Место есть?
Алексей
Алексей
Алексей
пики, это когда я запускал npm
Stepan
у меня кстати было такое недавно что билд гулпа падал потому что тупо оперативка кончалась на серваке с 4гб, а тут 512мб, все может быть)
Алексей
так что сборка на сервере это дорого :)
Dmitry
--verbose ?
Алексей
Никита
гугли npm-f3-install.sh
Никита
это не ссылка это файл)
Dmitry
Добавьте к npm install что бы понять на чем фейлится
Dmitry
А вообще этот баг был в старой версии npm
npm install -g npm
Алексей
Алексей
npm verb afterAdd /home/alex/.npm/indexof/0.0.1/package/package.json written
Killed ..........] | fetchMetadata: verb afterAdd /home/alex/.npm/indexof/0.0
Dmitry
Вроде теперь есть куда копать
Stepan
дженкинс?
CI/CD сервак. там собственно все и собирается и проверяется у нас
Алексей
Алексей
или забить на сборку пакетов на сервере, собирать на локалке и закидывать на продакшн
Dmitry
Если бинарников нету в пакетах то да, но вообще плохая идея
Dmitry
Если ОС и архитектуры одинаковые - можно рискнуть
Dmitry
Обновление npm помогло? Что-то изменило?