VZ @ IPC und WebTech
Vom 15.11. bis zum 18.11. finden nächste Woche in Karlsruhe die International PHP conference und die Webtech Conference statt. VZ Netzwerke unterstützt diese Konferenzen als Silber Sponsor und ist mit einem Stand, vier Sessions und einer Keynote vertreten:

-
Push-Implementierung in der studiVZ iPhone App
Max Horváth, Steffen Irrgang
In dieser Session berichten wir, wie studiVZ die Push-Funktionalität auf der iPhone- und auf der Serverseite implementiert hat. Wir zeigen, wie der Client sich über das studiVZ-API anmeldet und über welche Architektur Push-Nachrichten auf dem iPhone landen. Dabei wird näher auf die AMQP-Queue-Infrastruktur von studiVZ eingegangen und gezeigt, welchen Fluss eine Benachrichtigung bei studiVZ durchlebt, bis sie auf dem iPhone eines Nutzers ankommt.16.11.2009 | 09:45 – 10:45
-
OAuth – ein offener Standard für die sichere Authentifizierung in APIs
Bastian Hofmann, Max Horváth, Andre Zayarni
In dieser Session widmen wir uns dem offenen Standard OAuth. Er wird für die sichere Authentifizierung in APIs genutzt. Wir zeigen, wie man OAuth implementiert und wieso es sinnvoll ist, Drittanwendungen über OAuth an die eigene API anzubinden. Außerdem gehen wir darauf ein, wie eine eigene Webapplikation mittels OAuth mit anderen Services verbunden werden kann.16.11.2009 | 14:30 – 15:30
-
OpenSocial in der Praxis
Sebastian Galonska, Bastian Hofmann
OpenSocial bietet vielfältige Möglichkeiten, die Funktionalität eines Social Networks zu erweitern. Dabei sind die Konzepte zur Entwicklung von Gadgets einfach zu erlernen. In dieser Session geben wir Einblicke, wie Gadgets für die VZ-Netzwerke, aber auch jeden anderen OpenSocial-kompatiblen Container, erstellt und veröffentlicht werden können. Dabei berücksichtigen wir auch Aspekte wie Skalierung und Sicherheit.17.11.2009 | 10:30 – 11:30
-
Best Practices bei der Entwicklung von öffentlichen APIs
Steffen Irrgang, Max Horváth, Andre Zayarni
In dieser Session soll praxisnah erörtert werden, welche Fallstricke und vor allem welche Best Practices in Bezug auf die Entwicklung von öffentlichen APIs zu beachten sind. Dabei konzentrieren wir uns auf RESTful Web Services sowie auf den offenen Authentifizierungsstandard OAuth.17.11.2009 | 16:30 – 17:30
-
Keynote: Bugfree, agil und überhaupt
Jodok Batlogg
In his keynote Jodok will highlight some insights on studiVZ. How important are agile processes? Is studiVZ really bugfree or is there a need for a bugtracking system? Why should one additional line of SQL require 10 additional servers and how can good profiling save you 20 of them?
18.11.2009 | 11:45 – 12:30
Apache Hadoop Get Together Berlin
We would like to announce the December-2009 Hadoop Get Together in newthinking store Berlin.
When: 16. December 2009 at 5:00pm
Where: newthinking store, Tucholskystr. 48, Berlin, Germany
As always there will be slots of 20min each for talks on your Hadoop topic. After each talk there will be a lot time to discuss. You can order drinks directly at the bar in the newthinking store. If you like, you can order pizza. We will go to Cafe Aufsturz after the event for some beer and something to eat.
Talks scheduled so far:
Richard Hutton (nugg.ad): “Moving from five days to one hour.” – This talk explains how we made data processing scalable at nugg.ad. The company’s core business is online advertisement targeting. Our servers receive 10,000 requests per second resulting in data of 100GB per day.
As the classical data warehouse solution reached its limit, we moved to a framework built on top of Hadoop to make analytics speedy, data mining detailed and all of our lives easier. We will give an overview of our solution involving file system structures, scheduling, messaging and programming languages from the future.
Jörg Möllenkamp (Sun): “Hadoop on Sun”
Abstract: Hadoop is a well known technology inside of Sun. This talk want to show some interesting use cases of Hadoop in conjunction with Sun technologies. The first show case wants to demonstrate how Hadoop can used to load massive multicore system with up to 256 threads in a single system to the max. The second use case shows how several mechanisms integrated in Solaris can ease the deployment and operation of Hadoop even in non-dedicated environments. The last usecase will show the combination of the Sun Grid Engine and Hadoop. Talk may contain command-line demonstrations ;).
Nikolaus Pohle (nurago): “M/R for MR – Online Market Research powered by Apache Hadoop. Enable consultants to analyze online behavior for audience segmentation, advertising effects and usage patterns.”
We would like to invite you, the visitor to also tell your Hadoop story, if you like, you can bring slides – there will be a beamer. Thanks for Isabel Drost who is organizing this event and for Newthinking Store for providing Space. VZnet Netzwerke is sponsoring the video recording of the talks.
Registration:
N✮SQL Berlin Roundup
Key-value-stores and other non-relational databases are a hot topic right now, as it increasingly turns out that the traditional (= relational) approach is difficult to scale horizontally. In other words, it may be time — as Bob Ippolito put it — to “Drop ACID and think about data”.
If you couldn’t make it to the first “NoSQL Meetup Berlin” which recently took place at newthinking store — all the talks have been recorded and are on vimeo now:
- Consistency in Distributed Key/Value Stores, Monika Moser
- Redis — Fast and Furious, Mathias Meyer
- Peer to Peer Applications with CouchDB, Jan Lehnardt
- Riak, Martin Scholl
- MongoDB, Mathias Stearn
- 4th Generation Object Databases, Prof. Stefan Edlich
Heise has a good summary (in german).
Here at StudiVZ we are following this topic very closely and are actively investigating some of the alternatives. At the moment, Cassandra looks very promising to us.
Some more links:
Yesterday’s GeekNight
Yesterday we had our 2nd GeekNight and it was at least as successfull as our first event of that manner. It was a premiere in two ways:
- We broadcasted the sessions live through uStream
- Our partner Wooga showed BrainBuddies, the first OpenSocial Gadget running on our platforms. It will become available when we launch OpenSocial
We had about 70 visitors at the Volksbar and over 30 people watched the live stream.
As requested you can download our presentations on the vCard and on BrainBuddies in German.
Watch out for upcoming dates so you can come and join us next time!
DevHouseBerlin
Today you have the last chance to get your hands dirty! Our friends at Box119 open their doors for DevHouseBerlin.
DevHouseBerlin is a fun-packed weekend of hacking and sharing knowledge. The Box119 office is open for a weekend and invites hackers of all sorts to join us working on projects, sharing code and ideas and just hanging out among fellow geeks.
DevHouseBerlin is highly influenced by the SuperHappyDevHouse:
SuperHappyDevHouse is a non-exclusive event intended for creative and curious people interested in technology. We’re about knowledge sharing, technology exploration, and ad-hoc collaboration. Come to have fun, build things, learn things, and meet new people. It’s called hacker culture, and we’re here to encourage it.
VZ is happy to provide you with first class Spreeschnittchen Catering. Enjoy!
OpenSocial is now available in our VZ Sandbox
We are proud to announce that our Gadget Sandbox with OpenSocial 0.8.1 integration is up and running. Developers can upload and test their gadgets against our platforms and request the approval to make them available to our users.
All interested developers are invited to join our OpenSocial support group on meinVZ and studiVZ where more information can be found about how to become a VZ OpenSocial Gadget developer.
We strongly believe that OpenSocial should also been taken literally so we started a monthly GeekNight where all interested developers are informed about our current projects and the release status of our OpenSocial implementation.
OpenSocial will become fully available by the end of the year. This leaves enough room to be out with stable and tested gadgets for the container’s OpenSocial launch.
However we already use GoogleGadgets to provide interactive ads and games on our platforms.
VZNetzwerke für Android verfügbar
Endlich ist es soweit, die mobile Variante der VZNetzwerke – studiVZ, meinVZ und schülerVZ – ist seit gestern im Android Market kostenlos verfügbar.
Über den mobilen Browser gelangt man direkt über folgende Links zur entsprechenden Anwendung im Market:
market://search?q=pname:net.studivz.android.studivz
market://search?q=pname:net.studivz.android.meinvz
market://search?q=pname:net.studivz.android.schuelervz
Die derzeitige Version 1.0b verfügt unter Anderen über folgende Funktionen:
- Buschfunk
- Lesen und schreiben von Nachrichten
- Anzeigen der Freundesliste
- Anzeige der letzten Besucher
- Gruscheln
Die erste Version stellt somit die wesentlichen Funktionen bereit und wird nun zügig mit weiteren Features, wie sie bereits von der normalen Web-Oberfläche bekannt sind, erweitert.
Bis dahin freuen wir uns natürlich über jegliches Feedback zu den Anwendungen.
Serving objects is more than plain delivery
On April 26th 2007 Steve Souders wrote:
The user’s proximity to your web server has an impact on response times. Deploying your content across multiple, geographically dispersed servers will make your pages load faster from the user’s perspective. [...] Remember that 80-90% of the end-user response time is spent downloading all the components in the page: images, stylesheets, scripts, Flash, etc. [...] A content delivery network (CDN) is a collection of web servers distributed across multiple locations to deliver content more efficiently to users.
Steve posted this approx. e^3.25809654 days after(!) we started to use a CDN for our web sites. Just some days later we noticed the desired effect. Our users started to make more and more traffic. The activity grew. Of course a CDN is some kind of luxury but it’s worth to invest into such a service at a special time. And from our point of view we thought it was time to. We were right.
Actually round about 286.356,421^2 objects will be requested per month by our users. More than the half of that (5,4E10 objects) are photos. Small, medium and big sized ones. So each of all photo files we store will be loaded round(pow(2,4.91)) times in a month. That makes a monthly traffic volume of more ore less 265.334.489.612.288 bytes only for these kind of objects. The total traffic of all delivered objects per month is something about 1,402939962446178 times higher.
At high traffic times there are over 110000110101000002 requests per second hitting our CDN and we are happy that our origin servers only get the (5^5)th part of it.

