Cum se configurează smartphone-uri și PC-uri. Portal informativ
  • Acasă
  • Știri
  • Memorarea în cache a unităților externe[. Ce este memoria cache? Ce este memoria cache pentru Android

Memorarea în cache a unităților externe[. Ce este memoria cache? Ce este memoria cache pentru Android

Memorarea în cache- aceasta este una dintre metodele de optimizare aplicații web. În orice aplicație există operații lente ( interogări SQL sau solicitări către API-uri externe), ale căror rezultate pot fi salvate pentru ceva timp. Acest lucru vă va permite să efectuați mai puține astfel de operațiuni și să afișați datele pre-salvate pentru majoritatea utilizatorilor.

Cea mai populară tehnologie de stocare în cache pentru aplicațiile Web este Memcache.

Când să memorăm în cache

Încercați să evitați stocarea în cache decât dacă este absolut necesar. Aceasta este o tehnică simplă, dar reduce flexibilitatea aplicației. Nu o face muncă în plusîn avans, dar luați în considerare utilizarea memoriei cache în viitor:

  • Utilizați clase sau funcții pentru a lucra cu date. Nu utilizați selecții SQL repetate în aplicația principală.
  • Utilizați wrapper-uri pentru a lucra cu API-uri externe.

Ce să memorezi în cache?

Trebuie să memorați în cache datele care sunt generate lent și solicitate frecvent. În practică, acesta este de obicei:

  • Rezultatele solicitărilor către servicii externe (RSS, SOAP, REST etc.).
  • Rezultatele probelor lente din baza de date.
  • Generat blocuri html sau pagini întregi.

Memorarea în cache a selecțiilor bazei de date

Interogările la baza de date sunt cel mai frecvent exemplu. Implementarea bazată pe Memcache este foarte simplă:

!$list = memcache_get("online_users")) ( $sql = "SELECT * FROM users WHERE last_visit > UNIX_TIMESTAMP() - 60*10"; $q = mysql_query($sql); while ($row = mysql_fetch_assoc($q)) $list = $row; memcache_set("online_users", $list, 60*60);) returnează $list; ) $list = get_online_users(); ...

# Solicitarea de a obține utilizatori este stocată în cache timp de 1 oră

Actualizare de date

Dacă păstrați în cache date care pot fi actualizate, trebuie să ștergeți memoria cache după fiecare actualizare:

memcache_delete("utilizator" . $id); }

Memorarea listei în cache

Să presupunem că memorați în cache datele fiecărui utilizator, ca în exemplu, precum și listele acestora (de exemplu, o listă de utilizatori online). Când actualizați datele utilizatorului, ștergeți datele din cache numai pentru utilizatorul specificat. Dar datele lui pot fi prezente și în lista utilizatorilor online, care se află și ei în cache. Resetarea listelor de fiecare dată când datele oricărui utilizator sunt actualizate nu este eficientă. Prin urmare, această abordare este de obicei utilizată:

  1. Acestea memorează în cache liste care constau numai din ID-uri de utilizator.
  2. Pentru a afișa o listă, se trimite o solicitare separată pentru a obține datele fiecărui utilizator.

Implementarea arată astfel:

id DE LA utilizatorii UNDE ultima_vizită > UNIX_TIMESTAMP() - 60*10"; $q = mysql_query($sql); while ($row = mysql_fetch_assoc($q)) $list = $row[„id”]; memcache_set("online_users", $list, 60*60); ) returnează $list; ) $list = get_online_users(); foreach ($listă ca $id) ( $user = get_user($id); ... )

# Să obținem o listă de ID-uri de utilizator și să obținem cele mai recente date pentru fiecare dintre ele

Pentru a obține date de la mai multe obiecte simultan, puteți utiliza Multiget.

Cereri repetate

Unele date pot fi solicitate de mai multe ori în cadrul aceleiași pagini, de exemplu:

get_user($_SESSION["id"])["nume"])?>

... E-mail:get_user($_SESSION[„id”])[„e-mail”]?> ... get_user($_SESSION["id"])["nick"]?>">Pagina mea...

Fiecare apel get_user() va primi date din cache. Dacă Memcache se află pe un server separat, va cauza mult trafic de rețea și întârzieri.

Pentru a evita acest lucru, puteți utiliza un cache suplimentar în interiorul aplicației în sine:

