<?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>software1987</title>
	<atom:link href="http://software1987.de/feed/" rel="self" type="application/rss+xml" />
	<link>http://software1987.de</link>
	<description>Tech-Blog</description>
	<lastBuildDate>Sun, 30 Oct 2011 14:28:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Ruby BitField C Extension</title>
		<link>http://software1987.de/2011/10/ruby-bitfield-c-extension/</link>
		<comments>http://software1987.de/2011/10/ruby-bitfield-c-extension/#comments</comments>
		<pubDate>Sun, 30 Oct 2011 14:28:00 +0000</pubDate>
		<dc:creator>halfdan</dc:creator>
				<category><![CDATA[Ruby]]></category>
		<category><![CDATA[c]]></category>
		<category><![CDATA[extension]]></category>
		<category><![CDATA[gem]]></category>
		<category><![CDATA[rubygem]]></category>

		<guid isPermaLink="false">http://software1987.de/?p=193</guid>
		<description><![CDATA[Angetrieben durch die Vorlesung "Evolutionäre Algorithmen" an der Technischen Hochschule Mittelhessen habe ich eine Ruby Extension entwickelt mit der sich Bitfelder performant und speichersparend abbilden lassen. In der Vorlesung betrachtet man als Bitfelder abgebildete "Gene" (die bis auf die Idee der Mutation, Crossover, Selektion nichts mit Ihren biologischen Vorbildern zutun haben). Da man in Ruby [...]]]></description>
			<content:encoded><![CDATA[<p>Angetrieben durch die Vorlesung "Evolutionäre Algorithmen" an der Technischen Hochschule Mittelhessen habe ich eine Ruby Extension entwickelt mit der sich Bitfelder performant und speichersparend abbilden lassen. In der Vorlesung betrachtet man als Bitfelder abgebildete "Gene" (die bis auf die Idee der Mutation, Crossover, Selektion nichts mit Ihren biologischen Vorbildern zutun haben). Da man in Ruby nicht direkt einzelne Bits ansprechen kann (man kann sie natürlich über Integers mit Bitshifts abbilden) und ein Array von Integern bei entsprechenden Bitfeld größen viel Speicher benötigt (4 Byte * Anzahl Bits) leidet die Performance des gesamten Algorithmus' darunter.</p>
<p>Die von C++ stammende Boost Bibliothek stellt einen Datentypen dynamic_bitset zur Verfügung mit dem Bitfelder nahezu beliebiger Größe effizient verwaltet werden können. In relativ kurzer Zeit habe ich daher eine Ruby Extension in C/C++ geschrieben die diesen Datentypen in Ruby zur Verfügung stellt. Das Ergebnis lässt sich durchaus sehen: Im Vergleich zu meiner vorherigen Implementierung in der ein Bitfeld als Integer-Array abgebildet wurde hat sich die Performance um den Faktor 15 verbessert.</p>
<p>Die Extension ist als Gem verfügbar und lässt sich mit:</p>
<blockquote><p>gem install bitfield</p></blockquote>
<p>installieren.</p>
<p>Quellcode: <a href="https://github.com/halfdan/ruby-bitfield">https://github.com/halfdan/ruby-bitfield</a><br />
Rubygem:  <a href="https://rubygems.org/gems/bitfield">https://rubygems.org/gems/bitfield</a></p>
<div class="lightsocial_container"><a class="lightsocial_a" href="http://digg.com/submit?url=http%3A%2F%2Fsoftware1987.de%2F2011%2F10%2Fruby-bitfield-c-extension%2F&amp;title=Ruby+BitField+C+Extension" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/digg.png" alt="Digg This" title="Digg This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.reddit.com/submit?url=http%3A%2F%2Fsoftware1987.de%2F2011%2F10%2Fruby-bitfield-c-extension%2F&amp;title=Ruby+BitField+C+Extension" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/reddit.png" alt="Reddit This" title="Reddit This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fsoftware1987.de%2F2011%2F10%2Fruby-bitfield-c-extension%2F&amp;title=Ruby+BitField+C+Extension" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/stumbleupon.png" alt="Stumble Now!" title="Stumble Now!" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://buzz.yahoo.com/buzz?targetUrl=http%3A%2F%2Fsoftware1987.de%2F2011%2F10%2Fruby-bitfield-c-extension%2F&amp;headline=Ruby+BitField+C+Extension" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/yahoo_buzz.png" alt="Buzz This" title="Buzz This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dzone.com/links/add.html?title=Ruby+BitField+C+Extension&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F10%2Fruby-bitfield-c-extension%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/dzone.png" alt="Vote on DZone" title="Vote on DZone" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.facebook.com/sharer.php?t=Ruby+BitField+C+Extension&amp;u=http%3A%2F%2Fsoftware1987.de%2F2011%2F10%2Fruby-bitfield-c-extension%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/facebook.png" alt="Share on Facebook" title="Share on Facebook" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://delicious.com/save?title=Ruby+BitField+C+Extension&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F10%2Fruby-bitfield-c-extension%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/delicious.png" alt="Bookmark this on Delicious" title="Bookmark this on Delicious" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dotnetkicks.com/kick/?title=Ruby+BitField+C+Extension&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F10%2Fruby-bitfield-c-extension%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/dotnetkicks.png" alt="Kick It on DotNetKicks.com" title="Kick It on DotNetKicks.com" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://dotnetshoutout.com/Submit?title=Ruby+BitField+C+Extension&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F10%2Fruby-bitfield-c-extension%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/dotnetshoutout.png" alt="Shout it" title="Shout it" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F10%2Fruby-bitfield-c-extension%2F&amp;title=Ruby+BitField+C+Extension&amp;summary=&amp;source=" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/linkedin.png" alt="Share on LinkedIn" title="Share on LinkedIn" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.technorati.com/faves?add=http%3A%2F%2Fsoftware1987.de%2F2011%2F10%2Fruby-bitfield-c-extension%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/technorati.png" alt="Bookmark this on Technorati" title="Bookmark this on Technorati" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://twitter.com/home?status=Reading+http%3A%2F%2Fsoftware1987.de%2F2011%2F10%2Fruby-bitfield-c-extension%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/twitter.png" alt="Post on Twitter" title="Post on Twitter" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.google.com/buzz/post?url=http%3A%2F%2Fsoftware1987.de%2F2011%2F10%2Fruby-bitfield-c-extension%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/google_buzz.png" alt="Google Buzz (aka. Google Reader)" title="Google Buzz (aka. Google Reader)" /></a>&nbsp;&nbsp;</div>]]></content:encoded>
			<wfw:commentRss>http://software1987.de/2011/10/ruby-bitfield-c-extension/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP 5.4: Built-In Webserver</title>
		<link>http://software1987.de/2011/10/php-5-4-built-in-webserver/</link>
		<comments>http://software1987.de/2011/10/php-5-4-built-in-webserver/#comments</comments>
		<pubDate>Mon, 03 Oct 2011 15:46:17 +0000</pubDate>
		<dc:creator>halfdan</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[webserver]]></category>

		<guid isPermaLink="false">http://software1987.de/?p=183</guid>
		<description><![CDATA[Die aktuell im Beta Status befindliche Version 5.4 von PHP wartet mit einigen neuen Features auf. Eines davon ist ein integrierter Webserver mit dem sich Skripte direkt ausführen und im Browser anzeigen lassen. Wenn man nach dem Start des Webservers phpinfo() aufruft erhält man im Feld "Server API" die Anzeigt "Built-in HTTP server". Mit dem [...]]]></description>
			<content:encoded><![CDATA[<p>Die aktuell im Beta Status befindliche Version 5.4 von PHP wartet mit einigen neuen Features auf. Eines davon ist ein integrierter Webserver mit dem sich Skripte direkt ausführen und im Browser anzeigen lassen.</p>
<pre class="brush: plain; title: ; notranslate">
  -S &lt;addr&gt;:&lt;port&gt; Run with built-in web server.
  -t &lt;docroot&gt;     Specify document root &lt;docroot&gt; for built-in
                   web server.
</pre>
<p>Wenn man nach dem Start des Webservers phpinfo() aufruft erhält man im Feld "Server API" die Anzeigt "Built-in HTTP server".</p>
<div id="attachment_184" class="wp-caption alignnone" style="width: 256px"><a href="http://software1987.de/wp-content/uploads/2011/07/php54alpha2-phpinfo.png"><img class="size-medium wp-image-184" title="PHP 5.4 Alpha2 - phpinfo()" src="http://software1987.de/wp-content/uploads/2011/07/php54alpha2-phpinfo-246x300.png" alt="PHP 5.4 Alpha2 - phpinfo()" width="246" height="300" /></a><p class="wp-caption-text">PHP 5.4 Alpha2 - phpinfo()</p></div>
<p>Mit dem Kommando "php -S localhost:8080 -t /srv/www/" lässt sich der Webserver auf Port 8080 starten, der Document Root liegt dabei auf /srv/www. Dieser Webserver ermöglicht es Entwicklern ihre Anwendung zu testen ohne zusätzlich einen Webserver wie Apache, Nginx, Lighttpd aufzusetzen. Es ist nur eine Frage der Zeit bis Entwicklungsumgebungen dieses Feature nutzen werden.</p>
<div class="lightsocial_container"><a class="lightsocial_a" href="http://digg.com/submit?url=http%3A%2F%2Fsoftware1987.de%2F2011%2F10%2Fphp-5-4-built-in-webserver%2F&amp;title=PHP+5.4%3A+Built-In+Webserver" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/digg.png" alt="Digg This" title="Digg This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.reddit.com/submit?url=http%3A%2F%2Fsoftware1987.de%2F2011%2F10%2Fphp-5-4-built-in-webserver%2F&amp;title=PHP+5.4%3A+Built-In+Webserver" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/reddit.png" alt="Reddit This" title="Reddit This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fsoftware1987.de%2F2011%2F10%2Fphp-5-4-built-in-webserver%2F&amp;title=PHP+5.4%3A+Built-In+Webserver" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/stumbleupon.png" alt="Stumble Now!" title="Stumble Now!" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://buzz.yahoo.com/buzz?targetUrl=http%3A%2F%2Fsoftware1987.de%2F2011%2F10%2Fphp-5-4-built-in-webserver%2F&amp;headline=PHP+5.4%3A+Built-In+Webserver" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/yahoo_buzz.png" alt="Buzz This" title="Buzz This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dzone.com/links/add.html?title=PHP+5.4%3A+Built-In+Webserver&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F10%2Fphp-5-4-built-in-webserver%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/dzone.png" alt="Vote on DZone" title="Vote on DZone" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.facebook.com/sharer.php?t=PHP+5.4%3A+Built-In+Webserver&amp;u=http%3A%2F%2Fsoftware1987.de%2F2011%2F10%2Fphp-5-4-built-in-webserver%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/facebook.png" alt="Share on Facebook" title="Share on Facebook" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://delicious.com/save?title=PHP+5.4%3A+Built-In+Webserver&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F10%2Fphp-5-4-built-in-webserver%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/delicious.png" alt="Bookmark this on Delicious" title="Bookmark this on Delicious" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dotnetkicks.com/kick/?title=PHP+5.4%3A+Built-In+Webserver&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F10%2Fphp-5-4-built-in-webserver%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/dotnetkicks.png" alt="Kick It on DotNetKicks.com" title="Kick It on DotNetKicks.com" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://dotnetshoutout.com/Submit?title=PHP+5.4%3A+Built-In+Webserver&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F10%2Fphp-5-4-built-in-webserver%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/dotnetshoutout.png" alt="Shout it" title="Shout it" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F10%2Fphp-5-4-built-in-webserver%2F&amp;title=PHP+5.4%3A+Built-In+Webserver&amp;summary=&amp;source=" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/linkedin.png" alt="Share on LinkedIn" title="Share on LinkedIn" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.technorati.com/faves?add=http%3A%2F%2Fsoftware1987.de%2F2011%2F10%2Fphp-5-4-built-in-webserver%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/technorati.png" alt="Bookmark this on Technorati" title="Bookmark this on Technorati" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://twitter.com/home?status=Reading+http%3A%2F%2Fsoftware1987.de%2F2011%2F10%2Fphp-5-4-built-in-webserver%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/twitter.png" alt="Post on Twitter" title="Post on Twitter" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.google.com/buzz/post?url=http%3A%2F%2Fsoftware1987.de%2F2011%2F10%2Fphp-5-4-built-in-webserver%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/google_buzz.png" alt="Google Buzz (aka. Google Reader)" title="Google Buzz (aka. Google Reader)" /></a>&nbsp;&nbsp;</div>]]></content:encoded>
			<wfw:commentRss>http://software1987.de/2011/10/php-5-4-built-in-webserver/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Force SSL mit Nginx</title>
		<link>http://software1987.de/2011/07/force-ssl-mit-nginx/</link>
		<comments>http://software1987.de/2011/07/force-ssl-mit-nginx/#comments</comments>
		<pubDate>Sun, 03 Jul 2011 12:10:08 +0000</pubDate>
		<dc:creator>halfdan</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[nginx]]></category>
		<category><![CDATA[ssl]]></category>

		<guid isPermaLink="false">http://software1987.de/?p=179</guid>
		<description><![CDATA[Beim Umstellen meines Server von Apache + Passenger und Lighttpd auf den leichtgewichtigen Nginx + Passenger habe ich einige SSL Zertifikate mit Installiert. Dabei ist es interessant einen möglichst leichten Weg zu haben bei einzelnen Domains eine SSL Verbindung zu erzwingen. Dafür genügen im server Kontext bereits die folgenden Zeilen:]]></description>
			<content:encoded><![CDATA[<p>Beim Umstellen meines Server von Apache + Passenger und Lighttpd auf den leichtgewichtigen Nginx + Passenger habe ich einige SSL Zertifikate mit Installiert. Dabei ist es interessant einen möglichst leichten Weg zu haben bei einzelnen Domains eine SSL Verbindung zu erzwingen.</p>
<p>Dafür genügen im server Kontext bereits die folgenden Zeilen:</p>
<pre class="brush: plain; title: ; notranslate">
if ($scheme = http) {
    rewrite ^(.*)$ https://$host$uri last;
}
</pre>
<div class="lightsocial_container"><a class="lightsocial_a" href="http://digg.com/submit?url=http%3A%2F%2Fsoftware1987.de%2F2011%2F07%2Fforce-ssl-mit-nginx%2F&amp;title=Force+SSL+mit+Nginx" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/digg.png" alt="Digg This" title="Digg This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.reddit.com/submit?url=http%3A%2F%2Fsoftware1987.de%2F2011%2F07%2Fforce-ssl-mit-nginx%2F&amp;title=Force+SSL+mit+Nginx" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/reddit.png" alt="Reddit This" title="Reddit This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fsoftware1987.de%2F2011%2F07%2Fforce-ssl-mit-nginx%2F&amp;title=Force+SSL+mit+Nginx" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/stumbleupon.png" alt="Stumble Now!" title="Stumble Now!" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://buzz.yahoo.com/buzz?targetUrl=http%3A%2F%2Fsoftware1987.de%2F2011%2F07%2Fforce-ssl-mit-nginx%2F&amp;headline=Force+SSL+mit+Nginx" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/yahoo_buzz.png" alt="Buzz This" title="Buzz This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dzone.com/links/add.html?title=Force+SSL+mit+Nginx&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F07%2Fforce-ssl-mit-nginx%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/dzone.png" alt="Vote on DZone" title="Vote on DZone" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.facebook.com/sharer.php?t=Force+SSL+mit+Nginx&amp;u=http%3A%2F%2Fsoftware1987.de%2F2011%2F07%2Fforce-ssl-mit-nginx%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/facebook.png" alt="Share on Facebook" title="Share on Facebook" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://delicious.com/save?title=Force+SSL+mit+Nginx&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F07%2Fforce-ssl-mit-nginx%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/delicious.png" alt="Bookmark this on Delicious" title="Bookmark this on Delicious" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dotnetkicks.com/kick/?title=Force+SSL+mit+Nginx&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F07%2Fforce-ssl-mit-nginx%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/dotnetkicks.png" alt="Kick It on DotNetKicks.com" title="Kick It on DotNetKicks.com" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://dotnetshoutout.com/Submit?title=Force+SSL+mit+Nginx&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F07%2Fforce-ssl-mit-nginx%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/dotnetshoutout.png" alt="Shout it" title="Shout it" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F07%2Fforce-ssl-mit-nginx%2F&amp;title=Force+SSL+mit+Nginx&amp;summary=&amp;source=" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/linkedin.png" alt="Share on LinkedIn" title="Share on LinkedIn" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.technorati.com/faves?add=http%3A%2F%2Fsoftware1987.de%2F2011%2F07%2Fforce-ssl-mit-nginx%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/technorati.png" alt="Bookmark this on Technorati" title="Bookmark this on Technorati" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://twitter.com/home?status=Reading+http%3A%2F%2Fsoftware1987.de%2F2011%2F07%2Fforce-ssl-mit-nginx%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/twitter.png" alt="Post on Twitter" title="Post on Twitter" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.google.com/buzz/post?url=http%3A%2F%2Fsoftware1987.de%2F2011%2F07%2Fforce-ssl-mit-nginx%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/google_buzz.png" alt="Google Buzz (aka. Google Reader)" title="Google Buzz (aka. Google Reader)" /></a>&nbsp;&nbsp;</div>]]></content:encoded>
			<wfw:commentRss>http://software1987.de/2011/07/force-ssl-mit-nginx/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>InterNetworX XMLRPC API für Ruby</title>
		<link>http://software1987.de/2011/06/internetworx-xmlrpc-api-fur-ruby/</link>
		<comments>http://software1987.de/2011/06/internetworx-xmlrpc-api-fur-ruby/#comments</comments>
		<pubDate>Sat, 04 Jun 2011 10:17:58 +0000</pubDate>
		<dc:creator>halfdan</dc:creator>
				<category><![CDATA[Ruby]]></category>
		<category><![CDATA[InterNetworX]]></category>
		<category><![CDATA[XMLRPC]]></category>

		<guid isPermaLink="false">http://software1987.de/?p=167</guid>
		<description><![CDATA[Der Domain Registrar InterNetworX (kurz: inwx) stellt eine XMLRPC API zur Verfügung mit der man automatisiert Domains/Handles anlegen, editieren oder löschen kann. Zudem kann man noch Einträge im Nameserver bearbeiten. INWX stellt für Entwickler eine API-Beschreibung, sowie Beispiel Implementierungen für PHP und Java zur Verfügung (link). Der Entwickler Philipp Klaus hat in seinem Blog zusätzlich [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft" title="InterNetworX Logo" src="https://www.inwx.de/images/logos/inwx.png" alt="" width="240" height="53" />Der Domain Registrar InterNetworX (kurz: inwx) stellt eine XMLRPC API zur Verfügung mit der man automatisiert Domains/Handles anlegen, editieren oder löschen kann. Zudem kann man noch Einträge im Nameserver bearbeiten.</p>
<p>INWX stellt für Entwickler eine API-Beschreibung, sowie Beispiel Implementierungen für PHP und Java zur Verfügung (<a href="http://www.inwx.de/download/api/api.zip">link</a>). Der Entwickler Philipp Klaus hat <a href="http://blog.philippklaus.de/2011/05/access-the-internetworx-xml-rpc-api-via-python/">in seinem Blog</a> zusätzlich eine Python-Portierung der API-Implementierung vorgestellt.</p>
<p>Im letzten Jahr habe ich für ein Ruby on Rails Projekt eine Ruby Implementierung geschrieben die ich nun hier vorstellen möchte.</p>
<h2>Voraussetzungen</h2>
<ul>
<li>Ruby 1.9.x (Abhängigkeit zu XMLRPC/Client)</li>
</ul>
<h2>Installation</h2>
<p>Der Quellcode wird auf Github gehostet. Daher gibt es zwei Wege um an den Quellcode zu gelangen:</p>
<p><strong>via git:</strong></p>
<pre class="brush: plain; title: ; notranslate">git clone git://github.com/halfdan/ruby-inwx-xmlrpc.git</pre>
<p><strong>via direktem Download:</strong></p>
<p><a href="https://github.com/halfdan/ruby-inwx-xmlrpc/tarball/master">.tar.gz</a>, <a href="https://github.com/halfdan/ruby-inwx-xmlrpc/zipball/master">.zip</a></p>
<h2>Benutzung</h2>
<p>Die INWX-API stellt eine Reihe an Objekten zur Verfügung auf denen sich Methoden aufrufen lassen. Im folgenden Beispiel wird auf dem Objekt "domain" die Methode "info" mit einem Parameter ":domain" aufgerufen, als Rückgabe liefert die API entsprechend Informationen über die angegebene Domain.</p>
<pre class="brush: ruby; title: ; notranslate">
require &quot;INWX/DomainRobot&quot;
require &quot;YAML&quot;

addr = &quot;api.ote.domrobot.com&quot;
# addr = &quot;api.domrobot.com&quot;
user = &quot;your_username&quot;
pass = &quot;your_password&quot;
lang = &quot;en&quot;

domainRobot = INWX::DomainRobot.new(addr, user, pass, lang, true)

object = &quot;domain&quot;
method = &quot;info&quot;

params = { :domain =&gt; &quot;software1987.de&quot; }

result = domainRobot.call(object, method, params)

puts YAML::dump(result)
</pre>
<p>Die Library lässt sich also sehr einfach verwenden. Hier noch einmal eine schrittweise Erklärung:</p>
<ol>
<li>Einbinden der Library:
<pre class="brush: ruby; title: ; notranslate">require &quot;INWX/DomainRobot&quot;</pre>
</li>
<li>Festlegen der Login-Daten und der Login-Addresse (hier: das OTE Testsystem)</li>
<li>Instanziieren des DomainRobots (letzter Parameter gibt an ob eine sichere Verbindung verwendet werden soll):
<pre class="brush: ruby; title: ; notranslate">domainRobot = INWX::DomainRobot.new(addr,user,pass,lang,true)</pre>
</li>
<li>Festlegen des Objekts und der Methode (siehe xmlrpc.pdf im INWX Download) mit Parametern.</li>
<li>Ausführen des XMLRPC-Requests:
<pre class="brush: ruby; title: ; notranslate">domainRobot.call(object, method, params)</pre>
</li>
</ol>
<p>Bei Fragen zur Bibliothek stehe ich gerne zur Verfügung!</p>
<div class="lightsocial_container"><a class="lightsocial_a" href="http://digg.com/submit?url=http%3A%2F%2Fsoftware1987.de%2F2011%2F06%2Finternetworx-xmlrpc-api-fur-ruby%2F&amp;title=InterNetworX+XMLRPC+API+f%C3%BCr+Ruby" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/digg.png" alt="Digg This" title="Digg This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.reddit.com/submit?url=http%3A%2F%2Fsoftware1987.de%2F2011%2F06%2Finternetworx-xmlrpc-api-fur-ruby%2F&amp;title=InterNetworX+XMLRPC+API+f%C3%BCr+Ruby" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/reddit.png" alt="Reddit This" title="Reddit This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fsoftware1987.de%2F2011%2F06%2Finternetworx-xmlrpc-api-fur-ruby%2F&amp;title=InterNetworX+XMLRPC+API+f%C3%BCr+Ruby" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/stumbleupon.png" alt="Stumble Now!" title="Stumble Now!" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://buzz.yahoo.com/buzz?targetUrl=http%3A%2F%2Fsoftware1987.de%2F2011%2F06%2Finternetworx-xmlrpc-api-fur-ruby%2F&amp;headline=InterNetworX+XMLRPC+API+f%C3%BCr+Ruby" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/yahoo_buzz.png" alt="Buzz This" title="Buzz This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dzone.com/links/add.html?title=InterNetworX+XMLRPC+API+f%C3%BCr+Ruby&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F06%2Finternetworx-xmlrpc-api-fur-ruby%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/dzone.png" alt="Vote on DZone" title="Vote on DZone" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.facebook.com/sharer.php?t=InterNetworX+XMLRPC+API+f%C3%BCr+Ruby&amp;u=http%3A%2F%2Fsoftware1987.de%2F2011%2F06%2Finternetworx-xmlrpc-api-fur-ruby%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/facebook.png" alt="Share on Facebook" title="Share on Facebook" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://delicious.com/save?title=InterNetworX+XMLRPC+API+f%C3%BCr+Ruby&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F06%2Finternetworx-xmlrpc-api-fur-ruby%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/delicious.png" alt="Bookmark this on Delicious" title="Bookmark this on Delicious" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dotnetkicks.com/kick/?title=InterNetworX+XMLRPC+API+f%C3%BCr+Ruby&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F06%2Finternetworx-xmlrpc-api-fur-ruby%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/dotnetkicks.png" alt="Kick It on DotNetKicks.com" title="Kick It on DotNetKicks.com" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://dotnetshoutout.com/Submit?title=InterNetworX+XMLRPC+API+f%C3%BCr+Ruby&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F06%2Finternetworx-xmlrpc-api-fur-ruby%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/dotnetshoutout.png" alt="Shout it" title="Shout it" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F06%2Finternetworx-xmlrpc-api-fur-ruby%2F&amp;title=InterNetworX+XMLRPC+API+f%C3%BCr+Ruby&amp;summary=&amp;source=" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/linkedin.png" alt="Share on LinkedIn" title="Share on LinkedIn" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.technorati.com/faves?add=http%3A%2F%2Fsoftware1987.de%2F2011%2F06%2Finternetworx-xmlrpc-api-fur-ruby%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/technorati.png" alt="Bookmark this on Technorati" title="Bookmark this on Technorati" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://twitter.com/home?status=Reading+http%3A%2F%2Fsoftware1987.de%2F2011%2F06%2Finternetworx-xmlrpc-api-fur-ruby%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/twitter.png" alt="Post on Twitter" title="Post on Twitter" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.google.com/buzz/post?url=http%3A%2F%2Fsoftware1987.de%2F2011%2F06%2Finternetworx-xmlrpc-api-fur-ruby%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/google_buzz.png" alt="Google Buzz (aka. Google Reader)" title="Google Buzz (aka. Google Reader)" /></a>&nbsp;&nbsp;</div>]]></content:encoded>
			<wfw:commentRss>http://software1987.de/2011/06/internetworx-xmlrpc-api-fur-ruby/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP 5.4: Short Syntax for Arrays</title>
		<link>http://software1987.de/2011/06/php-5-4-short-syntax-for-arrays/</link>
		<comments>http://software1987.de/2011/06/php-5-4-short-syntax-for-arrays/#comments</comments>
		<pubDate>Thu, 02 Jun 2011 00:11:16 +0000</pubDate>
		<dc:creator>halfdan</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[php-5.4]]></category>

		<guid isPermaLink="false">http://software1987.de/?p=158</guid>
		<description><![CDATA[Als aktiver Leser der PHP internals bekommt man recht frühzeitig Informationen über neue Features oder solche die vorgeschlagen werden. Neben der aktuellen Diskussionen um einen neuen Release Prozess über den die Entwickler in den kommenden Tagen abstimmen werden, gibt es eine Neuauflage einer Diskussion [2] aus dem Jahr 2008. Um in PHP ein Array zu [...]]]></description>
			<content:encoded><![CDATA[<p>Als aktiver Leser der PHP internals bekommt man recht frühzeitig Informationen über neue Features oder solche die vorgeschlagen werden. Neben der aktuellen Diskussionen um einen neuen <a href="https://wiki.php.net/rfc/releaseprocess">Release Prozess</a> über den die Entwickler in den kommenden Tagen abstimmen werden, gibt es eine Neuauflage einer Diskussion [2] aus dem Jahr 2008.</p>
<p>Um in PHP ein Array zu initialisieren und mit Werten vorzubelegen muss bisher immer das Keyword "array" verwendet werden.</p>
<pre class="brush: php; title: ; notranslate">$a = array(1,2,3);
$b = array(
  'domain' =&gt; 'software1987',
  'tld' =&gt; 'de'
);</pre>
<p>In anderen Sprachen gibt es hierfür eine leicht kürzere Syntax (Beispiel: Ruby):</p>
<pre class="brush: ruby; title: ; notranslate">a = [1,2,3]
b = { :domain =&gt; 'software1987', :tld =&gt; 'de' }
</pre>
<p>In der <a href="https://wiki.php.net/rfc/shortsyntaxforarrays">aktuellen Diskussion</a> geht es darum, eine vergleichbare Kurzsyntax für PHP einzuführen. Die Idee dazu ist bereits aus dem Jahr 2003 und taucht seitdem immer wieder Mal auf den Mailinglisten auf. Aktuell wird wieder über die Kurzsyntax abgestimmt und es sieht aktuell so aus als könnte einer der beiden Vorschläge tatsächlich Eingang in PHP 5.4 findet.</p>
<p>Vorschlag 1:</p>
<pre class="brush: php; title: ; notranslate">$a = [1, 2, 3];
$b = ['foo': 'orange', 'bar': 'apple', 'baz': 'lemon'];</pre>
<p>Vorschlag 2:</p>
<pre class="brush: php; title: ; notranslate">$a = [1, 2, 3];
$b = ['foo' =&gt; 'orange', 'bar' =&gt; 'apple', 'baz' =&gt; 'lemon'];</pre>
<p>Die Abstimmung [1] findet aktuell nur darüber statt, ob eine dieser Vorschläge implementiert werden soll oder nicht (zum Zeitpunkt des schreibens: 17 Ja / 1 Nein).</p>
<h3>Links</h3>
<p>[1] <a href="https://wiki.php.net/rfc/shortsyntaxforarrays/vote">https://wiki.php.net/rfc/shortsyntaxforarrays/vote</a> - Abstimmung über RFC<br />
[2] <a href="https://wiki.php.net/rfc/shortsyntaxforarrays">https://wiki.php.net/rfc/shortsyntaxforarrays</a> - Request for Comments</p>
<div class="lightsocial_container"><a class="lightsocial_a" href="http://digg.com/submit?url=http%3A%2F%2Fsoftware1987.de%2F2011%2F06%2Fphp-5-4-short-syntax-for-arrays%2F&amp;title=PHP+5.4%3A+Short+Syntax+for+Arrays" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/digg.png" alt="Digg This" title="Digg This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.reddit.com/submit?url=http%3A%2F%2Fsoftware1987.de%2F2011%2F06%2Fphp-5-4-short-syntax-for-arrays%2F&amp;title=PHP+5.4%3A+Short+Syntax+for+Arrays" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/reddit.png" alt="Reddit This" title="Reddit This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fsoftware1987.de%2F2011%2F06%2Fphp-5-4-short-syntax-for-arrays%2F&amp;title=PHP+5.4%3A+Short+Syntax+for+Arrays" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/stumbleupon.png" alt="Stumble Now!" title="Stumble Now!" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://buzz.yahoo.com/buzz?targetUrl=http%3A%2F%2Fsoftware1987.de%2F2011%2F06%2Fphp-5-4-short-syntax-for-arrays%2F&amp;headline=PHP+5.4%3A+Short+Syntax+for+Arrays" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/yahoo_buzz.png" alt="Buzz This" title="Buzz This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dzone.com/links/add.html?title=PHP+5.4%3A+Short+Syntax+for+Arrays&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F06%2Fphp-5-4-short-syntax-for-arrays%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/dzone.png" alt="Vote on DZone" title="Vote on DZone" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.facebook.com/sharer.php?t=PHP+5.4%3A+Short+Syntax+for+Arrays&amp;u=http%3A%2F%2Fsoftware1987.de%2F2011%2F06%2Fphp-5-4-short-syntax-for-arrays%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/facebook.png" alt="Share on Facebook" title="Share on Facebook" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://delicious.com/save?title=PHP+5.4%3A+Short+Syntax+for+Arrays&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F06%2Fphp-5-4-short-syntax-for-arrays%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/delicious.png" alt="Bookmark this on Delicious" title="Bookmark this on Delicious" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dotnetkicks.com/kick/?title=PHP+5.4%3A+Short+Syntax+for+Arrays&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F06%2Fphp-5-4-short-syntax-for-arrays%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/dotnetkicks.png" alt="Kick It on DotNetKicks.com" title="Kick It on DotNetKicks.com" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://dotnetshoutout.com/Submit?title=PHP+5.4%3A+Short+Syntax+for+Arrays&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F06%2Fphp-5-4-short-syntax-for-arrays%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/dotnetshoutout.png" alt="Shout it" title="Shout it" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F06%2Fphp-5-4-short-syntax-for-arrays%2F&amp;title=PHP+5.4%3A+Short+Syntax+for+Arrays&amp;summary=&amp;source=" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/linkedin.png" alt="Share on LinkedIn" title="Share on LinkedIn" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.technorati.com/faves?add=http%3A%2F%2Fsoftware1987.de%2F2011%2F06%2Fphp-5-4-short-syntax-for-arrays%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/technorati.png" alt="Bookmark this on Technorati" title="Bookmark this on Technorati" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://twitter.com/home?status=Reading+http%3A%2F%2Fsoftware1987.de%2F2011%2F06%2Fphp-5-4-short-syntax-for-arrays%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/twitter.png" alt="Post on Twitter" title="Post on Twitter" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.google.com/buzz/post?url=http%3A%2F%2Fsoftware1987.de%2F2011%2F06%2Fphp-5-4-short-syntax-for-arrays%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/google_buzz.png" alt="Google Buzz (aka. Google Reader)" title="Google Buzz (aka. Google Reader)" /></a>&nbsp;&nbsp;</div>]]></content:encoded>
			<wfw:commentRss>http://software1987.de/2011/06/php-5-4-short-syntax-for-arrays/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>beanstalkd unter Windows mit Cygwin</title>
		<link>http://software1987.de/2011/03/beanstalkd-unter-windows-mit-cygwin/</link>
		<comments>http://software1987.de/2011/03/beanstalkd-unter-windows-mit-cygwin/#comments</comments>
		<pubDate>Fri, 11 Mar 2011 13:50:03 +0000</pubDate>
		<dc:creator>halfdan</dc:creator>
				<category><![CDATA[Windows]]></category>
		<category><![CDATA[beanstalkd cygwin gcc]]></category>

		<guid isPermaLink="false">http://software1987.de/?p=148</guid>
		<description><![CDATA[Vor ein paar Tagen bin ich auf beanstalkd aufmerksam geworden. Beanstalkd ist eine Warteschlange, welche man nutzen kann um Arbeitsaufgaben einzustelen und an anderer Stelle wieder abzuarbeiten. Ein passendes Beispiel ist das Hochladen und Konvertieren von Videos in einer Webapplikation. Nachdem der Upload fertig gestellt ist, möchte man den Benutzer nicht warten lassen, bis sein [...]]]></description>
			<content:encoded><![CDATA[<p>Vor ein paar Tagen bin ich auf <a href="http://kr.github.com/beanstalkd/">beanstalkd</a> aufmerksam geworden. Beanstalkd ist eine Warteschlange, welche man nutzen kann um Arbeitsaufgaben einzustelen und an anderer Stelle wieder abzuarbeiten. Ein passendes Beispiel ist das Hochladen und Konvertieren von Videos in einer Webapplikation. Nachdem der Upload fertig gestellt ist, möchte man den Benutzer nicht warten lassen, bis sein Video in ein anderes Format konvertiert worden ist. Man stellt also nach dem Upload eine Arbeitsaufgabe in die Warteschlange und kann dem Benutzer danach auf eine andere Seite verweisen. Ein anderer Prozess nimmt die Arbeitsaufgabe aus der Warteschlange entgegen und bearbeitet diese.</p>
<p>Beanstalkd gefällt mir persönlich sehr gut, da die Anzahl an Client-Bibliotheken sehr hoch ist, das Programm sehr schnell arbeitet und vorallem einen Möglichkeit bietet Arbeitsaufgaben persistent zu machen. Beanstalkd schreibt dabei die Arbeitsaufgaben in ein binäres Logfile, sodass es nach einem Reboot wieder an gleicher Stelle weiterarbeiten kann wo es aufgehört hat.</p>
<p>Das Tool wird von Keith Rarick entwickelt und steht für Linux und Mac zum Download bereit. Einen Windows Build wird aktuell nicht angeboten. Ich habe mich daher daran gemacht, beanstalkd unter <a href="http://www.cygwin.com/">Cygwin</a> zum laufen zu bringen und konnte dies erfolgreich umsetzen.  <em> </em></p>
<p><strong>Beanstalkd selbst kompilieren</strong></p>
<ol>
<li>Cygwin herunterladen und die folgenden Pakete installieren: gcc 4.5.0, autoconf, make</li>
<li>Download der beanstalkd sourcen (<a href="https://github.com/kr/beanstalkd">https://github.com/kr/beanstalkd</a>), entweder direkt als Download oder per Git (z.B. mit msysgit)</li>
<li>Download der aktuellen <a href="http://monkey.org/~provos/libevent/">libevent</a> Bilbiothek (nicht unter Cygwin verfügbar)</li>
<li>Entpacken beider Archive</li>
<li>Cygwin Bash starten, mit "cd" in das Verzeichnis von libevent wechseln und "./configure &amp;&amp; make &amp;&amp; make install" ausführen</li>
<li>Nun mit "cd" in das Verzeichnis von beanstalkd wechseln und dort "./configure" ausführen</li>
<li>Nun muss manuell das Makefile geöffnet werden und dort bei den CPPFLAGS den Teilstring "-Werror" entfernen. Dieser verhindert das Kompilieren da eine Warning als Error interpretiert wird. Diese Warning ist jedoch m.M.n. unbedenklich.</li>
<li>Nun mit "make &amp;&amp; make install" beanstalkd kompilieren und installieren.</li>
<li>Fertig!</li>
</ol>
<p>Beim Ausführen von "make install" kann es passieren, dass ein Fehler auftritt ("Datei oder Verzeichnis nicht gefunden"). Vor dem Installieren sollte sichergestellt werden, dass beide Archive nicht in einem Verzeichnis liegen dessen absoluter Pfad ein Leerzeichen enthält (z.b. C:/Dokumente und Einstellungen/.. funktioniert nicht).</p>
<p><strong>Download</strong></p>
<p>Ich biete hier die aktuelle Version 1.4.6 von beanstalkd an. Diese ist lauffähig unter Windows. Ich übernehme keine Garantie für korrekte Ausführung und hafte nicht für etwaige Schäden die durch den Download oder die Benutzung entstehen könnten. beanstalkd wird von Keith Rarick entwickelt und steht unter GNU General Public Licence Version 3.<strong><br />
</strong></p>
<p><a href="http://software1987.de/wp-content/uploads/2011/03/beanstalkd-1.4.6-cygwin.tar.gz">beanstalkd-1.4.6-cygwin.tar.gz</a><br />
<a href="http://software1987.de/wp-content/uploads/2011/03/beanstalkd-1.4.6-cygwin.zip">beanstalkd-1.4.6-cygwin.zip</a></p>
<div class="lightsocial_container"><a class="lightsocial_a" href="http://digg.com/submit?url=http%3A%2F%2Fsoftware1987.de%2F2011%2F03%2Fbeanstalkd-unter-windows-mit-cygwin%2F&amp;title=beanstalkd+unter+Windows+mit+Cygwin" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/digg.png" alt="Digg This" title="Digg This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.reddit.com/submit?url=http%3A%2F%2Fsoftware1987.de%2F2011%2F03%2Fbeanstalkd-unter-windows-mit-cygwin%2F&amp;title=beanstalkd+unter+Windows+mit+Cygwin" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/reddit.png" alt="Reddit This" title="Reddit This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fsoftware1987.de%2F2011%2F03%2Fbeanstalkd-unter-windows-mit-cygwin%2F&amp;title=beanstalkd+unter+Windows+mit+Cygwin" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/stumbleupon.png" alt="Stumble Now!" title="Stumble Now!" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://buzz.yahoo.com/buzz?targetUrl=http%3A%2F%2Fsoftware1987.de%2F2011%2F03%2Fbeanstalkd-unter-windows-mit-cygwin%2F&amp;headline=beanstalkd+unter+Windows+mit+Cygwin" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/yahoo_buzz.png" alt="Buzz This" title="Buzz This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dzone.com/links/add.html?title=beanstalkd+unter+Windows+mit+Cygwin&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F03%2Fbeanstalkd-unter-windows-mit-cygwin%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/dzone.png" alt="Vote on DZone" title="Vote on DZone" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.facebook.com/sharer.php?t=beanstalkd+unter+Windows+mit+Cygwin&amp;u=http%3A%2F%2Fsoftware1987.de%2F2011%2F03%2Fbeanstalkd-unter-windows-mit-cygwin%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/facebook.png" alt="Share on Facebook" title="Share on Facebook" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://delicious.com/save?title=beanstalkd+unter+Windows+mit+Cygwin&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F03%2Fbeanstalkd-unter-windows-mit-cygwin%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/delicious.png" alt="Bookmark this on Delicious" title="Bookmark this on Delicious" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dotnetkicks.com/kick/?title=beanstalkd+unter+Windows+mit+Cygwin&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F03%2Fbeanstalkd-unter-windows-mit-cygwin%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/dotnetkicks.png" alt="Kick It on DotNetKicks.com" title="Kick It on DotNetKicks.com" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://dotnetshoutout.com/Submit?title=beanstalkd+unter+Windows+mit+Cygwin&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F03%2Fbeanstalkd-unter-windows-mit-cygwin%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/dotnetshoutout.png" alt="Shout it" title="Shout it" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F03%2Fbeanstalkd-unter-windows-mit-cygwin%2F&amp;title=beanstalkd+unter+Windows+mit+Cygwin&amp;summary=&amp;source=" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/linkedin.png" alt="Share on LinkedIn" title="Share on LinkedIn" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.technorati.com/faves?add=http%3A%2F%2Fsoftware1987.de%2F2011%2F03%2Fbeanstalkd-unter-windows-mit-cygwin%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/technorati.png" alt="Bookmark this on Technorati" title="Bookmark this on Technorati" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://twitter.com/home?status=Reading+http%3A%2F%2Fsoftware1987.de%2F2011%2F03%2Fbeanstalkd-unter-windows-mit-cygwin%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/twitter.png" alt="Post on Twitter" title="Post on Twitter" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.google.com/buzz/post?url=http%3A%2F%2Fsoftware1987.de%2F2011%2F03%2Fbeanstalkd-unter-windows-mit-cygwin%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/google_buzz.png" alt="Google Buzz (aka. Google Reader)" title="Google Buzz (aka. Google Reader)" /></a>&nbsp;&nbsp;</div>]]></content:encoded>
			<wfw:commentRss>http://software1987.de/2011/03/beanstalkd-unter-windows-mit-cygwin/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>MPEG-LA vs. Google &#8211; Wo ist der Sinn von Softwarepatenten?</title>
		<link>http://software1987.de/2011/02/mpeg-la-vs-google-wo-ist-der-sinn-von-softwarepatenten/</link>
		<comments>http://software1987.de/2011/02/mpeg-la-vs-google-wo-ist-der-sinn-von-softwarepatenten/#comments</comments>
		<pubDate>Sun, 13 Feb 2011 01:19:08 +0000</pubDate>
		<dc:creator>halfdan</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[MPEG LA]]></category>
		<category><![CDATA[Softwarepatente]]></category>
		<category><![CDATA[VP8]]></category>
		<category><![CDATA[WebM]]></category>

		<guid isPermaLink="false">http://software1987.de/?p=145</guid>
		<description><![CDATA[Nachdem ich zuletzt auf die Firmenpolitik von Oracle eingegangen bin, möchte ich an dieser Stelle einen Kommentar zur MPEG LA (Licencing Administration) posten. Das Thema Softwarepatente keimt dabei im jüngsten Artikel von heise.de (Original: mpegla.com) erneut auf. Die MPEG LA hat angekündigt mit der Suche nach Patenten gegen das, von Google, unter einer Open Source [...]]]></description>
			<content:encoded><![CDATA[<p>Nachdem ich zuletzt auf die Firmenpolitik von Oracle eingegangen bin, möchte ich an dieser Stelle einen Kommentar zur MPEG LA (Licencing Administration) posten.</p>
<p>Das Thema Softwarepatente keimt dabei im jüngsten Artikel von <a href="http://www.heise.de/newsticker/meldung/MPEG-LA-sammelt-Patente-gegen-Googles-freien-Video-Codec-1188554.html">heise.de</a> (Original: <a href="http://www.mpegla.com/main/pid/vp8/default.aspx">mpegla.com</a>) erneut auf. Die MPEG LA hat angekündigt mit der Suche nach Patenten gegen das, von Google, unter einer Open Source Lizenz veröffentlichte WebM/VP8-Format zu beginnen. Das Format ist in letzter Zeit öfter in den Medien erwähnt worden, da Google den alleinigen Support von WebM im Browser Chrome <a href="http://blog.chromium.org/2011/01/html-video-codec-support-in-chrome.html">angekündigt</a> hatte. Firefox und Opera unterstützen für das HTML5 Video-Tag schon länger das ebenfalls freie OGG Vorbis und haben nun auch WebM-Unterstützung eingebaut. Microsoft und Apple, die selbst Patentinhaber beim H.264/AVC Lizenz-Pool sind, hatten sich zuletzt kritisch über WebM geäußert und die Patentfreiheit des Codecs <a href="http://blogs.msdn.com/b/ie/archive/2011/02/02/html5-and-web-video-questions-for-the-industry-from-the-community.aspx">angezweifelt</a>. So werden beide Browser (Safari und IE9) WebM vorerst nur über ein Plugin unterstützen und sonst das proprietäre H.264 nutzen. Der H.264-Codec wird von der MPEG LA Lizenzfrei zur Verfügung gestellt, solange der Codec für das Internet-Streaming freier Inhalte genutzt wird.</p>
<p>In Europa sind Softwarepatente bisher nicht umgesetzt, ein entsprechender Antrag ist 2002 fehlgeschlagen. Nach <a href="http://www.epo.org/patents/law/legal-texts/html/epc/2000/d/ar52.html">Artikel 52</a> des Europäischen Patentübereinkommens (EPÜ) sind mathematische Formeln sowie "Programme für Datenverarbeitungsanlagen" als solche von Patenten ausgeschlossen.</p>
<p>Trotz diesem Ausschluss gibt es in Europa einige <a href="http://www.mpegla.com/main/programs/AVC/Pages/PatentList.aspx">angemeldete Patente</a> für H.264/AVC. Inwiefern diese unter die obengenannten Ausschlusskriterien fallen lässt sich an dieser Stelle schwer sagen.</p>
<p>Anstatt die Entwicklung von Software und Technik voran zu treiben behindern Patentbestrebungen wie diese, die freie Entfaltung und die Entwicklungsmöglichkeiten weltweit. Wie kann man als Entwickler eines neuen Codecs sicher sein, nicht gegen irgendwelche obstrusen Softwarepatente zu verstoßen, wenn nicht einmal der von Google gekaufte VP8-Codec dagegen gefeit ist. Der Erfolg oder Misserfolg der Bestrebungen der MPEG LA wird ausschlaggebend für die weiteren Entwicklungen der Softwarebranche und -patente sein.</p>
<p>Für den Anwender bleibt zu hoffen, dass sich mit der browserübergreifenden Einführung von HTML5 ein Codec durchsetzen wird. Gleiches gilt natürlich für Anbieter von Video-Content, da diese bisher entweder Flash benutzen oder aber bei Einsatz des Video-Tags ein Flash-Fallback anbieten müssen.</p>
<div class="lightsocial_container"><a class="lightsocial_a" href="http://digg.com/submit?url=http%3A%2F%2Fsoftware1987.de%2F2011%2F02%2Fmpeg-la-vs-google-wo-ist-der-sinn-von-softwarepatenten%2F&amp;title=MPEG-LA+vs.+Google+-+Wo+ist+der+Sinn+von+Softwarepatenten%3F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/digg.png" alt="Digg This" title="Digg This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.reddit.com/submit?url=http%3A%2F%2Fsoftware1987.de%2F2011%2F02%2Fmpeg-la-vs-google-wo-ist-der-sinn-von-softwarepatenten%2F&amp;title=MPEG-LA+vs.+Google+-+Wo+ist+der+Sinn+von+Softwarepatenten%3F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/reddit.png" alt="Reddit This" title="Reddit This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fsoftware1987.de%2F2011%2F02%2Fmpeg-la-vs-google-wo-ist-der-sinn-von-softwarepatenten%2F&amp;title=MPEG-LA+vs.+Google+-+Wo+ist+der+Sinn+von+Softwarepatenten%3F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/stumbleupon.png" alt="Stumble Now!" title="Stumble Now!" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://buzz.yahoo.com/buzz?targetUrl=http%3A%2F%2Fsoftware1987.de%2F2011%2F02%2Fmpeg-la-vs-google-wo-ist-der-sinn-von-softwarepatenten%2F&amp;headline=MPEG-LA+vs.+Google+-+Wo+ist+der+Sinn+von+Softwarepatenten%3F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/yahoo_buzz.png" alt="Buzz This" title="Buzz This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dzone.com/links/add.html?title=MPEG-LA+vs.+Google+-+Wo+ist+der+Sinn+von+Softwarepatenten%3F&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F02%2Fmpeg-la-vs-google-wo-ist-der-sinn-von-softwarepatenten%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/dzone.png" alt="Vote on DZone" title="Vote on DZone" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.facebook.com/sharer.php?t=MPEG-LA+vs.+Google+-+Wo+ist+der+Sinn+von+Softwarepatenten%3F&amp;u=http%3A%2F%2Fsoftware1987.de%2F2011%2F02%2Fmpeg-la-vs-google-wo-ist-der-sinn-von-softwarepatenten%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/facebook.png" alt="Share on Facebook" title="Share on Facebook" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://delicious.com/save?title=MPEG-LA+vs.+Google+-+Wo+ist+der+Sinn+von+Softwarepatenten%3F&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F02%2Fmpeg-la-vs-google-wo-ist-der-sinn-von-softwarepatenten%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/delicious.png" alt="Bookmark this on Delicious" title="Bookmark this on Delicious" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dotnetkicks.com/kick/?title=MPEG-LA+vs.+Google+-+Wo+ist+der+Sinn+von+Softwarepatenten%3F&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F02%2Fmpeg-la-vs-google-wo-ist-der-sinn-von-softwarepatenten%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/dotnetkicks.png" alt="Kick It on DotNetKicks.com" title="Kick It on DotNetKicks.com" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://dotnetshoutout.com/Submit?title=MPEG-LA+vs.+Google+-+Wo+ist+der+Sinn+von+Softwarepatenten%3F&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F02%2Fmpeg-la-vs-google-wo-ist-der-sinn-von-softwarepatenten%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/dotnetshoutout.png" alt="Shout it" title="Shout it" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F02%2Fmpeg-la-vs-google-wo-ist-der-sinn-von-softwarepatenten%2F&amp;title=MPEG-LA+vs.+Google+-+Wo+ist+der+Sinn+von+Softwarepatenten%3F&amp;summary=&amp;source=" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/linkedin.png" alt="Share on LinkedIn" title="Share on LinkedIn" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.technorati.com/faves?add=http%3A%2F%2Fsoftware1987.de%2F2011%2F02%2Fmpeg-la-vs-google-wo-ist-der-sinn-von-softwarepatenten%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/technorati.png" alt="Bookmark this on Technorati" title="Bookmark this on Technorati" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://twitter.com/home?status=Reading+http%3A%2F%2Fsoftware1987.de%2F2011%2F02%2Fmpeg-la-vs-google-wo-ist-der-sinn-von-softwarepatenten%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/twitter.png" alt="Post on Twitter" title="Post on Twitter" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.google.com/buzz/post?url=http%3A%2F%2Fsoftware1987.de%2F2011%2F02%2Fmpeg-la-vs-google-wo-ist-der-sinn-von-softwarepatenten%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/google_buzz.png" alt="Google Buzz (aka. Google Reader)" title="Google Buzz (aka. Google Reader)" /></a>&nbsp;&nbsp;</div>]]></content:encoded>
			<wfw:commentRss>http://software1987.de/2011/02/mpeg-la-vs-google-wo-ist-der-sinn-von-softwarepatenten/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Netbeans 7 und die krux mit Oracle</title>
		<link>http://software1987.de/2011/01/netbeans-7-und-die-krux-mit-oracle/</link>
		<comments>http://software1987.de/2011/01/netbeans-7-und-die-krux-mit-oracle/#comments</comments>
		<pubDate>Fri, 28 Jan 2011 10:30:42 +0000</pubDate>
		<dc:creator>halfdan</dc:creator>
				<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Webentwicklung]]></category>

		<guid isPermaLink="false">http://software1987.de/?p=130</guid>
		<description><![CDATA[Da habe ich mich die Tage noch gefreut, dass Netbeans 7.0 bald vor der Tür steht und nun erreicht mich die folgende Nachricht über Heise: http://www.heise.de/newsticker/meldung/NetBeans-7-Rails-Unterstuetzung-faellt-raus-1179098.html Oracle hat beschlossen im Zuge der Veröffentlichung von Java 7 und dem damit verbundenen JDK7 alle verfügbaren Ressourcen primär in die Erweiterung von von Netbeans für Java 7 zu [...]]]></description>
			<content:encoded><![CDATA[<p>Da habe ich mich die Tage noch gefreut, dass Netbeans 7.0 bald vor der Tür steht und nun erreicht mich die folgende Nachricht über Heise: <a href="http://www.heise.de/newsticker/meldung/NetBeans-7-Rails-Unterstuetzung-faellt-raus-1179098.html">http://www.heise.de/newsticker/meldung/NetBeans-7-Rails-Unterstuetzung-faellt-raus-1179098.html</a></p>
<p>Oracle hat beschlossen im Zuge der Veröffentlichung von Java 7 und dem damit verbundenen JDK7 alle verfügbaren Ressourcen primär in die Erweiterung von von Netbeans für Java 7 zu stecken. Damit geht Netbeans wieder ein Teil der Entwicklergemeinde verloren. Ich zumindest habe es immer genossen mit Netbeans meine Rails-Applications zu entwickeln, doch das wird nun leider bald ein Ende haben müssen. Die Hoffnung bleibt aber, dass das Rails-Plugin von der Community weitergetragen wird und Rails 3.0 irgendwann komplett unterstützt wird (aktuell Rails 3.0 Beta).</p>
<p>Ich werde mich nun wohl nach einer neuen IDE umschauen müssen. Textmate fällt bei mir raus da ich primär auf Linux/Windows arbeite und auch möglichst eine IDE haben möchte die auf beidem funktioniert. Aptana Radrails 2 scheint bisher eine brauchbare Alternative zu sein, auch wenn diese IDE auf Eclipse aufbaut.</p>
<p>Danke Oracle für das zerstören gut geleiteter Open Source Projekte. Auf Wiedersehen Open Solaris, OpenOffice, Hudson, MySQL und Willkommen LibreOffice, Jenkins und MariaDB!</p>
<div class="lightsocial_container"><a class="lightsocial_a" href="http://digg.com/submit?url=http%3A%2F%2Fsoftware1987.de%2F2011%2F01%2Fnetbeans-7-und-die-krux-mit-oracle%2F&amp;title=Netbeans+7+und+die+krux+mit+Oracle" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/digg.png" alt="Digg This" title="Digg This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.reddit.com/submit?url=http%3A%2F%2Fsoftware1987.de%2F2011%2F01%2Fnetbeans-7-und-die-krux-mit-oracle%2F&amp;title=Netbeans+7+und+die+krux+mit+Oracle" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/reddit.png" alt="Reddit This" title="Reddit This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fsoftware1987.de%2F2011%2F01%2Fnetbeans-7-und-die-krux-mit-oracle%2F&amp;title=Netbeans+7+und+die+krux+mit+Oracle" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/stumbleupon.png" alt="Stumble Now!" title="Stumble Now!" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://buzz.yahoo.com/buzz?targetUrl=http%3A%2F%2Fsoftware1987.de%2F2011%2F01%2Fnetbeans-7-und-die-krux-mit-oracle%2F&amp;headline=Netbeans+7+und+die+krux+mit+Oracle" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/yahoo_buzz.png" alt="Buzz This" title="Buzz This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dzone.com/links/add.html?title=Netbeans+7+und+die+krux+mit+Oracle&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F01%2Fnetbeans-7-und-die-krux-mit-oracle%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/dzone.png" alt="Vote on DZone" title="Vote on DZone" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.facebook.com/sharer.php?t=Netbeans+7+und+die+krux+mit+Oracle&amp;u=http%3A%2F%2Fsoftware1987.de%2F2011%2F01%2Fnetbeans-7-und-die-krux-mit-oracle%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/facebook.png" alt="Share on Facebook" title="Share on Facebook" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://delicious.com/save?title=Netbeans+7+und+die+krux+mit+Oracle&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F01%2Fnetbeans-7-und-die-krux-mit-oracle%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/delicious.png" alt="Bookmark this on Delicious" title="Bookmark this on Delicious" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dotnetkicks.com/kick/?title=Netbeans+7+und+die+krux+mit+Oracle&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F01%2Fnetbeans-7-und-die-krux-mit-oracle%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/dotnetkicks.png" alt="Kick It on DotNetKicks.com" title="Kick It on DotNetKicks.com" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://dotnetshoutout.com/Submit?title=Netbeans+7+und+die+krux+mit+Oracle&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F01%2Fnetbeans-7-und-die-krux-mit-oracle%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/dotnetshoutout.png" alt="Shout it" title="Shout it" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http%3A%2F%2Fsoftware1987.de%2F2011%2F01%2Fnetbeans-7-und-die-krux-mit-oracle%2F&amp;title=Netbeans+7+und+die+krux+mit+Oracle&amp;summary=&amp;source=" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/linkedin.png" alt="Share on LinkedIn" title="Share on LinkedIn" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.technorati.com/faves?add=http%3A%2F%2Fsoftware1987.de%2F2011%2F01%2Fnetbeans-7-und-die-krux-mit-oracle%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/technorati.png" alt="Bookmark this on Technorati" title="Bookmark this on Technorati" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://twitter.com/home?status=Reading+http%3A%2F%2Fsoftware1987.de%2F2011%2F01%2Fnetbeans-7-und-die-krux-mit-oracle%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/twitter.png" alt="Post on Twitter" title="Post on Twitter" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.google.com/buzz/post?url=http%3A%2F%2Fsoftware1987.de%2F2011%2F01%2Fnetbeans-7-und-die-krux-mit-oracle%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/google_buzz.png" alt="Google Buzz (aka. Google Reader)" title="Google Buzz (aka. Google Reader)" /></a>&nbsp;&nbsp;</div>]]></content:encoded>
			<wfw:commentRss>http://software1987.de/2011/01/netbeans-7-und-die-krux-mit-oracle/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MongoSession &#8211; Ein PHP Session-Handler mit MongoDB</title>
		<link>http://software1987.de/2010/09/mongosession-ein-php-session-handler-mit-mongodb/</link>
		<comments>http://software1987.de/2010/09/mongosession-ein-php-session-handler-mit-mongodb/#comments</comments>
		<pubDate>Fri, 03 Sep 2010 08:43:43 +0000</pubDate>
		<dc:creator>halfdan</dc:creator>
				<category><![CDATA[Datenbanken]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Webentwicklung]]></category>
		<category><![CDATA[mongodb]]></category>
		<category><![CDATA[nosql]]></category>

		<guid isPermaLink="false">http://software1987.de/?p=112</guid>
		<description><![CDATA[MongoSession MongoSession ist eine Implementierung eines MongoDB Session-Handlers für PHP. Diese Klasse wurde als drop-in Lösung entwickelt um von normalem Session-Handling einfach umstellen zu können. Die Klasse wurde ursprünglich von Corey Ballou entwickelt und im Blog vorgestellt. Als ich das Projek auf Github geforkt hatte stellte ich schnell fest, dass der Code ungetestet und nicht [...]]]></description>
			<content:encoded><![CDATA[<h2>MongoSession</h2>
<p>MongoSession ist eine Implementierung eines MongoDB Session-Handlers für PHP.  Diese Klasse wurde als drop-in Lösung entwickelt um von normalem Session-Handling einfach umstellen zu können. Die Klasse wurde ursprünglich von <a href="http://github.com/cballou">Corey Ballou</a> entwickelt und im <a href="http://www.jqueryin.com/projects/mongo-session/">Blog</a> vorgestellt. Als ich das Projek auf Github geforkt hatte stellte ich schnell fest, dass der Code ungetestet und nicht funktional war. Nach einigen Testläufen ist MongoSession nun aber einsatzbereit.</p>
<h2>Benutzung</h2>
<p>Die einfachste Möglichkeit MongoSession zu verwenden, ist der folgende Code:</p>
<pre class="brush: php; title: ; notranslate">&lt;?php
require_once('MongoSession.php');
$session = new MongoSession();
?&gt;</pre>
<p>Der Konstruktor von MongoSession setzt einen neuen Session-Handler, startet die Session (session_start()) und stellt eine Verbindung zum MongoDB-Server auf localhost her.</p>
<pre class="brush: php; title: ; notranslate">
require_once('MongoSession.php');

// Array zur Konfiguration von MongoSession
$config = array(
	// Gültigkeitsbereich des Cookies
        'cookie_path' =&gt; '/',
        'cookie_domain' =&gt; '.mydomain.com', // .mydomain.com

        // Session
        'lifetime' =&gt; 3600, // session lifetime in Sekunden
        'database' =&gt; 'session', // Name der MongoDB database
        'collection' =&gt; 'session', // Name der MongoDB collection
        'persistent' =&gt; false, // Persistente Verbindung?
        'persistent_name' =&gt; 'MongoSession, // Name der Verbindung

	// Array von MongoDB servern
        'servers' =&gt; array(
            	array(
	                'host' =&gt; Mongo::DEFAULT_HOST,
	                'port' =&gt; Mongo::DEFAULT_PORT,
	                'username' =&gt; null,
	                'password' =&gt; null,
        	)
        )
);

$session = new MongoSession($_config);
</pre>
<p>Der obige Code zeigt wie man MongoSession mit Hilfe eines Array umkonfigurieren kann. Im Vergleich zur ursprünglichen Implementierung ist hier die Möglichkeit hinzugekommen persistente Verbindungen zum Server aufzubauen. Diese muss allerdings mit einem global (auf dem Server) eindeutigem Namen versehen werden, da sie sonst von jedem auf dem gleichen Server wiederverwendet werden kann.</p>
<h2>Download</h2>
<p>Das Projekt wird auf Github gehostet. Jeder der die Klasse verwenden möchte kann sich die aktuellste Version direkt von <a href="http://github.com/halfdan/MongoSession/archives/master">Github </a>herunterladen.</p>
<p>Alternativ kann das Projekt natürlich auch mit git geklont werden:</p>
<pre class="brush: plain; title: ; notranslate">git clone git://github.com/halfdan/MongoSession.git</pre>
<div class="lightsocial_container"><a class="lightsocial_a" href="http://digg.com/submit?url=http%3A%2F%2Fsoftware1987.de%2F2010%2F09%2Fmongosession-ein-php-session-handler-mit-mongodb%2F&amp;title=MongoSession+-+Ein+PHP+Session-Handler+mit+MongoDB" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/digg.png" alt="Digg This" title="Digg This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.reddit.com/submit?url=http%3A%2F%2Fsoftware1987.de%2F2010%2F09%2Fmongosession-ein-php-session-handler-mit-mongodb%2F&amp;title=MongoSession+-+Ein+PHP+Session-Handler+mit+MongoDB" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/reddit.png" alt="Reddit This" title="Reddit This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fsoftware1987.de%2F2010%2F09%2Fmongosession-ein-php-session-handler-mit-mongodb%2F&amp;title=MongoSession+-+Ein+PHP+Session-Handler+mit+MongoDB" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/stumbleupon.png" alt="Stumble Now!" title="Stumble Now!" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://buzz.yahoo.com/buzz?targetUrl=http%3A%2F%2Fsoftware1987.de%2F2010%2F09%2Fmongosession-ein-php-session-handler-mit-mongodb%2F&amp;headline=MongoSession+-+Ein+PHP+Session-Handler+mit+MongoDB" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/yahoo_buzz.png" alt="Buzz This" title="Buzz This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dzone.com/links/add.html?title=MongoSession+-+Ein+PHP+Session-Handler+mit+MongoDB&amp;url=http%3A%2F%2Fsoftware1987.de%2F2010%2F09%2Fmongosession-ein-php-session-handler-mit-mongodb%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/dzone.png" alt="Vote on DZone" title="Vote on DZone" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.facebook.com/sharer.php?t=MongoSession+-+Ein+PHP+Session-Handler+mit+MongoDB&amp;u=http%3A%2F%2Fsoftware1987.de%2F2010%2F09%2Fmongosession-ein-php-session-handler-mit-mongodb%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/facebook.png" alt="Share on Facebook" title="Share on Facebook" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://delicious.com/save?title=MongoSession+-+Ein+PHP+Session-Handler+mit+MongoDB&amp;url=http%3A%2F%2Fsoftware1987.de%2F2010%2F09%2Fmongosession-ein-php-session-handler-mit-mongodb%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/delicious.png" alt="Bookmark this on Delicious" title="Bookmark this on Delicious" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dotnetkicks.com/kick/?title=MongoSession+-+Ein+PHP+Session-Handler+mit+MongoDB&amp;url=http%3A%2F%2Fsoftware1987.de%2F2010%2F09%2Fmongosession-ein-php-session-handler-mit-mongodb%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/dotnetkicks.png" alt="Kick It on DotNetKicks.com" title="Kick It on DotNetKicks.com" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://dotnetshoutout.com/Submit?title=MongoSession+-+Ein+PHP+Session-Handler+mit+MongoDB&amp;url=http%3A%2F%2Fsoftware1987.de%2F2010%2F09%2Fmongosession-ein-php-session-handler-mit-mongodb%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/dotnetshoutout.png" alt="Shout it" title="Shout it" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http%3A%2F%2Fsoftware1987.de%2F2010%2F09%2Fmongosession-ein-php-session-handler-mit-mongodb%2F&amp;title=MongoSession+-+Ein+PHP+Session-Handler+mit+MongoDB&amp;summary=&amp;source=" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/linkedin.png" alt="Share on LinkedIn" title="Share on LinkedIn" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.technorati.com/faves?add=http%3A%2F%2Fsoftware1987.de%2F2010%2F09%2Fmongosession-ein-php-session-handler-mit-mongodb%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/technorati.png" alt="Bookmark this on Technorati" title="Bookmark this on Technorati" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://twitter.com/home?status=Reading+http%3A%2F%2Fsoftware1987.de%2F2010%2F09%2Fmongosession-ein-php-session-handler-mit-mongodb%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/twitter.png" alt="Post on Twitter" title="Post on Twitter" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.google.com/buzz/post?url=http%3A%2F%2Fsoftware1987.de%2F2010%2F09%2Fmongosession-ein-php-session-handler-mit-mongodb%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/google_buzz.png" alt="Google Buzz (aka. Google Reader)" title="Google Buzz (aka. Google Reader)" /></a>&nbsp;&nbsp;</div>]]></content:encoded>
			<wfw:commentRss>http://software1987.de/2010/09/mongosession-ein-php-session-handler-mit-mongodb/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP mit MongoDB</title>
		<link>http://software1987.de/2010/08/php-mit-mongodb/</link>
		<comments>http://software1987.de/2010/08/php-mit-mongodb/#comments</comments>
		<pubDate>Fri, 20 Aug 2010 13:57:36 +0000</pubDate>
		<dc:creator>halfdan</dc:creator>
				<category><![CDATA[Datenbanken]]></category>
		<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[mongodb]]></category>
		<category><![CDATA[nosql]]></category>

		<guid isPermaLink="false">http://software1987.de/?p=53</guid>
		<description><![CDATA[Als Google vor mehr als einem Jahr die Sprache "Go" (golang.org) einführte fehlte es in der Community an einer Möglichkeit Codeschnipsel mit Syntaxhighlighting online zu stellen. Ich machte mich also recht schnell daran einen nopaste/pastebin Klon zu entwickeln welcher neben den üblichen Sprachen auch "Go" unterstützt. Da das ganze an sich keine sonderliche herausforderung darstellt [...]]]></description>
			<content:encoded><![CDATA[<p>Als Google vor mehr als einem Jahr die Sprache "Go" (<a href="http://golang.org">golang.org</a>) einführte fehlte es in der Community an einer Möglichkeit Codeschnipsel mit Syntaxhighlighting online zu stellen. Ich machte mich also recht schnell daran einen nopaste/pastebin Klon zu entwickeln welcher neben den üblichen Sprachen auch "Go" unterstützt.</p>
<p>Da das ganze an sich keine sonderliche herausforderung darstellt (Datenbank anlegen + Code schreiben), wollte ich die Aufgabe dazu nutzen mich in etwas neues einzuarbeiten. Ich entschied mich dafür, nicht wie üblich PostgreSQL oder MySQL als Datenbank zu nutzen sondern eine NoSQL-Datenbank. Meine Wahl fiel auf "MongoDB", welche ich hier kurz vorstellen möchte.</p>
<p><span id="more-53"></span></p>
<h3>NoSQL</h3>
<p>NoSQL steht für "Not only SQL" und meint damit Datenbanken die nicht auf ein relationales Schema zurückgreifen (oder vielmehr die Bewegung dahinter). Relationale Datenspeicher leiden oft an Leistungsproblemen insbesondere bei datenintensiven Applikationen oder hoher Belastung. Aus diesem Grund setzen stark belastete Dienste wie Twitter (Cassandra, Hadoop?) und Facebook (Cassandra) auf NoSQL-Datenbanken die diesen Problemen mit verteilten Berechnungen aus dem Weg gehen.</p>
<h3>MongoDB</h3>
<p><a href="http://software1987.de/wp-content/uploads/2010/08/logo-mongodb.png"><img class="alignleft size-full wp-image-63" title="MongoDB" src="http://software1987.de/wp-content/uploads/2010/08/logo-mongodb.png" alt="Logo von MongoDB" width="217" height="90" /></a>MongoDB ist eine dokumentenorientierte Datenbank. In die gleiche Kategorie zählt auch die in Erlang geschriebene CouchDB. Grundeinheit einer dokumentenorientierten Datenbank ist im Gegensatz zu einer relationalen Datenbank mit einem festen Schema das Dokument. Wie das Dokument strukturell aussieht bleibt dem jeweiligen Entwickler komplett überlassen. Ein Dokument wird in der Datenbank über einen eindeutigen Identifikator angesprochen.</p>
<p>MongoDB ist in C++ geschrieben, liegt als Open Source vor und skaliert. Die Datenbank verwaltet JSON-artige Dokumente und unterstützt eine Vielzahl von Datentypen (alle <a href="http://en.wikipedia.org/wiki/BSON">BSON</a> Datentypen).</p>
<h3>Installation</h3>
<h4>Linux</h4>
<p>Unter Linux ist MongoDB meist bereits als Paket verfügbar, weshalb  ich hier nicht weiter darauf eingehen werde. Unter Debian genügt z.B.  ein simples:</p>
<pre>apt-get install mongo</pre>
<h4>FreeBSD</h4>
<p>Seit Version 8.0 ist bei FreeBSD ein Port für MongoDB verfügbar. Um diesen zu bauen und zu installieren genügt es folgende Befehle auszuführen:</p>
<pre>cd /usr/ports/databases/mongodb
make &amp;&amp; make install
</pre>
<h4>Windows</h4>
<p>Ein fertiger Build für Windows lässt sich direkt von der MongoDB Webseite <a href="http://www.mongodb.org/downloads">herunterladen</a>. Zu bemerken ist, dass bei sämtlichen 32bit-Versionen die verwaltbare Datenmenge auf ~2,5 GB beschränkt ist (mehr dazu im <a href="http://blog.mongodb.org/post/137788967/32-bit-limitations">MongoDB Blog</a>).</p>
<p>Das Archiv entpackt man ganz einfach an einen Ort seiner Wahl (bei mir C:\Programme\MongoDB\). Im Unterverzeichnis "bin" liegen die ausführbaren Dateien. Eine weitere Installation ist nicht von nöten. Mongo braucht für den Datenspeicher noch ein eigenes Verzeichnis, welches ich unter C:\Programme\MongoDB\data\db\ angelegt habe. Standardmäßig würde sonst C:\data\db\ benutzt, welches aber auch angelegt werden muss.</p>
<p>Die Datenbank lässt sich nun über die Kommandozeile ganz einfach starten:</p>
<pre>C:\&gt; C:\Programme\MongoDB\bin\mongod.exe --dbpath C:\Programme\MongoDB\data\db\</pre>
<p><a href="http://software1987.de/wp-content/uploads/2010/08/MongoDB-start.png"><img class="alignnone size-full wp-image-74" title="MongoDB Start" src="http://software1987.de/wp-content/uploads/2010/08/MongoDB-start.png" alt="" width="677" height="306" /></a></p>
<p>Wie die letzte Zeile schon andeutet ist über Port 28017 ein Webinterface verfügbar, welches informationen über die Datenbank anzeigt. Im Browser kann man dieses ganz einfach über <a href="http://localhost:28017">http://localhost:28017</a> ansteuern. Die Datenbank selbst lauscht auf Port 27017.</p>
<p>Wer möchte, kann MongoDB auch als Windows Service starten und laufen lassen. Hierfür muss die folgende Zeile ausgeführt werden, welche mongod.exe als Windows Service Installiert:</p>
<pre>C:\&gt; C:\Programme\MongoDB\bin\mongod.exe --install
</pre>
<p>Um die Datenbank danach als Service zu starten führt noch die nächste Zeile aus:</p>
<pre>C:\&gt; C:\Programme\MongoDB\bin\mongod.exe --service</pre>
<h3>Installation der PHP-Extension</h3>
<h4>Linux</h4>
<p>Unter Linux lässt sich die Extension für den Zugriff auf MongoDB  mittels “pecl” (PHP Extension Community Library) installieren:</p>
<pre>pecl install mongo
</pre>
<p>Sollte alles ohne Probleme verlaufen sein, ist die Extension nun  verfügbar. Überprüfen lässt sich das, ggf. nach einem Neustart des  Webservers, über die phpinfo() die nun eine Kategorie für “mongo” bereit  halten sollte.</p>
<h4>Windows</h4>
<p>Unter Windows funktioniert die Methode mit pecl leider nicht (das  pecl4win Projekt ist seit einiger Zeit offline). Im PHP  Manual findet sich aber die bereits vorkompilierte .dll-Datei für die  Extension, welche man nur <a href="http://www.php.net/manual/en/mongo.installation.php#mongo.installation.windows">herunterladen</a> und ins passende Verzeichnis verschieben muss.</p>
<p>Zusätzlich muss nun noch ein Eintrag in die php.ini gemacht werden, damit PHP die neue Extension auch lädt:</p>
<pre>extension=php_mongo.dll
</pre>
<p>Nach einem Neustart des Webservers sollte der Aufruf von phpinfo() nun eine Kategorie für "mongo" bereithalten und anzeigen.</p>
<div class="lightsocial_container"><a class="lightsocial_a" href="http://digg.com/submit?url=http%3A%2F%2Fsoftware1987.de%2F2010%2F08%2Fphp-mit-mongodb%2F&amp;title=PHP+mit+MongoDB" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/digg.png" alt="Digg This" title="Digg This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.reddit.com/submit?url=http%3A%2F%2Fsoftware1987.de%2F2010%2F08%2Fphp-mit-mongodb%2F&amp;title=PHP+mit+MongoDB" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/reddit.png" alt="Reddit This" title="Reddit This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fsoftware1987.de%2F2010%2F08%2Fphp-mit-mongodb%2F&amp;title=PHP+mit+MongoDB" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/stumbleupon.png" alt="Stumble Now!" title="Stumble Now!" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://buzz.yahoo.com/buzz?targetUrl=http%3A%2F%2Fsoftware1987.de%2F2010%2F08%2Fphp-mit-mongodb%2F&amp;headline=PHP+mit+MongoDB" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/yahoo_buzz.png" alt="Buzz This" title="Buzz This" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dzone.com/links/add.html?title=PHP+mit+MongoDB&amp;url=http%3A%2F%2Fsoftware1987.de%2F2010%2F08%2Fphp-mit-mongodb%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/dzone.png" alt="Vote on DZone" title="Vote on DZone" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.facebook.com/sharer.php?t=PHP+mit+MongoDB&amp;u=http%3A%2F%2Fsoftware1987.de%2F2010%2F08%2Fphp-mit-mongodb%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/facebook.png" alt="Share on Facebook" title="Share on Facebook" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://delicious.com/save?title=PHP+mit+MongoDB&amp;url=http%3A%2F%2Fsoftware1987.de%2F2010%2F08%2Fphp-mit-mongodb%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/delicious.png" alt="Bookmark this on Delicious" title="Bookmark this on Delicious" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.dotnetkicks.com/kick/?title=PHP+mit+MongoDB&amp;url=http%3A%2F%2Fsoftware1987.de%2F2010%2F08%2Fphp-mit-mongodb%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/dotnetkicks.png" alt="Kick It on DotNetKicks.com" title="Kick It on DotNetKicks.com" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://dotnetshoutout.com/Submit?title=PHP+mit+MongoDB&amp;url=http%3A%2F%2Fsoftware1987.de%2F2010%2F08%2Fphp-mit-mongodb%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/dotnetshoutout.png" alt="Shout it" title="Shout it" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http%3A%2F%2Fsoftware1987.de%2F2010%2F08%2Fphp-mit-mongodb%2F&amp;title=PHP+mit+MongoDB&amp;summary=&amp;source=" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/linkedin.png" alt="Share on LinkedIn" title="Share on LinkedIn" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.technorati.com/faves?add=http%3A%2F%2Fsoftware1987.de%2F2010%2F08%2Fphp-mit-mongodb%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/technorati.png" alt="Bookmark this on Technorati" title="Bookmark this on Technorati" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://twitter.com/home?status=Reading+http%3A%2F%2Fsoftware1987.de%2F2010%2F08%2Fphp-mit-mongodb%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/twitter.png" alt="Post on Twitter" title="Post on Twitter" /></a>&nbsp;&nbsp;<a class="lightsocial_a" href="http://www.google.com/buzz/post?url=http%3A%2F%2Fsoftware1987.de%2F2010%2F08%2Fphp-mit-mongodb%2F" ><img class="lightsocial_img" src="http://software1987.de/wp-content/plugins/light-social/google_buzz.png" alt="Google Buzz (aka. Google Reader)" title="Google Buzz (aka. Google Reader)" /></a>&nbsp;&nbsp;</div>]]></content:encoded>
			<wfw:commentRss>http://software1987.de/2010/08/php-mit-mongodb/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

