Showing posts with label Vagrant. Show all posts
Showing posts with label Vagrant. Show all posts

Thursday, September 7, 2017

Industry Standard Use Cases of Apache HTTP Server

The Apache HTTP Server ("httpd") is an open source, free and most popular HTTP Web Server software that could run on both Unix & Windows type platform. Today we would discuss various industry standard use cases of Apache HTTP Server.

Industry Standard Use Cases of Apache HTTP Server


  • For setting up a common project specific software artifacts repository for all the developers in a team (Onshore & Offshore)
    You will think why one would want to use Apache HTTP Server for hosting software/project related artifacts? To answer this question, I would share my experience that is

    - Due to advent of Agile, DevOps culture in the software industry, people are rapidly opting various IT automation tool, Provisioning tool, Configuration Management tool for automating their Software Delivery pipeline. For example: Use Vagrant for easily and efficiently creating and configuring reproducible, portable development environments. It's becoming standard practice that project specific software artifacts like putty.exe, gradle.zip, jdk-7u51-linux-i586.gz, mysql-5.1.71-1.el6.x86_64.rpm, apache-maven-3.0.5-bin.tar.gz, centos65-x86_64.box etc are hosted in Apache HTTP Server. From this central location, software are downloaded in all the developers machines by using vagrant. In this way, every developers have the identical development environment which is similar to production/staging/qa. No more "It doesn't work on my machine" excuse.

    - Easily download the latest project specific artifacts from central location, no need to send mails to anyone, no follow up, no tension of downloading/having wrong version of artifacts, no more roaming around for finding desired version of software in the internet. 

  • For Load Balancing & Hosting Static Website Content
    While designing the technology stack for the enterprise application, it's most common and adapted practice to have Apache HTTP Server as their Web Layer which not only distribute incoming traffic to multiple Application Servers by using software load balancing techniques but also reduce loads of the Application server by directly serving request for all the static assets.

Here I have described the most widely used use cases of Apache HTTP Server that I have came across and used while my tenure in the IT industry. If you have any other use cases in mind, feel free to share through comments. Happy Learning!! :-)

Tuesday, January 10, 2017

Introducing Vagrant

Have you ever faced or heard about below problems:
  • Environment setup on multiple systems whether it is development, staging or QA which includes multiple server setup, software and database installation as well as their configuration. We all agree on one point that traditional way of Environment setup is very time consuming and effort taking.
  • The process/scripts for setting up the server / database / software that worked in one system are now failing in another. I am referring to “it does not work on my machine” excuse that developers used to raise for any kind of issues. :-)
  • New member joins the team - you have to again setup the same development environment; you have to recall the complete setup process. Even if you are happy and ready to set up the development environment in traditional way, if it is not properly documented and you miss a minor thing then boom...red flag!  
  • Unable to replicate the issues in your local development environment that's happening in production or in other team members workstation
If yes, then this article/tutorial is a must for you. Vagrant addresses these problems and helps us to create and manage portable, reproducible development environment. If you haven’t faced or heard about above problems or Vagrant, then this is the right time to get acquainted to it. Vagrant is very popular open source project.

In this article, we would discuss:
What is Vagrant?
Why do we need Vagrant?
What are the main features offered by Vagrant?