global $app_cache; if ($app_cache["utilizator" . $id]) returnează $app_cache["utilizator" . $id]; if (!$date = memcache_get("user" . $id)) ( $sql = "SELECT * FROM users WHERE id= " . intval($id); $q = mysql_query($sql); $data = mysql_fetch_assoc( $q); memcache_set("utilizator" . $id, $date, 60*60); $app_cache[„utilizator” . $id] = $date;) returnează $date; ) funcția save_user($id, $date) ( global $app_cache; mysql_query("UPDATE users SET ... WHERE id = " . intval($id)); memcache_delete("utilizator" . $id); unset($app_cache[„utilizator” . $id]); }

În aplicațiile reale, este logic să aveți un wrapper Memcache cu un cache suplimentar:

inner_cache)) returnează $this->inner_cache[$cheie]; $date = memcache_get($this->resource, $key); $this->inner_cache[$key] = $date; returnează $date[„valoare”]; ) set de funcții statice publice($key, $value, $ttl) ( memcache_set($key, $value, $ttl); $this->inner_cache[$key] = $value; ) funcția publică statică del($key) ( memcache_delete($key); unset($this->inner_cache[$key]); ) )

# $inner_cache stochează memoria cache suplimentară

Atenţie. Utilizarea acestei abordări poate duce la pierderi de memorie în cazurile în care se lucrează cu o cantitate mare de date în cache. De exemplu, în sarcinile cron (să presupunem că repetăm ​​toți utilizatorii pentru a trimite un buletin informativ). Atunci este mai bine să adăugați dezactivarea memoriei cache interne:

public static $inner_cache_enabled = adevărat; funcția publică statică get($key) ( dacă ( self::$inner_cache_enabled&& array_key_exists($cheie, $this->inner_cache)) returnează $this->inner_cache[$key]; $date = memcache_get($this->resource, $key); $this->inner_cache[$key] = $date; returnează $date[„valoare”]; ) set de funcții statice publice($cheie, $valoare, $ttl) ( memcache_set($cheie, $valoare, $ttl); dacă (self::$inner_cache_enabled)$this->inner_cache[$cheie] = $valoare; ) funcția publică statică del($key) ( memcache_delete($key); unset($this->inner_cache[$key]); ) ) ... mem_cache::$inner_cache_enabled = false;

# Dezactivează memoria cache internă

Incalzire

Când actualizați date deosebit de grele, nu trebuie să resetați memoria cache, ci să actualizați direct datele din acesta:

# operațiuni de actualizare a resurselor externe $date = file_get_contents("http://rss.com/rss"); memcache_set("rss", $date, 60*60); }

Acest lucru va evita cheltuielile suplimentare legate de preluarea grea atunci când cheia este scoasă. Această tehnică este de obicei folosită în joburile cron pentru a actualiza periodic rezultatele probelor foarte grele.

Durata de viață (ttl)

ttl (time to live) este timpul după care datele vor fi șterse din cache. Memcache este instalat în câteva secunde:

60*60 );

# Setați ttl la 1 oră

Cel mai adesea, TTL este setat de la câteva minute la câteva zile. Nu utilizați valoarea 0 (stocare infinită), aceasta poate înfunda memoria.

LRU

Orice cache funcționează pe principiul evacuării dacă nu are suficientă memorie. Acestea. Dacă Memcache poate folosi maximum 1G de memorie și încercați să stocați chei pe 2G, atunci Memcache va șterge jumătate din aceste date. Pentru a determina ce chei să ștergeți, se folosește algoritmul LRU (Cel mai puțin folosit recent):

Memcache va încerca să șteargă în primul rând acele date care au fost solicitate cu foarte mult timp în urmă (adică le va șterge pe cele mai puțin populare și le va lăsa pe cele mai populare).

Memorarea în cache a interogărilor foarte lente

Imaginați-vă că aveți o solicitare care durează 10 secunde pentru finalizare. Îl salvezi în cache timp de 1 oră. Când trece acest timp, datele din cache sunt șterse. În primele 10 secunde după aceasta, te confrunți cu o situație în care mai mulți utilizatori apelează simultan această solicitare dificilă. Acest lucru poate duce la consecințe catastrofale, deoarece... în 10 secunde pot exista câteva sute sau mii de astfel de apeluri.

Pentru a evita acest lucru, este necesar să folosiți o tehnică specială de duplicare.

