Как Вы Планируете Индексные Обновления в CouchDB

Хорошо, я понимаю, что ты собираешься делать.

Прежде всего, аргумент длительности - это длительность каждой итерации анимации. Во-вторых, UIView.animate (...) не повторяет анимацию, пока вы не добавите опцию .repeat к аргументу options.

Чтобы достичь чего-то более близкого к тому, что вы хотите, обновите код:

func blinkScreen()
    UIView.animate(withDuration: 1, delay: 0, options: [.repeat, .curveLinear], animations: {
        self.imageV.transform = CGAffineTransform(translationX: 0, y: -10)
    }) { _ in
        self.imageV.transform = .identity
    }
}

И если вы хотите анимировать движение вверх и вниз, используйте опцию .autoreverse (и, возможно, .curveEaseInOut) :

func blinkScreen()
    UIView.animate(withDuration: 1, delay: 0, options: [.repeat, .autoreverse, .curveEaseInOut], animations: {
        self.imageV.transform = CGAffineTransform(translationX: 0, y: -10)
    }) { _ in
        self.imageV.transform = .identity
    }
}
18
задан Jonathan Tran 23 September 2008 в 16:59
поделиться

3 ответа

CouchDB действительно повторно создает представления об обновлении, но только о том, что изменилось начиная с последнего доступа для чтения к представлению. Принятие Вашего объема чтения значительно перевешивает Ваш объем записи, это не должно быть проблемой.

при изменении больших количеств документов сразу, это могло привести к возможности первых запросов чтения, занимающих значимое количество времени. Для облегчения этого, несколько различных возможностей были предложены. Большинство полагается на регистрацию в уведомлениях об обновлении CouchDB и инициирование чтений автоматически.

сценарий в качестве примера для того, чтобы сделать точно, который доступен на CouchDB wiki по телефону [1].

[1] http://wiki.apache.org/couchdb/RegeneratingViewsOnUpdate

26
ответ дан 30 November 2019 в 07:09
поделиться

Вы не можете и также, почему Вы хотели бы это?

Думают об этом как этот:

  • при импорте данных в MySQL, можно повернуться indizes, потому что более дорого обновить индекс для каждой строки, которую Вы вставляете, чем это должно обновить индекс для 100 записей (или однако много строк, которые Вы импортируете) в единственном выполнении.
  • Поэтому CouchDB обновляет индекс на чтении, потому что менее дорого интегрировать те 100 изменений одновременно, затем каждое изменение, когда это записано.

Это - одно из преимуществ CouchDB!:) Я не говорю, что это - CouchDB только функция, но просто умно сделать это на чтении.

Одна вещь, которую Вы могли сделать, читается с update=false, который является грязным чтением и не мог бы возвратить то, что Вы ожидаете. Если Вы всегда делаете это, Вы могли бы запланировать "регулярное" чтение через cronjob и обновить Ваш индекс с этим. Я просто не думаю, что это имеет смысл.

5
ответ дан 30 November 2019 в 07:09
поделиться

a) "Масштабирование" является таким перегруженным термином. К какому "виду" масштабирования Вы обращаетесь? (Так или иначе я не вижу, как это влияет на Вас негативно).

Обновление b) на записях: Просто запросите свое представление после записи. Обратите внимание, что добавление набора данных к индексу является большим количеством дружественного ресурса (что не характерный для CouchDB). Таким образом, Вы могли бы хотеть инициировать свое представление каждый N записи.

Запланированный c): Настройте cronjob, который запрашивает Ваше представление каждый минуты M.

d) Ожидают CouchDB для развития для предоставления Вам инфраструктуру, которая позволяет Вам настраивать это с параметром конфигурации.

e) (НАИЛУЧШИЙ ВАРИАНТ). Пачкайте руки и помогите нам полировка CouchDB! Любые вклады высоко ценятся.

d) прочитайте руководство ( мигание :)

9
ответ дан 30 November 2019 в 07:09
поделиться
Другие вопросы по тегам:

Похожие вопросы: