..


Sponsorētās saites

Caching datu

Datu caching ir noderīgs līdzeklis, lai uzlabotu izpildi jebkuras programmatūras sistēmas. Ideja ir likt bieži izmanto datus ļoti jaudīgu ierīci. Faktiski, lai gan piekļūt lielapjoma atmiņas ierīces laiks turpinās uzlabot, piemēram, piekļuvi datiem dzīvo uz cietā diska ir joprojām ļoti lēnāk nekā piekļūt tiem, kamēr tie atrodas atmiņā. Tādējādi padarīt pieejamus datus ātrāk izmantoti ievērojami palīdz uzlabot mūsu lietojumprogrammas.

In ASP.NET Cache ir paralēli mūsu pieteikumus un ir pieejama caur HttpContext un System.Web.UI.Page. Izmantojiet Cache ir ļoti līdzīgs tam, ko novēroja Session objektu, kā jūs varat piekļūt objektiem to, izmantojot rādītāja. Bez tam jūs varat kontrolēt ilgumu virkni objektu un savienojumi starp objektiem kešatmiņu un fizisko datu avotu.

Cache pārvaldība ASP.NET ir ļoti vienkārši, lai redzētu, kā rīkoties ar piemēru. Pieņemsim, ka esat GetData () metodi, kas veido savienojumu ar datu bāzi un atgriež DataTable






 aizsargājamo DataTable GetData ()







 {



  



 DataTable dt = null;



  



 dt = new DataTable ();



  



 strConnection String = "Savienojums string DB";



  



 DbProviderFactory f =



  



 DbProviderFactories.GetFactory ("System.Data.SqlClient");



  



 Izmantojot (DbConnection savien = f.CreateConnection ())



  



 {



    



 conn.ConnectionString = strConnection;



    



 conn.Open ();



    



 DbCommand komandu = f.CreateCommand ();



    



 command.CommandText = "SELECT * FROM tabulas nosaukums";



    



 command.Connection = savien;



    



 IDataReader lasītājs = Command.ExecuteReader ();



    



 dt.Load (lasītājs);



    



 reader.Close ();



    



 conn.Close ();



  



 }



  



 atgriezties dt;







 }



Mums ir arī cita metode BindData (), kas saista datiem, ko GetData (), lai DataList atrodas vienā no mūsu tīmekļa veidlapu






 BindData aizsargātas DataTable ()







 {



  



 DataTable dt;



  



 this.GetData dt = ();



  



 this.DataList1.DataSource = dt;



  



 this.DataBind ();



  



 atgriezties dt;







 }



Vēl viena metode, ka mums ir vajadzīga mūsu piemērs ir CreaTabella, kas atgriež tabulas struktūra saskaņā ar noteiktu veidu






 CreaTabella aizsargātas DataTable (DataTable tableSchema)







 {



  



 DataTable table = jauns DataTable ();



  



 foreach (DataColumn dc tableSchema.Columns)



  



 {



    



 tabella.Columns.Add (dc.ColumnName,



    



 dc.DataType);



  



 }



  



 atgriezties tabulā;







 }



Metodes GetData () un BindData () tiek pieprasītas Page_Load ja šādi






 aizsargā spēkā Page_Load (objekts sūtītājam, EventArgs e)







 {



  



 if (IsPostBack)



  



 {



    



 DataTable dt = BindData ();



    



 DataTable elementiTabella this.CreaTabella = (dt);



    



 Session ["elementiTabella"] = elementiTabella;



  



 }







 }



un pēc tam katru reizi, kad lapa ir izveidota jūs izveidojat savienojumu ar datu bāzi un ielādē datus. Apstākļos, kad lūgumu nāk no iekšienes klients, kas varētu būt pieņemami pieteikumiem izmērā, lai apmierinātu tūkstošiem klientu tas nav pieņemams. Faktiski, datu bāzes piekļuves operācijās ļoti dārga dāvana laikā un būtu jāsamazina līdz minimumam.

Šajā brīdī mēs varam veikt dažas aplēses par datu veidu, ko pārvalda mūsu pieteikumu. Tikai jautājums, ja jums nepieciešams pārlādēt datus ik pēc laika, ja tie nemaina bieži. Ja ir tāda nepieciešamība, mēs varam domāt par uzglabātu šādu datu nesēja, kurš nodrošina piekļuvi tiem pašiem ļoti ātri un bez savienojumiem ar datu bāzi (piemēram, datora iekšējo atmiņu). Tādējādi pieteikums, atbilst daudz vairāk vienlaicīgu pieprasījumus no klientiem. Protams, ja apstrādātie dati mūsu piemērošana mainās ļoti bieži šāda pieeja nebūtu piemērota.

Pasākumus, lai to datu caching ir:

  1. Pārbaudiet, vai konkrētā informācija ir cache
  2. Ja ir kešatmiņā, izmantojot
  3. Ja nav cache, lai saņemtu to, lai izveidotu savienojumu ar datu bāzi
  4. Uzglabāt elements tikko ielādes cache izmantošanai nākotnē

Šajā brīdī mēs, lai mainītu metodes, mēs redzējām sākumā šī mācība pārvaldes dati caching. Šeit ir metode GetData () mainīta






 aizsargājamo DataTable GetData ()







 {



  



 DataTable dt = null;

  

  



 dt = (DataTable) Cache ["TabellaInCache"];

  

  



 ja (dt == null)



  



 {



    



 dt = new DataTable ();



    



 strConnection String = "Savienojums string DB";



    



 DbProviderFactory DbProviderFactories.GetFactory = f ("System.Data.SqlClient");



    



 Izmantojot (DbConnection savien = f.CreateConnection ())



    



 {



      



 conn.ConnectionString = strConnection;



      



 conn.Open ();



      



 DbCommand komandu = f.CreateCommand ();



      



 command.CommandText = "SELECT * FROM tabulas nosaukums";



      



 command.Connection = savien;



      



 IDataReader lasītājs = Command.ExecuteReader ();



      



 dt.Load (lasītājs);



      



 reader.Close ();



      



 conn.Close ();



    



 }



  



 }



  



 Cache ["TabellaInCache"] = dt;



  



 atgriezties dt;







 }



Ar jauno metodi GetData () ir pirmā pārbaudes esamību tabulas kešatmiņā. Ja tabulā neeksistē if (dt == null) tas ir radīts kā tas tika darīts iepriekš, bet, ja pastāv savienojums ar datubāzi un datu daļa ieguve ir pilnīgi apieta. Jebkurā gadījumā, pirms atgriešanās uz tabulu, ir glabāti kešatmiņā (Cache ["TabellaInCache"] = dt;). Šīs nelielās izmaiņas var ievērojami samazināt izmaksas, iekraušanas lapu (ja jums jau ir izveidots skaidrs laiks).

Skaidrs, ka šī mācība ir panākt, lai jums nozīmē potenciālu caching datu un izpētīt dažādus veidus, kā cache vadība, pieejamajām metodēm un redzēt, kādi varētu būt noderīgi laiku pa laikam es aicinu jūs konsultēties ar oficiālo Microsoft .

Palīdzība ar Visual Studio ASP.Net
E-Learning
ASP (Advanced) ASP (Advanced)
Pilns kurss, lai radītu dinamisku tīmekļa vietnes. Sākot no € 39.
ASP.NET (Kurss) ASP.NET (Kurss)
Pilns kurss būvniecībai Web pieteikumus no 49 €.
SQL un datu bāzes (Course) SQL un datu bāzes (Course)
Izveidot un pārvaldīt relāciju datu bāzēm. Sākot no € 39.
Sponsorētās saites