Tämä artikkeli on konekäännöksen peiliartikkeli, klikkaa tästä siirtyäksesi alkuperäiseen artikkeliin.

Näkymä: 26469|Vastaus: 3

[Lähde] EF suhtautuu varovaisesti satunnaisiin tietoihin

[Kopioi linkki]
Julkaistu 25.4.2019 17.01.42 | | | |
Tänään palvelin joutui CC-hyökkäyksen kohteeksi, mikä aiheutti IIS:n sivuston jumiintumisen, ja sivusto jumitettiin uudelleen uudelleenkäynnistyksen jälkeen, tarkista sivuston virheloki seuraavasti:

System.Data.Entity.Core.EntityCommandExecutionException: 执行命令定义时出错。有关详细信息,请参阅内部异常。 ---> System.Data.SqlClient.SqlException: 执行超时已过期。完成操作之前已超时或服务器未响应。  ---> System.ComponentModel.Win32Exception: 等待的操作过时。


Suuri määrä kyselyaikakatkaisupoikkeuksia aiheuttaa verkkosivuston jumiintumisen, ja kyselyaikakatkaisun SQL-lauseet tulevat satunnaisen datan ottamismenetelmästä, koodi on seuraava:

Koodi tarkoittaa suunnilleen: 10 tietoyksikköä valitaan satunnaisesti tietokannasta, kunhan ne eivät kopioi nykyistä tunnistetta.

Mikä vaikuttaa yksinkertaiselta vaatimukselta, on saanut palvelimen lopettamaan puhelun! Yllä olevan koodin tuottama SQL-lause on seuraava:

Toteutussuunnitelma on seuraava:



Jos tietokannassa on miljoona tietopalaa, eikö ensin otettaisiin 999 999 datapalaa ja sitten 10 datapalaa näistä 999 999 datapalasta?

Kysy DBA-ryhmän isolta kaverilta ja saat vastauksen: "KylläVoi luoja, tuo taitaa olla hidasta, ja sinun täytyy soittaa tätä SQL-lausetta monta kertaa.



Aluksi luulin, että kyse oli EF-ongelmasta,Itse asiassa, jos kirjoitat suoraan SQL:llä, ei ole hyvää ratkaisua

Jos on, niin opeta minua!




Edellinen:Avoimen lähdekoodin projekti HtmlAgilityPack toteuttaa C#-verkkoindeksin
Seuraava:2019 HCIA:n oppimisvideot
Julkaistu 25.4.2019 17.07.00 |
oppinut
Julkaistu 26.4.2019 9.20.13 |
Ohjelmassa on kymmenen satunnaislukua, ja sql tässä luvussa on täydellinen
Julkaistu 26.4.2019 13.08.53 |
Opin ~~~~~~~~~~~~~~~~
Vastuuvapauslauseke:
Kaikki Code Farmer Networkin julkaisemat ohjelmistot, ohjelmamateriaalit tai artikkelit ovat tarkoitettu vain oppimis- ja tutkimustarkoituksiin; Yllä mainittua sisältöä ei saa käyttää kaupallisiin tai laittomiin tarkoituksiin, muuten käyttäjät joutuvat kantamaan kaikki seuraukset. Tämän sivuston tiedot ovat peräisin internetistä, eikä tekijänoikeuskiistat liity tähän sivustoon. Sinun tulee poistaa yllä oleva sisältö kokonaan tietokoneeltasi 24 tunnin kuluessa lataamisesta. Jos pidät ohjelmasta, tue aitoa ohjelmistoa, osta rekisteröityminen ja hanki parempia aitoja palveluita. Jos rikkomuksia ilmenee, ota meihin yhteyttä sähköpostitse.

Mail To:help@itsvse.com