happytails.ai
Български

Оценка на цената на GraphQL заявки

Оценете цената на GraphQL операция, преди тя да достигне сървъра. Открийте дълбоко вложените избори и изборите, умножавани от списъци, с всяко предположение за размера на списъците изрично записано.

Приема операция с най-много 200 000 знака, схема с най-много 1 000 000 знака и променливи с най-много 200 000 знака. Брои до 10 000 полета и 64 нива на влагане, с размери на списъците от 1 до 10 000 и цени на полетата от 0 до 1 000. Оценката работи в браузъра в отделна фонова задача. Могат да се изтеглят JSON отчет и CSV разбивка. Една операция или няколко със зададено име на операцията. Фрагментите се разгъват. До 200 000 знака. Прегледайте настройките преди изпълнение.

Вашият резултат

Съобщете за проблем или споделете идея.

Оценка на цената на GraphQL заявки
  1. Поставете GraphQL операцията в основното поле.
  2. Поставете схемата като SDL или JSON от интроспекция.
  3. Променете размера на списъка по подразбиране, ограничаващите аргументи и цените на полетата, ако сървърът използва други стойности.
  4. Изпълнете оценката и прегледайте местата с най-висока цена, след което изтеглете JSON или CSV разбивката.

Какво да очаквате

Приема операция с най-много 200 000 знака, схема с най-много 1 000 000 знака и променливи с най-много 200 000 знака. Брои до 10 000 полета и 64 нива на влагане, с размери на списъците от 1 до 10 000 и цени на полетата от 0 до 1 000. Оценката работи в браузъра в отделна фонова задача. Могат да се изтеглят JSON отчет и CSV разбивка.

Моделът на цената

Всяко избрано поле получава цената за обект или скалар според върнатия тип, умножена по размерите на списъците над него. Общото е сумата на разгънатите избори на полета; повторените избори могат да надценят обединеното изпълнение на сървъра. __typename не добавя цена. Този модел за планиране не изпълнява сървър, условни директиви или съдържание на вложени списъци и не е ограничение, налагано от сървъра.

Размери на списъците

Размерът на поле със списък се определя от най-големия ограничаващ аргумент, например first, last или limit. При пропусната стойност се използват стойностите по подразбиране на променливите на операцията и аргументите на схемата. Без ограничаваща стойност се използва @listSize(assumedSize:), ако е включено, а след това размерът на списъка по подразбиране в модела. @cost(weight:) заменя цената на поле. Всички изведени размери трябва да са цели числа от 1 до 10 000, а теглата от 0 до 1 000. Невалидни операции, променливи или граници и циклични фрагменти спират оценката с грешка от определен тип.

Разчитане на отчета

Отчетът посочва предположенията, десетте най-скъпи поддървета и цялото дърво с дълбочина, множител, размер на списъка, собствена цена и цена на поддървото. CSV съдържа по един ред на път на поле. Препратките към фрагменти се разгъват на мястото на използване; цикличен фрагмент е грешка при валидация на заявката, а не предположение за крайна цена.

Полезни следващи стъпки