Čo merajú workload units
Bubble účtuje prácu aplikácie v workload units (WU). Prispievajú k nim vyhľadávania v databáze, vrátené dáta, práca so súbormi, workflowy aj volania API. Pre majiteľa aplikácie je užitočné vedieť, ktoré operácie sa opakujú najčastejšie a koľko práce každá robí.
Veľká databáza sama osebe neznamená drahé vyhľadávanie. Aj malá aplikácia môže plytvať, ak obrazovka opakovane načítava viac záznamov, než potrebuje. Začnite dashboardom spotreby a konkrétnym postupom používateľa. Potom preskúmajte operácie, ktoré sa pri ňom spúšťajú.
Tri zdroje spotreby
- Zložitosť
- Opakovanie
- Vrátené dáta
Najprv vyhľadávanie a vrátené dáta
Vyhľadávanie má vrátiť záznamy, ktoré obrazovka potrebuje, a obmedziť ich čo najskôr. Pokročilé filtre a vnorené vyhľadávania môžu pridať prácu pri každom riadku. Ak tú istú podmienku viete vyjadriť cez bežné obmedzenie v „Do a search for“, použite ho a porovnajte výsledok v dashboarde. Návod Bubble k vyhľadávaniu vysvetľuje vplyv objemu vrátených dát aj vnorených výrazov.
Používanie už načítaného zoznamu zároveň sprehľadní logiku. Ak repeating group obsahuje vyfiltrované objednávky, iný prvok môže odkázať na jeho „List of…“. Nemusí definovať nové vyhľadávanie na rovnaký účel. Najprv overte skutočné dopyty: rovnaké výrazy nemusia vždy vytvárať samostatné požiadavky.
Pozornosť si zaslúži vyhľadávanie vo vnútri buniek repeating group. Keď každý riadok robí vlastný dopyt, s rastom zoznamu pribúda aj práca. Priama väzba alebo jedno spoločné vyhľadávanie môžu poskytnúť rovnaké dáta s menším počtom operácií.
Oddeľte dočasný stav od uložených dát
Vybraná karta, neuložený filter či dočasný výpočet patria do custom states, ak ich potrebuje len aktuálne rozhranie. Vytvárať pre každú takú hodnotu databázový „thing“ znamená ďalšie zápisy a upratovanie. Dáta, ktoré musia prežiť obnovenie stránky, zdieľať sa alebo zostať v evidencii, naďalej patria do trvalého úložiska.
Štruktúra databázy ovplyvňuje, čo sa vracia s každým záznamom a aké ďalšie dopyty treba vykonať. Pomôcť môže oddelenie veľkého, zriedka používaného textu od často zobrazovaných polí. Viac dátových typov však samo osebe nie je optimalizácia. Ďalšie väzby môžu vyžadovať ďalšie dopyty.
Rovnako sa pozrite na počty a súčty. Ak číslo musí byť aktuálne, počítajte ho z príslušných záznamov. Ak sa mení pomaly, uložte výsledok a aktualizujte ho pri zmene podkladových dát. Pravidlo aktualizácie je súčasťou funkcie, inak bude lacnejší súčet zastaraný. Viac uvádza prehľad optimalizácií v Bubble.
Využite už hotovú prácu
Opakovaná práca
- Znova hľadať zoznam, ktorý už stránka má
- Zapisovať dočasné hodnoty rozhrania do databázy
- Pri každej návšteve prepočítať málo sa meniaci súčet
Menej operácií
- Odkázať na existujúci zdroj dát
- Dočasné hodnoty držať v custom states
- Uložený súčet aktualizovať pri zmene vstupov
Zistite, ako často sa workflow spúšťa
„Do when condition is true“ a „Do every X seconds“ sú užitočné. Aj malá operácia však môže tvoriť veľkú časť účtu, ak beží neustále. Overte, kedy sa udalosť spúšťa a či má po úspešnom vykonaní práce bežať znova. Rovnakú kontrolu potrebujú opakované úlohy na backende.
Result of Step X vo workflowe jasne vyjadrí závislosť a použije výsledok už vykonaného kroku. Neznamená to, že všetky nezávislé akcie začnú bežať synchrónne. Podobne môže jedno uloženie viacerých polí obmedziť zápisy, ktoré by vznikali pri automatickom ukladaní každej úpravy.
Pri hromadnej práci vyberte postup podľa potreby:
- Make changes to a list sa môže hodiť na jednoduchú úpravu skupiny záznamov.
- Schedule API workflow on a list sa hodí na prácu s jednotlivými záznamami, ktoré od seba nezávisia.
- Rekurzívne workflowy pomáhajú pri postupnom spracovaní, prestávkach alebo podmienke zastavenia. Každé opätovné naplánovanie však pridáva prácu.
- Data API môže vyhovovať importom a externým integráciám. Po dosiahnutí určitej dĺžky zoznamu nie je automaticky lacnejšie.
Univerzálna hranica 20 či 50 záznamov neexistuje. Porovnanie hromadných operácií v dokumentácii Bubble ukazuje, prečo záleží na samotnom workflowe. Na reprezentatívnej dávke porovnajte čas dokončenia aj WU.
Aj frontend môže používať server
Frontendový workflow môže skryť prvok priamo v prehliadači a potom upraviť záznam na serveri Bubble. Jeho umiestnenie v editore teda nezlacní všetky akcie. Bubble rozlišuje prácu klienta a servera podľa toho, čo konkrétna akcia vykonáva.
Podobne je to so stránkami. Jednostránková aplikácia môže používať načítané dáta medzi pohľadmi, ale aj načítať priveľa hneď na začiatku. Viac stránok môže fungovať úsporne, ak každá načíta len potrebné dáta. Pred prestavbou navigácie skontrolujte dopyty v podmienkach, skrytých častiach a udalostiach pri načítaní stránky.
Merajte jednu zmenu po druhej
- Nájdite náročné operácie
- Odstráňte opakovanú prácu
- Overte správanie aplikácie
- Porovnajte spotrebu
Rozhodujte podľa dashboardu
Zaznamenajte spotrebu pri jednej typickej úlohe, odstráňte jednu príčinu opakovanej práce a úlohu spustite znova. Overte správnosť výsledku, oprávnenia aj aktuálnosť zobrazených dát. Potom sa venujte ďalšej náročnej operácii.
Ponúkame bezplatnú konzultáciu, pri ktorej prejdeme vašu aplikáciu v Bubble a navrhneme, kde sa dá spotreba znížiť.