As a side effect we can learn something about the behaviour of our users because the performance graphs can show us for example what they do in the evening. Maybe the Schimanski serials on 26th of July was one of the reasons for the spikes after 8 pm (see graph above) which are nothing else than commercial breaks. Have a break, have a visit at studiVZ.
VZ meets OpenSocial GeekNight
Heute, am 20.08.2009, veranstalten wir eine GeekNight, um euch über den aktuellen Entwicklungsstand in Hinsicht auf die Einführung von OpenSocial auf unseren Plattformen zu informieren. Die Veranstaltung ist offen für alle Entwickler, Agenturen und technisch Interessierte.
Nährere Infos sind auf dem entsprechenden Edelprofil bei studiVZ und meinVZ zu finden.
Wir freuen uns auf viele Interessante Gespräche in gepflegter Atmosphäre!
Update
Wir werden Ende September eine weitere GeekNight in Berlin veranstalten, um euch über den aktuellen Stand zu informieren. Der Termin wird rechtzeitig angekündigt, versprochen ;).
Automated acceptance tests using Selenium Grid without parallelization
Originally we built our automated acceptance tests within our agile development process on a continuous integration server using Selenium with only one Selenium Remote Control. The tests were executed on a fixed browser under a specific operating system. With the growth of the test cases in the test suite the execution time of the builds extended rapidly, so the tests could not directly identify defects and thus a part of their function was lost.
The common strategy to solve this problem is to install Selenium Grid on the machine that formerly hosted the one Selenium RC to parallelize the execution of the tests. By connecting only 4 Selenium RC’s to this Grid Hub the execution time of these tests is reduced by a factor of 4 without any additional hardware and without rewriting the tests. The only prerequisite for this is that the used testing framework supports a parallelized test execution, i.e. it must be able to start more than one test of a test suite simultaneously and assign the answers supplied by Selenium Grid to the right test again.
Although our used testing framework PHPUnit does not provide a parallel execution of tests yet we found a way to use the benefits of Selenium Grid in our testing environment. Our continuous integration server provides the possibility to set up more than one build agent to run the Selenium driven acceptance tests. If we would do this with one single Selenium RC these agents would stress this RC rapidly because there is no possibility to check its state. The agents would start new tests no matter how many tests are already running at this RC.
So we installed Selenium Grid with 4 connected Remote Controls as described above. We can now control the number of simultaneously running tests, because Selenium Grid starts only so many test suites as RC’s are connected. Other incoming requests are queued in the Selenium Grid Hub until one of the connected RC’s has finished its test suite. Unlike the common usage of Selenium Grid we have not yet a real parallelization with this solution, since the test suites from the build agents of the continuous integration server run simultaneously, but each is still to be processed sequentially. But we have always the option of switching to a real parallelization when our testing framework supports it.