Operații atomice

Uneori, contoare (de exemplu, numărul de utilizatori) sunt stocate în cache. Când adăugați utilizatori noi, în loc să resetați contorul și să reeșantionați, puteți pur și simplu să creșteți valoarea cache-ului cu unul. Dar acest lucru nu se poate face prin intermediul aplicației, deoarece... aceasta va duce la pierderea datelor din două interogări executate simultan:

Memcache acceptă două operații de creștere și decrementare atomică:

# Creșteți contorul cu 1, funcție memcache_decrement() scade contorul

Cel mai important

Memorarea în cache în aplicațiile bazate pe Memcache este un instrument foarte puternic. Nu uitați că Memcache nu vă garantează siguranța datelor. Aceasta înseamnă că nu se poate aștepta ca datele stocate timp de 60 de minute să rămână în cache exact 60 de minute.

Deși ExpressionEngine vă creează paginile web foarte repede, veți observa că există o relație directă între viteza de încărcare a paginii și cantitatea de informații dinamice pe care o conține. Cu cât folosiți mai multe etichete și variabile, cu atât mai multe cicluri de procesare trebuie să efectueze motorul de șablon.

Tehnologia de stocare în cache din ExpressionEngine constă din mai multe sisteme și setări independente de stocare în cache a datelor.

Interogarea în cache

Sistemul de stocare în cache a interogărilor reține rezultatele interogărilor din baza de date, salvând fiecare interogare ca fișier text. Când vizitatorii vă accesează paginile web, fișierele cache sunt verificate pentru a vedea dacă sunt necesare solicitări specifice pentru a crea paginile. Dacă este găsit, ExpressionEngine utilizează datele din cache în loc să interogheze baza de date. Acest lucru asigură o reducere semnificativă a încărcării generale a bazei de date. Sistemul de stocare în cache a interogărilor este complet dinamic, ceea ce înseamnă că se actualizează automat atunci când informații noi sunt adăugate în baza de date.

Unele interogări nu pot fi stocate în cache, deoarece sintaxa lor se modifică dinamic de fiecare dată când sunt executate. Interogarea de afișare a secțiunii principale, de exemplu, verifică întotdeauna data de încheiere a unei postări care urmează să fie publicată în raport cu ora curentă pentru a determina dacă postarea a expirat. Acest lucru obligă sistemul să facă modificări la interogări de fiecare dată când pagina este încărcată; prin urmare, nu este posibil să se utilizeze interogarea cache standard pentru aceasta. (Vezi ca o alternativă care poate fi folosită în multe cazuri.)

Un sistem de stocare în cache a interogărilor asigură o reducere de la 30% la 90% a numărului total de interogări, în funcție de modul în care sunt construite paginile dvs.

Această caracteristică poate fi dezactivată manual din pagina Configurare baze de date din Panoul de control.

Memorarea în cache a etichetelor

Sistemul de stocare în cache a etichetelor vă permite să stocați în cache rezultatul etichetelor individuale. Acest lucru vă oferă posibilitatea de a reda anumite părți ale paginilor dvs. complet dinamic, în timp ce altele lăsând să fie afișate static. Prin memorarea în cache a etichetelor individuale, veți reduce numărul de scripturi care rulează și resursele serverului necesare pentru a reda orice pagină, menținând în același timp o vizualizare complet dinamică numai acolo unde este necesar.

Memoria cache a etichetelor este păstrată pentru un interval de timp definit de utilizator. După ce intervalul de timp specificat a trecut, memoria cache este actualizată automat.

Pentru a activa memorarea în cache a etichetelor, adăugați următorii doi parametri la orice etichetă:

Cache="yes" refresh="10"

Notă: reîmprospătare specifică timpul, în minute, dintre actualizările memoriei cache.

De exemplu, pentru a stoca în cache o etichetă timp de 30 de minute, ați face următoarele:

(exp:weblog:entries cache="yes" refresh="30")

Memorarea în cache a șabloanelor

Memorarea în cache a șabloanelor (sau stocarea în cache dinamică a paginilor) vă permite să stocați în cache toate șabloanele, făcând paginile mult mai ușoare. Deoarece ExpressionEngine necesită rularea mai multor scripturi și interogări de baze de date pentru a gestiona resursele de bază, nu puteți obține pagini 100% statice, va fi întotdeauna puțin mai puțin.

