Kun MySQL-asiakkaiden määrä ylittää yhteyksien enimmäismäärän, eri kielillä olevat ajurit ilmoittavat virheen "Liian monta yhteyksiä".
Java-ohjelman virhe:
Datalähde hylätty yhteyden muodostaminen, viesti palvelimelta: "Liikaa yhteyksiä"
.NET Core -ohjelman virhe:
Liikaa yhteyksiä Noin virhe yhdistämisessä: Aikakatkaisu umpeutui. Aikakatkaisu kului ennen kuin yhteys altaalle saatiin. Tämä saattoi tapahtua, koska kaikki yhteiset liitännät olivat käytössä ja maksimipoolin koko saavutettiin.
Käytä seuraavaa komentoa nähdäksesi yhteyksien enimmäismäärän ja nykyisen liitännän määrän:
aseta väliaikaisesti suurin yhteyksien määrä,MySQL-palvelinta ei tarvitse käynnistää uudelleen, mutta asetus muuttuu virheelliseksi, kun käynnistät MySQL-palvelun uudelleen:
Voit pysyvästi asettaa suurimman määrän yhteyksiä tietokantaan /etc/my.cnf:ssä:
Kun asetamme suurimman määrän yhteyksiä ja testaamme .NET-ohjelmalla, virhe on edelleen seuraava:
virhe yhdistämisessä: Aikakatkaisu umpeutui. Aikakatkaisu kului ennen kuin yhteys altaalle saatiin. Tämä saattoi tapahtua, koska kaikki yhteiset liitännät olivat käytössä ja maksimipoolin koko saavutettiin. Tämä johtuu siitä, että .NET-asiakkaat käyttävät oletuksena säikepoolia, ja säiepoolien maksimiraja on oletuksena: 100
Hyperlinkin kirjautuminen on näkyvissä.
MeSulje allaskierteen allas, ilman säiepoolia ei ole rajaa, testi on samanaikaisesti 500 säikeen kanssa samanaikaisesti, eikä virheitä raportoida, kuten alla olevassa kuvassa on esitetty:
.NET/C#-testikoodi näyttää tältä:
(Loppu)
|