<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>PopeOfPop &#187; PHP</title>
	<atom:link href="http://www.popeofpop.de/tag/php/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.popeofpop.de</link>
	<description>Eventfotografi und mehr</description>
	<lastBuildDate>Thu, 19 Jan 2012 19:25:15 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Beatelic Master Update</title>
		<link>http://www.popeofpop.de/2009/07/beatelic-master-update/</link>
		<comments>http://www.popeofpop.de/2009/07/beatelic-master-update/#comments</comments>
		<pubDate>Wed, 01 Jul 2009 21:19:49 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Programmieren]]></category>
		<category><![CDATA[beatelic]]></category>
		<category><![CDATA[hosting]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[php5]]></category>
		<category><![CDATA[plesk]]></category>
		<category><![CDATA[update]]></category>

		<guid isPermaLink="false">http://www.popeofpop.de/?p=124</guid>
		<description><![CDATA[<p class="wp-caption-text">Alt gegen Neu. Beatelic im Wandel.</p>
<p>Wie ebend schon erwähnt habe ich den kompletten Server mit allem drum und dran gewechselt. Jetzt bin ich auch in dem Luxus von PHP5 und einem professionellen Plesk.</p>
<p>Nach endlosen Programmiernächten, wie wir Informatik-Kellerkinder das ja so tun, ist nun von Null auf Hundert alles online. Der Code wurde komplett [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_125" class="wp-caption aligncenter" style="width: 510px"><img class="size-medium wp-image-125" title="7f409b0cbd815bba20f851730b77f725" src="http://www.popeofpop.de/wp-content/uploads/7f409b0cbd815bba20f851730b77f725-500x234.jpg" alt="" width="500" height="234" /><p class="wp-caption-text">Alt gegen Neu. Beatelic im Wandel.</p></div>
<p>Wie ebend schon erwähnt habe ich den kompletten Server mit allem drum und dran gewechselt. Jetzt bin ich auch in dem Luxus von PHP5 und einem professionellen Plesk.</p>
<p>Nach endlosen Programmiernächten, wie wir Informatik-Kellerkinder das ja so tun, ist nun von Null auf Hundert alles online. Der Code wurde komplett neu geschrieben, jede einzelne Seite, jede Funktion. Aber es hat sich gelohnt. Sicherlich wird noch nicht alles sofort wieder richtig funktionieren. Unter der Haube von Beatelic läuft nun das Codeigniter Framework, welches nicht eines der größten und bekanntesten ist. Aber in für meine Ansprüche genau das richtige Darstelle. Einen <a href="http://www.popeofpop.de/2009/02/den-richtigen-untergrund-finden/">Vergleich verschiedenener Frameworks </a>gab es zum Anfang des Jahres.</p>
<p>Desweiteren sind schone ein paar nette kleine Updates vorbereitet die ich demnächst dann auch mal aufspielen werde. Inzwischen haben sich auch auf Beatelic schon über 7.000 Bilder gesammelt. Das ist eine stolze Menge.</p>
<p>Vielen Dank auch an Stephan (<a href="http://duly-arts.de/" target="_blank">http://duly-arts.de/</a>) für das tolle Design.</p>
<p>Check: <a href="http://www.beatelic.de">Beatelic.De</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.popeofpop.de/2009/07/beatelic-master-update/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Den richtigen Untergrund finden</title>
		<link>http://www.popeofpop.de/2009/02/den-richtigen-untergrund-finden/</link>
		<comments>http://www.popeofpop.de/2009/02/den-richtigen-untergrund-finden/#comments</comments>
		<pubDate>Thu, 19 Feb 2009 17:22:41 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Programmieren]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[Cake]]></category>
		<category><![CDATA[Codeigniter]]></category>
		<category><![CDATA[Performance]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Zend]]></category>

		<guid isPermaLink="false">http://www.popeofpop.de/?p=35</guid>
		<description><![CDATA[<p class="MsoNormal" style="margin: 0cm 0cm 10pt;">Seit Tagen, ach was Wochen, versuche ich nun mich für ein passendes Framework zu entscheiden welches die neue Basis für Beatelic.De bieten soll.  Im Open Source PHP-Bereich gibt es natürlich unzählige Frameworks, daraus das persönlich passende zu finden ist gar nicht so einfach. Ich habe meinen Blick auf zwei bekannte [...]]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal" style="margin: 0cm 0cm 10pt;"><span style="font-size: small; font-family: Calibri;">Seit Tagen, ach was Wochen, versuche ich nun mich für ein passendes Framework zu entscheiden welches die neue Basis für Beatelic.De bieten soll.<span style="mso-spacerun: yes;">  </span>Im Open Source PHP-Bereich gibt es natürlich unzählige Frameworks, daraus das persönlich passende zu finden ist gar nicht so einfach. Ich habe meinen Blick auf zwei bekannte beschränkt, sowie einer komplett selbstgeschriebenen Entwicklung. Das „<a href="http://framework.zend.com/" target="_blank">Zend</a>“- und „<a href="http://cakephp.org/" target="_blank">Cake</a>“-Framework. Im Laufe der Recherche ist dann aber auch noch „<a href="http://www.codeigniter.com" target="_blank">Codeigniter</a>“ hinzugekommen.</span></p>
<h3 class="MsoNormal" style="margin: 0cm 0cm 10pt;">Cake-Framework</h3>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt;"><span style="font-size: small; font-family: Calibri;">Dieses hat mich besonders beeindruckt. Es bietet eine große Anzahl von Hilfsmitteln zur schnellen Entwicklung der notwendigsten CRUD (Create, Read, Update, Delete) Funktionen. Schnell habe ich es erreicht dass der Controller für „Locations“ alles konnte. Sogar ein wenig AJAX ging auf die Schnelle einzubauen.<span style="mso-spacerun: yes;">  </span>Der Code blieb immer sehr sauber und dank den fertigen Werteüberprüfungen konnte ich mir viel Eigenarbeit sparen. Erschreckend war aber, welche Mengen an SQL Statements abgerufen werden bei einer „Object-&gt;find(‚all‘)“ Abfrage, etwas zu viel in meinen Augen. Das Anpassen der Statements fand ich auch etwas krampfhaft und durch schlechte Dokumentation auch nicht immer leicht nachzuvollziehen. </span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt;"><img class="aligncenter size-full wp-image-31" title="beat_cake" src="http://www.popeofpop.de/wp-content/uploads/beat_cake.gif" alt="beat_cake" width="500" height="300" /></p>
<h3 class="MsoNormal" style="margin: 0cm 0cm 10pt;">Zend-Framework</h3>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt;"><span style="font-size: small; font-family: Calibri;">Ok, dieses erstmal zum Laufen zu bekommen ist dann etwas schwieriger gewesen. Mit Hilfe der Beispielanwendung konnte ich auch schnell alles für mein „Location“ Objekt umschreiben. Trotzdem musste ich feststellen, dass eine Menge an Code noch aus eigener Hand kommen muss. <span style="mso-spacerun: yes;"> </span>Und Gewöhnungsbedürftig ist es auch ganz schön.</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt;"><img class="aligncenter size-full wp-image-34" title="beat_zend" src="http://www.popeofpop.de/wp-content/uploads/beat_zend.gif" alt="beat_zend" /></p>
<h3 class="MsoNormal" style="margin: 0cm 0cm 10pt;">Codeigniter</h3>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt;"><span style="font-size: small; font-family: Calibri;">In vielen Blogeinträgen wurde immer dieses Framework erwähnt, als die Specialvariante. Nun gut, man könnte es sich ja mal anschauen. Gesagt, getan.<span style="mso-spacerun: yes;">  </span>Auf den ersten Blick schien es auch alle notwendigen Funktionen zu bieten. Beeindruckte aber vielmehr durch die Performance.<span style="mso-spacerun: yes;">  </span>Code mäßig gibt es die eine oder andere Zeile, welche man mehr schreiben muss als bei Cake, aber die Sinn<span style="mso-spacerun: yes;">  </span>machen, und dadurch Optionen zu einer größeren Freiheit im Programmieren bieten. </span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt;"><img class="aligncenter size-full wp-image-32" title="beat_code" src="http://www.popeofpop.de/wp-content/uploads/beat_code.gif" alt="beat_code" /></p>
<h3 class="MsoNormal" style="margin: 0cm 0cm 10pt;">Eigenes Framework</h3>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt;"><span style="font-size: small; font-family: Calibri;">Hier ist natürlich eine Menge Grundarbeit zu erledigen. Alle notwendigen MVC-Funktionen, die Datenbankverarbeitung, Sicherheit und Eingabekontrollen. Benutzerverwaltung und Rechte für Gruppen. Trotz der „etwas“ größeren Schreibarbeit konnte ich viele der Funktionen bieten, welche auch die großen Brüder haben. <span style="mso-spacerun: yes;"> </span>Leider bin ich mir dabei nie so richtig sicher auch an alle Sicherheitsaspekte gedacht zu haben. Die Leute da draußen sind ja doch recht kreativ im Hacken von Webseiten geworden. Ein Vorteil war aber da, in der Performance konnte keiner das Wasser reichen.</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt;"><img class="aligncenter size-full wp-image-33" title="beat_own" src="http://www.popeofpop.de/wp-content/uploads/beat_own.gif" alt="beat_own" width="500" height="300" /></p>
<h3 class="MsoNormal" style="margin: 0cm 0cm 10pt;">Der Vergleich</h3>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt;"><span style="font-size: small; font-family: Calibri;">Lauter hin und her, so richtig sicher bin ich immer noch nicht. Aber da ich in noch geraumer Zeit auf billige Webserver angewiesen sein werde ist das alles entschiedenste Kriterium dann doch die Performance. Getestet habe ich alle Systeme mit Apache Benchmark <strong>ab</strong> (immer 100 Aufrufe hintereinander). Cake hat auf meinem Testserver (mit eAccelerator) schon langsam gearbeitet, aber auf dem Webserver noch schlechter. 1600ms <span style="mso-spacerun: yes;"> </span>ist der Durchschnitt für die einfache Loactions-Seite, manchmal dann aber auch runter bis 20s oder sogar Ausfälle. Trotz netter Funktionen schleppt das Framework einen großen Overhead mit. Sehr große Schwankungen.</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt;"><span style="font-size: small; font-family: Calibri;">Zend war schon flotter. 1000ms im guten Durchschnitt, ansonsten eigentlich auch bei 5s. Das liegt natürlich auch an meinem schlechten Webserver, aber dafür entwickeln wir das ganze ja auch.</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt;"><span style="font-size: small; font-family: Calibri;">Codeigniter hat dann mal etwas rausgerissen. Im Test kam ein Durchschnittswert von 250ms raus (lokaler Server normalerweiser sogar nur 20ms), welcher sich auch konstant durch alle Aufrufe durchgezogen hat. Das macht natürlich etwas her mit dem man arbeiten kann.</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt;"><span style="font-size: small; font-family: Calibri;">Nun der ICE unter den Frameworks, mein Eigenes. 130ms in fast allen Durchläufen. Aber das macht auch Sinn bei der geringen Menge an Code was dort durchlaufen wird. </span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt;"><span style="font-size: small; font-family: Calibri;">Aber wenn wir schon einmal bei dem ganzen Testen sind, dachte ich mir es wäre doch gut auch das aktuelle beatelic.de/locations zu testen. Durchschnitt brachte das Drupal (Version 5) 800ms auf die Waage, was noch ein guter Wert ist. Oft muss man dort aber auch ca2000ms warten. </span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt;"><span style="font-size: small; font-family: Calibri;">Und somit: The Winner is <strong>Codeigniter</strong>. Auf ein frohes Schaffen.</span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.popeofpop.de/2009/02/den-richtigen-untergrund-finden/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

