sql >> Databáze >  >> RDS >> Mysql

MySQL - Trvalé připojení vs sdružování připojení

Trvalá připojení neznamená, že všechna vlákna používají stejné připojení. Jen "říká", že necháte připojení otevřené (na rozdíl od otevření připojení pokaždé, když jej potřebujete). Otevření připojení je nákladná operace, takže se – obecně – snažíte vyhnout otevírání připojení častěji, než je nutné.

To je důvod, proč vícevláknové aplikace často používají fondy připojení. Fond se stará o otevírání a zavírání připojení a každé vlákno, které potřebuje připojení, je požaduje od fondu. Je důležité dbát na to, aby vlákno vrátilo připojení co nejdříve do fondu, aby jej mohlo použít jiné vlákno.

Pokud má vaše aplikace pouze několik dlouhých běžících vláken, která vyžadují připojení, můžete také otevřít připojení pro každé vlákno a nechat je otevřené.

Použití pouze jednoho připojení (jak jste jej popsal) se rovná fondu připojení s maximální velikostí jedna. To bude dříve nebo později vaším úzkým hrdlem, protože všechna vlákna budou muset čekat na připojení. To by mohla být možnost serializace databázových operací (provádět je v určitém pořadí), ačkoli existují lepší možnosti, jak zajistit serializaci.



  1. Mysql Left Join Null Výsledek

  2. Získat nejbližší zeměpisnou délku a šířku z databázové tabulky MSSQL?

  3. Chyba:Tabulka 'mysql.proc' při přidávání zdroje dat MySQL do projektu Visual Studio neexistuje

  4. CodeIgniter - vložení aktivního záznamu, pokud je nový, nebo aktualizace při duplikaci