Как я могу оптимизировать этот Код двигателя Google App?

в mat-sort-header вам нужно передать ключ json, по которому вы хотите отсортировать, например, mat-sort-header = "emp"

5
задан 2 revs, 2 users 99% 8 October 2019 в 11:05
поделиться

6 ответов

Основные издержки здесь являются несколькими, которые человек помещает в хранилище данных. Если Вы можете, сохранить ссылки как единственный объект, как Andre предполагает. Можно всегда разделять ссылки на массив и хранить его в ListProperty.

При необходимости в объекте для каждой ссылки попробуйте это:

# For each line in the input, add to the database
groups = []
for x in allLinks:
     newGroup = LinkGrouping()
     newGroup.reference = hash
     newGroup.link = x
     groups.append(newGroup)
db.put(groups)

Это уменьшит распространения в прямом и обратном направлениях хранилища данных до одного, и это - распространения в прямом и обратном направлениях, которые действительно уничтожают Ваше высокое ограничение ЦП.

7
ответ дан 13 December 2019 в 05:44
поделиться

Выглядит довольно трудным мне.

Я вижу одну вещь, которая может сделать маленькое улучшение. Ваш вызов, "self.request.get ('ссылки')" дважды.

Так добавление:

unsplitlinks = self.request.get('links')

И ссылка, "unsplitlinks" мог помочь.

Кроме этого цикл является единственной областью, я вижу, что это было бы целью для оптимизации. Действительно ли возможно подготовить данные и затем добавить, что это к дб сразу, вместо того, чтобы делать дб добавляет на ссылку? (Я принимаю .put (), команда добавляет ссылку к базе данных),

3
ответ дан 13 December 2019 в 05:44
поделиться

никакие / Вы не можете использовать что-то как "links.contains ('http://www.google.com')" GQL не, не поддерживают это

0
ответ дан 13 December 2019 в 05:44
поделиться

Я могу запросить против ListProperty?

Что-то как

SELECT * FROM LinkGrouping WHERE links.contains('http://www.google.com')

У меня есть будущие планы, где мне была бы нужна та функциональность.

Я определенно реализую единственный db.put () для сокращения использования.

0
ответ дан 13 December 2019 в 05:44
поделиться

Как часто это называет? Это не смотрит что плохо... особенно после удаления дублирующегося запроса.

0
ответ дан 13 December 2019 в 05:44
поделиться

Можно существенно уменьшить взаимодействие между приложением и базой данных, просто храня полное self.request.get('links') в текстовом поле в базе данных.

  • только один put() на post(self)
  • хеш не является сохраненными n-временами (для каждой ссылки, которая не имеет никакого смысла и является действительно тратой пространства),

И Вы сохраняете себя парсинг текстового поля, когда кто-то на самом деле называет страницу....

2
ответ дан 13 December 2019 в 05:44
поделиться
Другие вопросы по тегам:

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