Memorarea în cache a șabloanelor, ca și etichetele, se bazează pe timp. Pentru a activa stocarea în cache a șabloanelor, faceți clic pe linkul „Setări” de pe pagina de șabloane. Pe el trebuie să activați stocarea în cache și să setați intervalul de timp de actualizare.

Numim această memorie cache dinamică a paginii deoarece sistemul șterge automat memoria cache atunci când apar anumite evenimente. De exemplu, dacă păstrați în cache pagina de comentarii, atunci când cineva adaugă un comentariu, memoria cache va fi șters momentan, suprascriind setarea de cache.

Notă: Memorarea în cache a șabloanelor înlocuiește stocarea în cache a etichetelor. Nu există niciun beneficiu suplimentar din utilizarea etichetelor și a șablonului în cache în același timp. Dacă stocarea în cache a paginii este activată, nu sunt activate alte tipuri de stocare în cache. Prin urmare, dacă doriți să stocați în cache etichete individuale, dezactivați stocarea în cache a paginii.

Memorarea în cache a interogărilor de partiții dinamice

Această setare se află în pagina Administrator > Setări secțiuni globale. Această caracteristică va crește viteza de procesare a etichetei (exp:weblog:entries) prin memorarea în cache a cererilor care ar fi în mod normal executate dinamic. Această opțiune, însă, nu este potrivită pentru toți oamenii.

Activați această funcție numai dacă dvs Nu utilizați înregistrări „viitor” sau „trecut”.

Dezactivarea cererilor

Opțiunea disable= este disponibilă în eticheta (exp:weblog:entries). Vă permite să dezactivați funcțiile etichetelor pe care nu le utilizați pentru a îmbunătăți performanța. Eticheta weblog entries este concepută pentru a prelua o cantitate mare de informații în mod implicit: categorii, câmpuri personalizate, date utilizator etc. În funcție de modul în care utilizați eticheta, este posibil ca unele dintre aceste date să nu fie necesare. Cu opțiunea „dezactivare”, puteți dezactiva aceste funcții de etichetă pentru a o face mai ușoară.

Sintaxa pentru parametrul disable este: disable="ELEMENTUL PE CARE VREI SĂ DEZACTIVEAZĂ" . Există cinci elemente care pot fi dezactivate:

  • categorii
  • categorii_câmpuri
  • câmpuri customizate
  • membri_date
  • paginare
  • trackback-uri

Puteți dezactiva mai multe elemente, separându-le după cum se arată mai jos:

Disable="categories|member_data|trackbacks"

Cea mai bună abordare este să examinați datele pe care le scoateți din etichetă de la caz la caz. Dacă există un tip de date pe care nu îl utilizați, dezactivați-l.

De exemplu, dacă utilizați eticheta weblog entries pentru a afișa titlurile celor mai recente 10 intrări:

(exp:weblog:entries orderby="date" sort="desc" limit="10")
(titlu)

(/exp:weblog:entries)

În acest exemplu, afișați doar titlurile postărilor dvs. și nimic altceva; cu toate acestea, eticheta weblog preia automat categoriile și alte date. Folosind parametrul disable=, puteți dezactiva funcțiile inutile pentru a le exclude din cerere. În cazul nostru, nu aveți nevoie de niciuna dintre funcții și toate pot fi dezactivate.

(exp:weblog:entries orderby="date" sort="desc" limit="10" disable="categories|custom_fields|member_date|pagination|trackbacks")
(titlu)

(/exp:weblog:entries)

Notă: De asemenea, puteți utiliza parametrul disable="category_fields" în etichete

Ce este memoria cache? Este posibil să ștergeți memoria cache a aplicației pe un telefon Android? Da, poti. Trebuie să șterg memoria cache pe Android? Necesar și inutil.

De ce este necesar și inutil și ce ar trebui să faceți, stabiliți citind această postare până la sfârșit, deși principiul este simplu: ștergând memoria cache, veți obține mai multă memorie, dar viteza de acces la date poate scădea.

Numărul de cereri pentru majoritatea proprietarilor este în continuă creștere. Uneori atât de mare încât face ca sistemul să încetinească.

Prin urmare, ar trebui să scapi de ele periodic. În versiunile mai noi, puteți face acest lucru cu un singur buton.

