OpenShift is Red Hat's Platform-as-a-Service (PaaS) that allows developers to quickly develop, host, and scale applications in a cloud environment. With OpenShift you have choice of offerings, including online, on premise, and open source project options.
OpenShift works under the PaaS instance/dyno model, allowing you to deploy your code to a specified number of “gears” or “cartridges.” Each of these gears is dedicated to running the code of a certain portion of your application, whether it’s accessing the attached database, responding to HTTP requests or processing background jobs. You can define your own processes and assign them to gears or cartridges, giving you more granular control over the performance of your application.
The customizable gear model makes OpenShift perfect for introducing specialized tasks through your application. For example, you could dedicate an entire array of gears to media transcoding and build your own media converter on their infrastructure. You can then supercharge your production by allotting more gears to the processes and return converted files in seconds. This level of control and customization is great for applications that may do things requiring more computing power than a traditional website.
OpenShift is compatible with several major web languages, including PHP, Python, Ruby, Java, Node.js and even Perl. They also allow you to use relational databases from the SQL family or NoSQL “flat” databases like MongoDB. Most of the upload and deployment process is handled by a command-line interface backed by Git, the popular source-control software.
Customer support is the only area where OpenShift fell behind the competition. Like other PaaS products, it provides ample written documentation in the form of tutorials, FAQs etc. They rely heavily on their community for answers to questions, listing community-based services like IRC chat and community forums as resources for troubleshooting.