Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.
Seiten: 1
#1 23. Februar 2016 14:23
- Andynium
- Moderator
- Ort: Dohna / SN / Deutschland
- Registriert: 13. September 2010
- Beiträge: 7.017
- Webseite
Umstieg AdoDB lite -> MySQLi nativ
CMSMS setzt bekanntermaßen AdoDB lite als Datenbank-Layer ein.
Jedoch wird dieser Layer nicht mehr weiterentwickelt und ist eigentlich auch nicht mehr wirklich erforderlich, da nur noch MySQL (respektive Maria-DB) genutzt werden kann (zum ehemaligen Dreigespann aus MySQL, Postgres und Sqlite). Zudem knabbert AdoDB lite ordentlich an der Performance - da werden Klassen erstellt und erweitert, Funktionen und Variablen überschrieben etc.
Damit verbaut man sich natürlich eine Menge Optionen, die man mit MySQLi nativ hätte. Ein Umstieg ist jedoch leichter als man denkt
$db = cmsms()->GetDb();
$dbid = $db->connectionId;
$result = mysqli_query($dbid , 'select * from cms_content;');
In Zeile 1 holt man sich das AdoDB-Objekt. Zeile 2 liefert die Verbindungs-ID zur Datenbank. Und schon kann man sämtliche MySQLi-Statements (einschließlich Prepared Statements und Transaktionen) ausführen ($result enthält das Resultset-Objekt der Abfrage).
Denkt ihr da auch das, was ich denke?
Richtig - man könnte so CMSMS Schritt für Schritt auf MySQLi nativ umsetzen und damit einen erheblichen Performance-Gewinn erzielen, ohne den Zugriff auf die Funktionen von AdoDB (und damit die Kompatibilität) zu verlieren ..
Danke für den Tipp, Jan!
Offline
#2 24. April 2016 11:38
- DokuMan
- probiert CMS/ms aus
- Registriert: 26. November 2011
- Beiträge: 51
- Webseite
Re: Umstieg AdoDB lite -> MySQLi nativ
Hat das schon jemand durchgezogen? Wieviel Aufwand ist das?
Offline
#3 25. April 2016 11:33
- Andynium
- Moderator
- Ort: Dohna / SN / Deutschland
- Registriert: 13. September 2010
- Beiträge: 7.017
- Webseite
Re: Umstieg AdoDB lite -> MySQLi nativ
Die komplette Umstellung von CMSMS dürfte eine ziemliche Arbeit sein.
Ist aber möglicherweise gar nicht mehr in der Form erforderlich, siehe
https://cms-1.org/forum/viewtopic.php?pid=38550#p38550
Wenn ich es richtig verstanden habe, wird dabei die Klasse mysqli um die AdoDB-Funktionen erweitert.
Offline
Seiten: 1