Accesați „Setări”, apoi la fila de memorie și apoi la memoria cache de date. Veți fi întrebat dacă doriți să scăpați de toate datele.

Acest pas poate fi setat să se repete automat periodic, ceea ce ar trebui să contribuie la menținerea sistemului în stare bună.

Cum funcționează memoria cache?

Memoria cache a aplicației dintr-un telefon Android este relativ mică în comparație cu capacitatea de memorie a unui smartphone sau tabletă?

Sarcina sa este de a reduce timpul de acces pentru procesarea datelor și de a minimiza încărcarea RAM pentru a o pune la dispoziție altor dispozitive.

Acesta reduce decalajul dintre câștigurile de productivitate și vitezele de acces la mediile de stocare.

Utilizarea memoriei cache are două avantaje: timp de acces redus și utilizare mai eficientă prin algoritmul inteligent de stocare a datelor încorporat.

Controlerul de memorie determină o secvență de operații repetate frecvent și, în timpul execuției, le interceptează și le înlocuiește cu date din cache.

Astfel, procesorul menține o cale lungă de acces la memoria principală. Bucla cache este de multe ori mai rapidă decât dacă ar fi preluată din memoria principală.

Ce se întâmplă dacă ștergeți memoria cache

Nu se va întâmpla nimic dacă ștergeți memoria cache. Este un set de date care este o „copie de urmărire” a valorilor originale stocate în altă parte.

Cu alte cuvinte, un cache este o locație de stocare temporară în care datele utilizate frecvent pot fi stocate pentru acces rapid.


Memorarea în cache a dispozitivului Android este o tehnologie bazată pe subsistemul de memorie. Scopul principal este să vă accelerați Androidul pentru a finaliza sarcinile mult mai repede.

Pentru a înțelege conceptul de bază al stocării în cache, priviți un exemplu simplu de funcționare a unui bibliotecar.

Când vine primul client după o carte, bibliotecarul se duce la depozit și se întoarce la ghișeu cu cartea pentru a o oferi clientului.

Ulterior, clientul revine pentru a returna cartea. Bibliotecarul ia cartea, o duce la depozit, se întoarce la ghișeu și așteaptă un alt client.

Să presupunem că următorul client avea nevoie de exact aceeași carte. Bibliotecarul trebuie să se întoarcă la depozit pentru a lua din nou cartea și a o duce noului client.


Conform acestui model, bibliotecarul trebuie să parcurgă traseul complet pentru a prelua fiecare carte. Să punem un cache pe bibliotecar - dă-i un rucsac în care să poată depozita 10 cărți.

În acest rucsac, va pune cărțile pe care clienții le întorc - maximum 10. Acum, când vine un alt client, nu trebuie decât să ia cartea din rucsac și să o dea clientului, astfel clientul să fie servit. Mai repede.

Aproape totul funcționează la fel pe un telefon Android. După cum puteți vedea, multe depind și de volum și curățare - viteza serviciului scade, în cazul nostru aceasta este performanța sistemului Android.

Prin urmare, concluzia este următoarea: puteți șterge memoria cache pe Android, dar dacă trebuie să ștergeți, rămâne la latitudinea dvs. de a decide. Noroc.

Computerul, din păcate, nu execută imediat comenzile pe care le primește de la oameni. Pentru a accelera acest proces, sunt folosite o serie de trucuri, iar stocarea în cache ocupă locul de mândrie printre acestea. Ce este? Ce sunt datele stocate în cache? Cum se întâmplă de fapt acest proces? Ce sunt datele stocate în cache într-un smartphone Samsung, de exemplu, și sunt diferite în vreun fel de cele de pe un computer? Să începem să obținem răspunsuri la aceste întrebări.

Acesta este numele tamponului intermediar, care oferă acces rapid la informațiile care sunt cel mai probabil să fie solicitate. Toate datele sunt conținute în el. Un avantaj important este că puteți prelua toate informațiile necesare din cache mult mai rapid decât din stocarea originală. Dar există un dezavantaj semnificativ - dimensiunea. Datele din cache sunt folosite în browsere, hard disk, procesoare, servere web, servicii WINS și DNS. Baza structurii sunt seturile de înregistrări. Fiecare dintre ele este asociat cu un anumit element sau bloc de date, care acționează ca o copie a ceea ce se află în memoria principală. Înregistrările au un identificator (etichetă), care este utilizat pentru a determina potrivirea. Să privim dintr-un punct de vedere puțin diferit: ce sunt datele stocate în cache într-un telefon Samsung sau al altui producător? Sunt diferite de cele create pe computer? Din punct de vedere fundamental - nu, diferența este doar în dimensiune.

