Ha a MySQL kliensek száma meghaladja a maximális kapcsolatot, a különböző nyelvű illezőprogramok "Túl sok kapcsolat" hibát jelentenek.
Java program hiba:
Adatforrás elutasította a kapcsolat létrehozását, üzenet a szervertől: "Túl sok kapcsolat"
.NET Core program hiba:
Túl sok kapcsolat Körülbelül Csatlakozási hiba: Időkorlát lejárt. Az időkorlát eltelt a csatlakozás előtti időszak a medencéből. Ez azért történt, mert minden összekötött kapcsolat használatban volt, és elérték a maximális medence méretét.
Használja az alábbi parancsot, hogy megtekintse a maximális és az aktuális kapcsolatok számát:
ideiglenesen beállítsuk a maximális kapcsolati számot,Nem kell újraindítanod a MySQL szervert, de a beállítás érvénytelenné válik, amikor újraindítod a MySQL szolgáltatást:
A /etc/my.cnf oldalon véglegesen beállíthatod az adatbázishoz szükséges maximális kapcsolati számot:
Amikor beállítjuk a maximális kapcsolatszámot és teszteljük .NET programmal, a hiba továbbra is a következő lesz:
Csatlakozási hiba: Időkorlát lejárt. Az időkorlát eltelt a csatlakozás előtti időszak a medencéből. Ez azért történt, mert minden összekötött kapcsolat használatban volt, és elérték a maximális medence méretét. Ennek oka, hogy a .NET kliensek alapértelmezetten thread poolokat használnak, és a szálpoolok maximális korlátja alapértelmezett: 100
A hiperlink bejelentkezés látható.
MiZárd be a harcolós szál medencét, a szál pool használata nélkül nincs korlát, a teszt egyszerre 500 szál párhuzamosan zajlik, és nem történik hiba, ahogy az alábbi ábrán látható:
A .NET/C# tesztkód így néz ki:
(Vége)
|