
Tools
Super simple setup Setting up an A/B test couldn’t be easier. Almost everything is done for you. You can be running multiple tests in only a matter of minutes.
Test anything Whether you want to test changes to your copy, HTML, CSS, javascript, or test completely different designs, phpA/B offers a way to do it.
Google Analytics integration phpA/B integrates automatically into your Google Analytics, allowing deeper insight into your tests’ impact on users.
High performance PHP-based tests run before users even begin loading your web pages. Javascript-based A/B tests cause funny twitches in your UI.
Search bot filtering Don’t let search engine robots skew your data. phpA/B automatically filters them out of your tests.
php-judy is an exentsion by Nicolas Brousse for the Judy C library.
http://github.com/orieg/php-judy
A Judy array is a complex but very fast associative array data structure for storing and looking up values using integer or string keys. Unlike normal arrays, Judy arrays may be sparse; that is, they may have large ranges of unassigned indices.
http://en.wikipedia.org/wiki/Judy_array
Judy is a C library that implements a dynamic array. Empty Judy arrays are declared with null pointers. A Judy array consumes memory only when populated yet can grow to take advantage of all available memory. Judy's key benefits are: scalability, performance, memory efficiency, and ease of use. Judy arrays are designed to grow without tuning into the peta-element range, scaling near O(log-base-256) -- 1 more RAM access at 256 X population.
http://judy.sourceforge.net
Tell everyone about your releases! Send email notification after Capistrano deployments! Rule the world!
Drop your ActionMailer configuration information into your deploy.rb file, configure recipients for the deployment notifications, and setup the callback task.
Setup and configuration are done entirely inside your deploy.rb file to keep it super simple. Your emails are sent locally from the box performing the deployment, but CapGun queries the server to grab the necessary release info.
This even includes the Net::SMTP TLS hack inside as a vendored dependancy to allow super easy email sending without setting up an MTA.
One of the great difficulties of Facebook application development is the difficulty in running large-scale tests due to the large number of Facebook accounts required, and the Facebook Terms of Use which does not allow automated systems to access the Facebook servers. These issues are explained in depth in Load testing Facebook apps (Part 1) and Load testing Facebook apps (Part 2). FriendRunner acts as a drop-in replacement for the Facebook servers, and so allows you to run your tests with as many users as you'd like. Furthermore, FriendRunner's automated test system runs the entire test for you once you create a test script to define the actions for a single user.
Pig is a platform for analyzing large data sets that consists of a high-level language for expressing data analysis programs, coupled with infrastructure for evaluating these programs. The salient property of Pig programs is that their structure is amenable to substantial parallelization, which in turns enables them to handle very large data sets.
At the present time, Pig's infrastructure layer consists of a compiler that produces sequences of Map-Reduce programs, for which large-scale parallel implementations already exist (e.g., the Hadoop subproject). Pig's language layer currently consists of a textual language called Pig Latin, which has the following key properties:
Ease of programming. It is trivial to achieve parallel execution of simple, "embarrassingly parallel" data analysis tasks. Complex tasks comprised of multiple interrelated data transformations are explicitly encoded as data flow sequences, making them easy to write, understand, and maintain. Optimization opportunities. The way in which tasks are encoded permits the system to optimize their execution automatically, allowing the user to focus on semantics rather than efficiency. Extensibility. Users can create their own functions to do special-purpose processing.
Client Code Interface - How does your code interact with the log system? Scribe doesn't do much for you here. There's a simple Thrift interface for logging from a large set of languages, but the bulk of the work is stull up to you. Distribution System - This is were Scribe fits. It reliably (mostly) moves large numbers of messages around. A few error cases lead to data loss: 1) If a client can't connect to either the local or central scribe server the message will be loss; 2) If a scribe server crashes it could lose a small amount of data that's in memory but not on disk; 3) Some multiple component failure cases, such as a resender can't connect to any central server and its local disk fills up; 4) Some rare timeout conditions can lead to duplicate messages Do Something Usefullizer - How do you do anything useful with over 1 million messages per second? Good question. Scribe doesn't help here. But Scribe will get your data their.
Start an instance on an internal cloud, then with the same code start another on EC2 or Rackspace. Deltacloud protects your apps from cloud API changes and incompatibilities, so you can concentrate on managing cloud instances the way you want.
Deltacloud Core gives you:
REST API (simple, any-platform access) Support for all major cloud service providers Backward compatibility across versions, providing long-term stability for scripts, tools and applications One level up, Deltacloud Aggregator provides a web UI in front of the Deltacloud API. With Deltacloud Aggregator, your users can:
View image status and stats across clouds, all in one place Migrate instances from one cloud to another Manage images locally and provision them on any cloud
"Percona Server with XtraDB" is a drop-in replacement for MySQL, with full backward compatibility.
Percona Server provides diagnostic tools useful to DBAs, and more tunability of server behavior. Also included is Percona's online backup utility XtraBackup, the open source tool for the XtraDB / InnoDB.
Percona Server with XtraDB shows outstanding performance and scalability on today's high-end server systems with many CPUs and fast storage subsystems such as flash storage and SSD. Notable advantages include:
Scalability: Handles more concurrent transactions, and scales up on powerful servers. Performance: Fast IO path, improved internal cooperation, and fast checksums. Flexibility: Variable page size, better table and buffer pool management, and configurable insert buffer. Reliability: Resilience to corrupted data, and crash-safe transactional replication. Management: Online backup, InnoDB table import/export, fast recovery, and configurable data dictionary. Diagnostics: Improved profiling and instrumentation.
As a member of the IKS european project Nuxeo contributes to the development of an Open Source software project named fise whose goal is to help bring new and trendy semantic features to CMS by giving developers a stack of reusable HTTP semantic services to build upon. As such concepts might be new to some readers, the first part of this blog post is presented as a Q&A.
Introducing DEV@cloud from CloudBees
CloudBees DEV@cloud provides a fully integrated development infrastructure featuring a Hudson-based continuous integration available as a SaaS. All ready in a snap. DEV@cloud delivers:
Continuous Integration (based on Hudson) with build agents available as elastic resources billed by-the-minute, Private and secure Git and SVN repositories, Private and secure Maven repository, (more features coming soon...)
Foreman is aimed to be a Single Address For All Machines Life Cycle Management.
Foreman integrates with Puppet (and acts as web front end to it). Foreman takes care of bare bone provisioning until the point puppet is running, allowing Puppet to do what it does best. Foreman shows you Systems Inventory (based on Facter) and provides real time information about hosts status based on Puppet reports. Foreman creates everything you need when adding a new machine to your network,It's goal being automatically managing everything you would normally manage manually - that would eventually include DNS, DHCP, TFTP, PuppetCA, CMDB and everything else you might consider useful. With Foreman You Can Always Rebuild Your Machines From Scratch! Foreman is designed to work in a large enterprise, where multiple domains, subnets and puppetmasters are required. In many cases, Foreman could help remote provisions where no experienced technicians are available.
Ubuntu JeOS (pronounced "Juice") is an efficient variant of the Ubuntu Server operating system, configured specifically for virtual appliances. It is no longer available as a CD image for download. Now you can install it with either:
the Ubuntu Server Edition installation CD by pressing F4 and choosing "Install a minimal virtual machine", or Ubuntu's vmbuilder, as described here. JeOS is a specialized installation of Ubuntu Server Edition with a tuned kernel that contains only the base elements needed to run within a virtualized environment.
The following various scripts as used for various different tasks when reviewing MySQL installations. Calculate Your MySQL Database SizeCalculate Your Individual MySQL Schema SizeLog various MySQL statisticsAnalyze MySQL statisticsGather Long/Locked MySQL SessionsAutomated MySQL Installation
Celery is an asynchronous task queue/job queue based on distributed message passing. It is focused on real-time operation, but supports scheduling as well.
The execution units, called tasks, are executed concurrently on a single or more worker servers. Tasks can execute asynchronously (in the background) or synchronously (wait until ready).
Celery is already used in production to process millions of tasks a day.
Celery is written in Python, but the protocol can be implemented in any language. It can also operate with other languages using webhooks.