Procesul de utilizare

Când un client (au fost enumerați mai sus) solicită date, primul lucru pe care îl face computerul este să examineze memoria cache. Dacă conține intrarea necesară, atunci este utilizat. În aceste cazuri, apare o lovitură. Periodic, datele din memoria cache sunt copiate în memoria principală. Dar dacă înregistrarea necesară nu a fost găsită, atunci conținutul este căutat în stocarea de bază. Toate informațiile preluate sunt transferate în cache pentru a putea fi accesate ulterior mai rapid. Procentul în care interogările au succes se numește rata de accesare sau rata de accesare.

Actualizare de date

Când este folosit, să zicem, un browser web verifică memoria cache locală pentru a găsi o copie a paginii. Având în vedere caracterul limitat al datelor, în caz de pierdere, se ia decizia de a renunța la o parte din informații pentru a elibera spațiu. Pentru a decide ce anume va fi înlocuit, se folosesc diverși algoritmi de evacuare. Apropo, dacă vorbim despre datele stocate în cache pe Android, atunci în cea mai mare parte sunt folosite pentru a lucra cu imagini și datele aplicației.

Politica de înregistrare

Când conținutul cache-ului este modificat, datele din memoria principală sunt și ele actualizate. Timpul care se scurge între introducerea informațiilor depinde de politica de înregistrare. Există două tipuri principale:

  1. Înregistrare imediată. Fiecare modificare este scrisă sincron în memoria principală.
  2. Înregistrare întârziată sau inversă. Datele sunt actualizate periodic sau la cererea clientului. Pentru a urmări dacă a fost făcută o modificare, utilizați un semn cu două stări: „murdar” sau modificat. În cazul unei rateuri, se pot face două accesări la memoria principală: prima este folosită pentru a scrie datele care au fost modificate din cache, iar a doua este folosită pentru a citi elementul necesar.

Se poate, de asemenea, ca informațiile din bufferul intermediar să devină irelevante. Acest lucru se întâmplă atunci când datele din memoria principală se modifică fără a face ajustări în memoria cache. Pentru a asigura coerența în toate procesele de editare, sunt utilizate protocoale de coerență.

Provocări moderne

Odată cu o creștere a frecvenței procesoarelor și o creștere a performanței RAM, a apărut o nouă zonă cu probleme - limitările interfeței. Ce poate observa o persoană informată din asta? Memoria cache este foarte utilă dacă frecvența în RAM este mai mică decât în ​​procesor. Multe dintre ele au propriul buffer intermediar pentru a reduce timpul de acces la RAM, care este mai lent decât registrele. CPU-urile care acceptă adresarea virtuală includ adesea un buffer de traducere a adresei mic, dar foarte rapid. Dar, în alte cazuri, memoria cache nu este foarte utilă și, uneori, creează doar probleme (dar aceasta se întâmplă de obicei în computerele care au fost modificate de un neprofesionist). Apropo, vorbind despre ce sunt datele stocate în cache în memoria unui smartphone, trebuie remarcat faptul că, datorită dimensiunii mici a dispozitivului, trebuie create noi implementări de cache în miniatură. În zilele noastre, unele telefoane se laudă cu parametri similari cu cei ai computerelor avansate de acum zece ani - și ce diferență face dimensiunea lor!

Sincronizarea datelor între diferite buffere

  1. Inclusiv. Cache-ul se poate comporta în orice fel.
  2. Exclusiv. Dezvoltat pentru fiecare caz specific.
  3. Neexclusiv. Standard larg răspândit.

Niveluri de stocare în cache

