| | | | |
| |||||||
| PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen |
|
| | LinkBack | Themen-Optionen | Thema bewerten |
| | |
| Gast
Beiträge: n/a
| Moin! Ich arbeite jetzt seit geraumer Zeit an einem sehr umfangreichen Onlineshop Produkt und wollte einfach mal eure Meinung zu verschiedenen technischen Aspekten hören. 1.) Verwendete "Fremdbibliotheken" Für Datenbankabstraktion: ADO Als Templatesystem kommt Smarty zum Einsatz Ansonsten im Administrationsbereich, u.a. Javaapplets zum Uploaden von Bildern, Flash-"Programme" für Bildbearbeitung, Crossbrowser RichEditor, uvm. 2.) Performance zum jetzigen Zeitpunkt Natürlich abhängig von der jeweiligen Operation die ausgeführt wird, liegt aber deutlich im > 0,02 Sekunden Bereich. Größter Knackpunkt war der Pullout des gesamten geparsten Templates per echo ... Dies hat gut und gerne um die 200ms gekostet. Hab jetzt Output Buffer aktiviert und mit ob_start und ob_flush diese Zeit auf etwa 2ms drücken können ... Ein Lasttest mit Apache Bench ergab vor der Optimierung etwa 17 Requests pro Sekunde, jetzt dürfte der Wert bei etwa 30 liegen ... Interessant wirds erst wenn wir die ca. 5000 Artikel und 1200 Kategorien aus unserem bisherigen Shopsystem übertragen haben ... 3.) Struktureller Aufbau Es gibt eine Art Kernel welcher die gesamte Ein- und Ausgabelogik steuert ... Dieser dient praktisch als Gateway für alle Userinputs... Im wesentlichen werden dort alle Klassen instanziert, die Variablen auf Plausibilität und eventuelle Attacken untersucht und das jeweils gerade benötigte Template geparst ... Der Ablauf ist so [User Inputs verwalten] [Klassen inkludieren] [Klassen instanzieren] [Konfiguration laden] [Pfade und andere Systemvariablen global in einer Hauptklasse setzen] [Content Klasse instanzieren und mit Zeigern auf alle anderen Klassen ausstatten] [User Inputs casten, welches Template wird benötigt] [Ausgabe des geparsten Templates] Jede Klasse wird nur einmal instanziert und stellt jeweils eine logische Abbildung eines Teils des Shops da, z.B. Warenkorb oder Systemfunktionen ... Verbunden werden die einzelnen Klassen durch eine übergeordnete Content-Klasse ... Datenbankabfragen werden in der Regel zwischengespeichert (Je nach Beschaffenheit der Daten bis zu 30 Minuten aus dem Cache). Das System ist so gestaltet, das der Endanwender jede gewünschte Funktion direkt über die Templates einbinden kann, wenn er also auf einer selbst gestalteten Seite eine Top 10 Liste der meistverkauften Artikel benötigt, führt er einfach an beliebiger Stelle im Template einen Funktionsaufruf durch {fetch_toplist} Das System führt dann im Background die gewünschte Funktion aus und liefert die passenden Daten ans Template ... So ist man sehr flexibel was die Gestaltung der Templates angeht. Natürlich können auch eigene Module an den Shop angebunden werden ... (Entweder durch Extends der bestehenden Klassen oder durch Custom PHP-Skripte die man dem Shop "bekannt" macht und dann über _POST und _GET Parameter einbinden kann) -------------------------------------------------------------- So nun noch einige Fragen: 1.) Wie kann ich feststellen wieviel Arbeitsspeicher das Script benötigt? memory_get_usage() gibts ja erst unter PHP5. 2.) Gibt es noch andere Tools außer Apache Bench um die Performance zu testen? 3.) Wer hat Lust in ca. 2 Wochen an einem Betatest des Systems teilzunehmen? Neben einer Erwähnung der Betatester würde ich für wirklich hartnäckige Tester die auch auf Details achten das ein oder andere Produkt von www.coolsells.de springen lassen ... 4.) Danke an alle die bis hier gelesen haben ![]() Gruß, Stefan |
|
| | |
| PHP Code Flüsterer Registriert seit: 21.08.2005 Beiträge: 4682 PHP-Kenntnisse: Fortgeschritten | |
| | ||
| Moderator Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse: Fortgeschritten ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() | 1.) Ist halt so ne Sache, wenn der Kunde Appletts und alles aktiviert hat kann er das System ohne Probleme bedienen, aber stehen für die grundfunktionen Ersatz zur verfügung der auf JS, JAVA, Flash etc verzichtet? 2) Du Schreibst wie du die Perfomance mit ob_start und so verbessert hast, vieleicht auch mal dran gedacht gewisse Teile der Seite komplett als html zu cachen? Oder ist sowas implemntiert ? zu den Fragen: 1) www.php.net/memory_get_usage() Zitat:
3) schick mal ne pm was wie wo zu machen ist :P 4) gern geschehen. mfg robo47
__________________ robo47.net - Blog, Codeschnipsel und mehr | | |
| | |
|
| Themen-Optionen | |
| Thema bewerten | |
|
|
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| seriöses Job-Angebot-> fertiges Screendesign, Shop + Admi | AWBusiness | Beitragsarchiv | 0 | 27.04.2008 21:06 |
| Shop | Zergling-new | Off-Topic Diskussionen | 4 | 17.04.2008 17:19 |
| Shop Service - wie umsetzen? | greg | PHP Tipps 2006 | 1 | 07.05.2006 14:55 |
| Begrenzung von .gif/.Jpg body background | Bruce | HTML, Usability und Barrierefreiheit | 2 | 02.03.2006 11:09 |
| CSS background | anno | HTML, Usability und Barrierefreiheit | 1 | 18.09.2005 02:28 |
| link image als background | AliceD | HTML, Usability und Barrierefreiheit | 4 | 31.08.2005 14:10 |
| Shop bzw. Warenkorb - Framework | El Barto | Beitragsarchiv | 7 | 27.01.2005 19:24 |
| Shop in PHP | PHP Tipps 2005 | 4 | 07.01.2005 23:09 | |
| background nicht mitscrollen | HTML, Usability und Barrierefreiheit | 9 | 12.11.2004 14:56 | |
| pHp Shop in Homepage einbinden !!! ABER WIE ??? | PHP Tipps 2004 | 1 | 15.08.2004 19:23 | |
| erkennen ob ein User in einem Shop eingekauft hat. | Filewalker | PHP Tipps 2004 | 3 | 27.06.2004 20:38 |
| shop im frame problem (ie vs mozilla??) | PHP-Fortgeschrittene | 1 | 15.06.2004 02:20 | |
| Besucher kamen über folgende Suchanfragen bei Google auf diese Seite |
| technischer background, technischen background in php, background shop, shop background, memory_get_usage php gute werte? |

Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.