interface für con_properties
ich hab mir da jetzt mal was auf die schnelle bei den eigenen funktionen isStored und getStored einen kleinen array cache gebaut...ein Cache wäre ganz gut,
mit der änderungen hab ich den speed jetzt mal ca. um den faktor 2 erhöht...
bei getValue ist das so ne sache, die angaben sind dort fast schon zu genau, sodas ich schon vorher einen cache mit allen values anlegen müsste... eventuell ne funktion wie createPropertyCache bauen...
und dann muss ich noch aufpassen wenn ein element gelöscht bzw angelegt wird...
keine blöde ideevielleicht helfen aber auch schon Indexe auf der DB
die tabelle ist momentan ja wie folgt definiert
Code: Alles auswählen
CREATE TABLE `con_properties` (
`idproperty` int(10) NOT NULL default '0',
`idclient` int(10) NOT NULL default '0',
`itemtype` varchar(32) NOT NULL default '',
`itemid` varchar(255) NOT NULL default '',
`type` varchar(32) NOT NULL default '',
`name` varchar(32) NOT NULL default '',
`value` text NOT NULL,
`author` varchar(32) NOT NULL default '',
`created` datetime NOT NULL default '0000-00-00 00:00:00',
`modified` datetime NOT NULL default '0000-00-00 00:00:00',
`modifiedby` varchar(32) NOT NULL default '',
PRIMARY KEY (`idproperty`)
) TYPE=MyISAM
idclient, itemtype, itemid ?
*** make your own tools (wishlist :: thx)
hmm...timo hat geschrieben:eigentlich über alle Felder, die in der Where-Clause drin sind, aus dem Kopf würde ich mal sagen itemtype, itemid, type und name für die Abfrage...
die änderung bewirkt nur einen zeitgewinn von ca 0.01 sekunden...
na besser als nichts...
*** make your own tools (wishlist :: thx)
-
- Beiträge: 6284
- Registriert: Do 15. Mai 2003, 18:32
- Wohnort: Da findet ihr mich nie!
- Kontaktdaten:
naja wenn der index nicht 100%ig passt, wird er nicht verwendet -> lass dir mal das SQL-Statement in der Methode getValue ausgeben -> kann sein daß noch idclient fehlt.
Ich mache es immer so, daß ich das komplette SQL-Statement in den phpMyAdmin packe und dann "EXPLAIN QUERY" drüberlaufen lasse -> wenn der neue Index da steht, wird er auch verwendet
Ich mache es immer so, daß ich das komplette SQL-Statement in den phpMyAdmin packe und dann "EXPLAIN QUERY" drüberlaufen lasse -> wenn der neue Index da steht, wird er auch verwendet