Форум OlegON > Ресурсы OlegON > Вопросы сервера > База штрихкодов

База штрихкодов: пожелания, предложения, замечания

14.07.2020 1:11


01.05.2017 20:48
twix
 
Цитата:
OlegON это работает в древовидном варианте
Кстати, на тему дерева. Почему сделано так:

Код:
┬api
└ card
  ├ billing (???)
  ├ class
  │ ├ 8888820035479
  │ ...
  │ └ 4607054552972
  ├ name
  │ ├ 8888820035479
  │ ...
  │ └ 4607054552972
  ...
  └ price
    ├ 8888820035479
    ...
    └ 4607054552972
А не

Код:
┬api
├ card
│ ├ 8888820035479
│ │ ├ class
│ │ ├ name
│ │ ...
│ │ └ price
│ ...
│ └ 4607054552972
│   ├ class
│   ├ name
│   ...
│   └ price
├ billing
...
?

Логичнее было бы, имхо.
01.05.2017 21:49
OlegON
 
Если рассматривать структуру, как массивы, то вполне себе логичен и мой вариант... Хз, мне принципиально без разницы, но, когда я спрашивал, кому что надо, все же молчали... Поэтому сделал, а, поскольку уже все прикрутили этот вариант, переделывать нет смысла.
12.06.2017 21:33
volk13
 
Замечено следующее:
при запросе JSON - если в базе нет штрихкода, то по некоторым комбинациям (или в некоторые моменты времени, точно не выяснил) - ну ооочень большая задержка в получении ответа (точно сказать не могу, т.к. на данный момент ограничил ожидание таймаутом в 2 секунды и не дожидаюсь окончания, но реально задержка доходила до 10 секунд)
при запросе CSV - подобной задержки нет.
Прошу пояснить -
1. это какая-то неустранимая особенность JSON или это явление будет изучено и устранено?
2. базы, запрашиваемые по CSV и по JSON - абсолютно идентичны? Или это разные базы и в JSON больше наименований, чем в доброй старой CSV? (судя по разным ответам - складывается ощущение, что базы разные)
12.06.2017 21:48
OlegON
 
Собственно, база одна. Подобные задержки - неустранимая особенность кеширования и архитектуры базы, которая со временем исчезнет. Если честно, CSV-вариант уже нигде не описываю и не поддерживаю, поэтому могу предположить, что там данные берутся только из быстрого кеша. Настоятельно рекомендую использовать JSON-вариант.

Около 1-2 ночи по MSK могут быть проседания, связанные с бекапом базы.

Хотелось бы пример на 10 секунд :( У меня больше 3х не получается найти.
12.06.2017 21:57
OlegON
 
И, да, меня тут DDoSили, отбился пока, может, с этим связано было...
13.06.2017 02:38
volk13
 
Цитата:
OlegON неустранимая особенность кеширования и архитектуры базы, которая со временем исчезнет
ясно, жаль, что неустранимая (и если неустранимая, то не понимаю почему тогда исчезнет со временем, и сколько времени понадобится для исчезания?)
13.06.2017 02:45
volk13
 
ночью точно не тестирую, дело было вечером, когда задержки в среднем были 4-5 секунд, на пике ловил - до 10, причём не у меня одного, возможно и из-за ddos, т.к. не помню точно день, когда это так сильно проявилось.
а спросил про это именно сейчас потому - что просто посмотрел по логам и увидел, что не укладываюсь в 2 секунды таймаута по ШК, которых нет в базе (а больше таймаут делать - не могу, мешает уже такая задержка нормальному функционированию)
13.06.2017 07:02
OlegON
 
Цитата:
volk13 ясно, жаль, что неустранимая (и если неустранимая, то не понимаю почему тогда исчезнет со временем, и сколько времени понадобится для исчезания?)
Как только закешируются все имеющиеся штрихкоды, задержка пропадет. Не думаю, что очень скоро. В любом случае лучше контролировать таймаут, поскольку он может быть и не у меня.
15.06.2017 12:17
volk13
 
Цитата:
OlegON Как только закешируются все имеющиеся штрихкоды, задержка пропадет
т.к. не разбираюсь в подобных вещах, то спрошу - а нельзя их как-то принудительно закешировать или делать это с какой-то периодичностью каким нибудь скриптом? или это невозможно, но тогда почему?
15.06.2017 12:44
OlegON
 
Невозможно просто по нехватке ресурсов... Машинных, чтобы закешировать все сразу и человеческих, чтобы как-то это переделать. База одна, коды добавляются новые, запросов много.
А чем это напрягает? Я же говорил выше, все равно нельзя полагаться на то, что на запрос всегда будет приходить моментальный ответ. Независимо от ответа, я попробую на выходных обойти эту гадость.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.