Med vedvarende forbindelser:
- Du kan ikke opbygge transaktionsbehandling effektivt
- umulige brugersessioner på samme forbindelse
- appen er ikke skalerbar. Med tiden skal du muligvis udvide det, og det vil kræve styring/sporing af vedvarende forbindelser
- hvis scriptet af en eller anden grund ikke kunne frigive låsen på bordet, så vil følgende scripts blokere på ubestemt tid, og man bør genstarte db-serveren. Ved at bruge transaktioner vil transaktionsblokering også overføres til det næste script (ved at bruge samme forbindelse), hvis scriptudførelse slutter før transaktionsblokeringen er fuldført, osv.
Vedvarende forbindelser bringer ikke noget, du kan gøre med ikke-vedvarende forbindelser.
Hvorfor skal man så overhovedet bruge dem?
Den eneste mulige årsag er ydeevne, at bruge dem, når der skal oprettes et link til din SQL Server er høj. Og dette afhænger af mange faktorer som:
- databasetype
- om MySQl-serveren er på den samme maskine og, hvis ikke, hvor langt? kan være ude af dit lokale netværk/domæne?
- hvor meget overbelastet af andre processer maskinen, som MySQL sidder på
Man kan altid erstatte vedvarende forbindelser med ikke-vedvarende forbindelser. Det kan ændre scriptets ydeevne, men ikke dets adfærd!
Kommerciel RDMS kan være licenseret af antallet af samtidige åbnede forbindelser, og her kan de vedvarende forbindelser gå glip af