Numărul lor este de obicei trei sau patru. Cu cât nivelul memoriei este mai mare, cu atât este mai mare și mai lent:

  1. cache L1. Cel mai rapid nivel de cache este primul. De fapt, face parte din procesor, deoarece este situat pe un cip și aparține blocurilor funcționale. De obicei, împărțit în două tipuri: cache de instrucțiuni și cache de date. Majoritatea procesoarelor moderne nu funcționează fără acest nivel. Acest cache funcționează la frecvența procesorului, astfel încât poate fi accesat în fiecare ciclu de ceas.
  2. cache L2. De obicei situat împreună cu precedentul. Este o amintire comună. Pentru a-i afla valoarea, trebuie să împărțiți întregul volum alocat pentru stocarea în cache a datelor la numărul de nuclee pe care le are procesorul.
  3. cache L3. Lent, dar cel mai mare cache dependent. De obicei, mai mult de 24 MB. Folosit pentru sincronizarea datelor care provin din diferite cache de nivel al doilea.
  4. cache L4. Utilizarea este justificată numai pentru mainframe-uri și servere multiprocesoare de înaltă performanță. Se vinde ca cip separat. Dacă pui o întrebare despre ce este stocarea în cache a datelor într-un smartphone Samsung și cauți acest nivel în el, pot spune că cu siguranță am fost 5 ani prea grăbiți.

Asociativitatea în cache

Aceasta este o caracteristică fundamentală. Asociativitatea datelor din cache este necesară pentru a afișa segmentarea logică. La rândul său, este necesară datorită faptului că enumerarea secvenţială a tuturor liniilor disponibile necesită zeci de cicluri de ceas şi anulează toate avantajele. Prin urmare, o legare rigidă a celulelor RAM la datele din cache este utilizată pentru a reduce timpul de căutare. Dacă comparăm tampoane intermediare care au același volum, dar asociativitate diferită, atunci cel cu cel mai mare va funcționa mai puțin rapid, dar cu o eficiență specifică semnificativă.

Concluzie

După cum puteți vedea, datele din cache permit computerului dvs. să acționeze mai rapid în anumite condiții. Dar, din păcate, există încă destul de multe aspecte la care se poate lucra mult timp.

Probabil, mulți utilizatori de computere și dispozitive mobile au întâlnit cel puțin uneori conceptul de „date în cache”. Ce este asta, mulți, sincer vorbind, pur și simplu habar nu au. Cu toate acestea, folosind sfaturi pentru accelerarea oricărui dispozitiv care are un sistem de operare, ei știu sigur că memoria cache trebuie șters. Acest lucru este parțial adevărat, dar nu toate datele pot fi șterse. Se întâmplă că, fără ele, unele programe instalate pe dispozitiv pur și simplu nu vor funcționa.

Ce înseamnă „date stocate în cache” în sens general?

Deci, să ne uităm la conceptul general. Aproximativ, acest termen descrie datele stocate pe un computer sau pe un sistem mobil pentru a accelera accesul ulterior la anumite aplicații sau site-uri de pe Internet prin descărcarea de informații care ar dura, în mod normal, mai mult timp pentru a fi recuperate.

Pentru a fi mai clar, putem da un exemplu despre cum sunt utilizate datele din cache. Ce este aceasta, de exemplu, dacă un utilizator vizitează o pagină de internet pe care se uită la fotografii? Acestea sunt copiile lor sub formă de miniaturi, care sunt salvate într-un folder special de pe hard disk-ul computerului sau pe stocarea internă a unui dispozitiv mobil. La reintrarea în pagină, utilizatorul nu trebuie să aștepte până când tot conținutul (de exemplu, grafică, video și, în general, multimedia), este încărcat, deoarece toate elementele din pagină sunt adăugate direct din directorul cache.

la telefon?

Dar acesta a fost doar o rațiune generală. Cu internetul totul este clar. Să vedem acum ce date de aplicație stocate în cache sunt pe un telefon (adică applet-uri, altele decât browserele web).

De fapt, aceste informații sunt oarecum similare în esență cu datele salvate de pe Internet, doar că în cea mai mare parte sunt asociate cu salvarea setărilor sau conținutului specific al oricărui program cu care funcționează sistemul de operare. Pentru a fi un pic mai clar, să ne uităm la câteva exemple de mai jos.

Exemple de utilizare a memoriei cache

Să ne uităm la câteva tipuri de date de bază care pot și nu pot fi șterse. În primul caz, acest lucru se aplică oricăror aplicații instalate pe sistem, cu excepția cazului în care funcționalitatea lor completă necesită utilizarea unui cache suplimentar care diferă de cel de sistem.

Dar cu conținutul cache special, care destul de des trebuie să fie copiat singur pe un telefon sau tabletă sau descărcat suplimentar de pe Internet, situația este oarecum diferită.

