30.07.2009 2 Kommentare
Heute wird mein Dachfenster ausgetauscht – da hab ich etwas Zeit, hier gepflegt an der beta7 (Codename) zu basteln und neue Fortschritte zu präsentieren.
Ich feile gerade am letzten Schliff der Frontend-Performance-Optimierung. Das Backend, wie z.B. die Datenbank-Struktur- und -Queries, ist in der beta6 bereits ganz gut optimiert gewesen. Hier wird die Struktur auf jeden Fall weitgehend übernommen werden.
Einerseits wird es ein Caching von Inhaltsseiten geben, damit diese bei jedem Aufruf nicht neu erzeugt werden müssen. Diese Cache-Dateien haben dann eine Gültigkeit von z.B. 2 Stunden – wobei die Startseite sicher eine geringere Lebensdauer haben muss. Außerdem wird dieses Caching auch erstmal nur für nicht-eingeloggte Benutzer stattfinden. Also zum Beispiel solche die per Google oder einen Link durchschauen wollen und sich nicht registrieren möchten. Der Unterschied ist aber schon enorm: Um den Faktor 10 werden die Seiten schneller ausgeliefert. Statt beispielsweise 0,4 Sekunden stehen dann 0,04 Sekunden auf der Uhr. Mag zwar marginal sein, aber in der User-Experience macht sich das deutlich bemerkbar, wenn nach dem Klick sofort die neue Seite erscheint. Für eingeloggte User wird dann sicher ein Teil-Caching implementiert werden, um wirklich statische Inhalte schneller ausliefern zu können und die Datenbank und den Server zu entlasten. Aber dazu später :-)
Zum zweiten habe ich eine optionale ZLIB-Komprimierung eingebaut, welche die zum Browser übertragenen Daten um etwa 75% verkleinert. Gerade bei HTML-Code ist eine hohe Redundanz und damit Komprimierungspotential vorhanden. Der Client entpackt diese Dateien dann wieder – hierbei ist jeder normale Browser dazu in der Lage. Falls nicht, schickt das Skript die Daten einfach unkomprimiert – hier ist im Code eine Prüfung eingebaut, damit der Benutzer keinen Zeichensalat sieht. Ob die gesparte Übertragungszeit nicht eventuell durch die Zeit zum Dekomprimieren nulliert wird, muss ich aber noch in Feldversuchen eruieren – hieran ist natürlich auch die Clientgeschwindigkeit maßgeblich beteiligt. Der Server sollte damit kein Problem haben – zumal die komprimierten Daten ebenso gecached werden.
Auf jeden Fall eine spannende Sache, und bei entsprechenden Besucherzahlen unabdinglich.
Schlagworte: beta7, entwicklung, performance, verbesserung
2 Kommentare
23.07.2009
Als kleines Hobby zwischendurch bastel ich ja derzeit an einer wirklich komplett neuen Plattform als Nachfolger von meineLeu.de. Mit der Erfahrung aus fast 3 Jahren Betrieb und auch sonstiger persönlicher Weiterentwicklung in der Internetentwicklung.
Auf jeden Fall wird hier dezent und sinnvoll das Javascript-Framework jQuery zum Einsatz kommen. Früher hab ich solche netten Effekte, wie aus- und einfadende Infoboxen ja selber programmiert – aber da ich mittlerweile auch etwas wirtschaftlicher und zeitkritischer denke, nutze ich diese Ressourcen lieber für eine sinnvolle Usability und bessere Funktionen auf der Seite.
Die Anwendung von jQuery ist wirklich idiotentauglich und kann durch diverse Plugins nahezu beliebig erweitert werden. Es scheint hier wohl auch eine lebendige Fangemeinde zu existieren, die sich um die Erweiterung und Verbesserung der Open-Source-Bibliothek verdient macht. Für interessierte Entwickler lohnt sich das Stöbern auf jeden Fall. Ich werde definitiv – wenn die beta7 dann irgendwann mal online ist – einen sinnvollen Betrag für das Projekt spenden. Geniale Sache und sehr unterstützenswert.
Schlagworte: beta7, entwicklung
Kommentar schreiben
21.01.2009
Nach über zweieinhalb Jahren Entwicklung und Live-Betrieb wird zur Zeit der komplette Code hinter meineLeu.de neu gestrickt. Diesen Luxus kann ich mir erlauben, da das Projekt ein reines Hobby von mir ist (und trotzdem einen leichten Überschuss erwirtschaften kann). Es ist auch wirklich sehr interessant, wie man sich in der Zeit programmiertechnisch weiterentwickelt hat und zudem auch die Erfahrungen des alltäglichen Live-Betriebs in die Entwicklung mit einbeziehen kann.
Der Code wird modularer aufgebaut, was Erweiterungen und übergreifende Änderungen einfacher gestaltet. Ich erlebe gerade beim Entwickeln tatsächlich, wie ich hin und wieder über diese strukturierte Entwicklung grinsen muss :-D .. das kann wahrscheinlich nur ein geübter Programmierer-Nerd wie ich verstehen ;-)
Die gesamte Benutzung wird außerdem entschlackt und vereinfacht. Die Übersichtlichkeit und Zugänglichkeit wird groß geschrieben.
Auch in Zeiten von Großmächten aus Übersee (Facebook, flickr, etc. und pipapo) lasse ich meinen Elan nicht bremsen. Ich sehe es nämlich einfach garnicht ein, meine Daten irgendwelchen amerikanischen Wichten anzuvertrauen. Außerdem bin ich leidenschaftlicher Entwickler und baue meine Erfahrungen mit diesem Projekt aus und sehe es als ausgezeichnete Referenz meines Könnens. Wenn die bisherige Version das Gesellenstück war, wird die neue Version (den Codenamen denke ich mir noch aus) mein Meisterstück.
Es tut sich auf jeden Fall in naher Zukunft etwas. Ich versuche eben neben normalem Job und Privatleben immer mal ein wenig Zeit fürs Basteln abzuzweigen. Macht ja auch ne Menge Spaß und das Wetter ist eh grad ungemütlich :-)
Schlagworte: entwicklung, hintergrund, relaunch, verbesserung
Kommentar schreiben
05.12.2007
beim entwickeln und basteln benötige ich hin und wieder ruhe – aber manchmal muss es auch mal etwas auf die ohren geben (zum beispiel wenn ich ne nette idee hatte und die grad umsetze) .
höre mir hier grad ein lustiges mashup von nem dj an. der vermanscht diverseste musikteilchen in nem set. mit dabei ist auch ein stückchen von einer meiner lieblingskapellen, den sugababes.
das mal als kleiner musiktipp von mir aus der bastelstube :-)
sugababes – freak like me: http://www.youtube.com/watch?v=UlErb9EI910
—
und hier noch eins von ihnen, welches zu den liedchen gehört, welche mir aus persönlichen gründen immer ne leichte gänsehaut bescheren:
sugababes – too lost in you: http://www.youtube.com/watch?v=fnIrl_evQXE
Schlagworte: entwicklung, offtopic
Kommentar schreiben