Cel mai simplu exemplu sunt datele din cache ale jocului. Ce ar putea fi? Da, orice: texturi suplimentare, grafică, video, audio sau chiar parametri ai jocului în sine. Astfel de informații, așa cum este deja clar, nu pot fi șterse în nicio circumstanță, deoarece atunci jocul pur și simplu nu va porni sau va da o eroare care să afirme că acest lucru și asta lipsesc pentru a începe.

Același lucru este valabil și pentru unele aplicații muzicale pentru dispozitive mobile. Să luăm FL Studio Mobile ca exemplu. Nici măcar programul de instalare al aplicației nu are tot ce aveți nevoie pentru a rula secvențatorul. Cu alte cuvinte, este instalat doar shell-ul principal al software-ului.

Ce sunt datele aplicației stocate în cache pe telefon în raport cu acest tip de program? Acestea sunt seturi de instrumente, efecte, setări pentru interacțiunea cu alte applet-uri, parametri pentru suportarea anumitor formate audio etc. De regulă, un astfel de cache este salvat într-un folder special obb, care se află pe unitatea internă, cu excepția cazului în care se indică faptul că poate fi plasat pe un card de memorie amovibil. Astfel de informații ocupă o cantitate destul de mare de spațiu, dar fără ea aplicația va fi nefuncțională (care este valoarea unui singur shell software, care nu are instrumente sau efecte?).

Ștergerea memoriei cache pe un dispozitiv mobil folosind mijloace standard

Ce sunt datele stocate în cache pe un telefon, ne-am dat seama puțin. Acum să ne uităm la problemele curățării unui astfel de conținut, deoarece tinde să încetinească sistemul.

Orice dispozitiv Android are două instrumente de ștergere a memoriei cache. Primul este conceput pentru a șterge datele pentru toate aplicațiile, al doilea vă permite să ștergeți memoria cache doar pentru un singur applet.

Dacă trebuie să ștergeți totul, utilizați meniul de setări în care este selectată secțiunea de memorie. Când atingeți o linie de date din cache, sistemul emite un avertisment că toate informațiile vor fi șterse. Suntem de acord și așteptăm finalizarea curățeniei.

Acum câteva cuvinte despre ce sunt datele aplicației stocate în cache în ceea ce privește ștergerea lor pentru un applet selectat separat. Puteți găsi informații despre ele în aceeași secțiune de memorie, dar accesând meniul aplicației.

Apoi, trebuie doar să selectați appletul dorit și, după ce ați intrat în meniul acestuia, apăsați pe butonul de golire cache din partea de jos. În general, atât prima, cât și a doua metodă arată oarecum incomod, deoarece în acest caz așa-numita ștergere poate fi efectuată din surse diferite. Prin urmare, este mai bine să utilizați programe speciale.

Folosind optimizatori și agenți de curățare

Astăzi, multe astfel de programe au fost create prin analogie cu sistemele computerizate staționare. În aceleași depozite Play Market sau AppStore nu găsești nici măcar zeci, ci sute.

Datele din cache (ceea ce este deja clar) pot fi șterse pentru întregul sistem și pentru fiecare applet selectat.

În ceea ce privește programele în sine, cele mai preferate sunt aplicațiile și apple-urile cu focalizare strictă concepute pentru optimizare generală. Primele sunt reprezentate de programe precum App Cache Cleaner, Auto Cahe Cleaner etc.

Printre optimizatori, putem evidenția în special versiunile mobile ale CCleaner, All-in-one Toolbox și multe altele. Ce anume să folosești este o chestiune de preferință personală, deoarece fiecare astfel de program are propriile sale avantaje și dezavantaje.

În loc de un total

Acesta este totul despre înțelegerea termenului „date în cache”. Ce este asta, cred, este deja clar pentru majoritatea utilizatorilor. Cu toate acestea, problema ștergerii unor astfel de informații trebuie abordată cu precauție extremă, deoarece pentru unele tipuri de programe, așa cum s-a menționat mai sus, poate fi necesară pentru lucru. Dar, după cum arată practica, este mai bine să apelați la utilitățile generale. În ele, instrumentul de ștergere a memoriei cache este un modul obligatoriu. Și atunci când le folosiți, puteți, de asemenea, să accelerați sistemul.

Cele mai bune articole pe această temă