Sunday, 9 November 2014

Modern Web Applications, Types, Storage and Where to Deploy?

We live in an era of digital revolution, our products and services, our sales and marketing are no longer an offline activity. We need to access information and make decisions on the go. We need modern Web Applications to solve this issue and help us access and share information securely and efficiently.

Web Application Types

PHP, Asp.Net Form Applications (Legacy web applications)
The form based application design is suitable for a typical line of business application where the user needs to input data via web forms and generate reports. These type of applications are mainly developed for internal use within the organisation.
Html, CSS, MVC, Ajax Applications (Most Popular Web Applications)
The Web 2.0 applications are the most popular applications available. They are user friendly, responsive and work on all browser types. Most enterprise apps and products are developed with this technology stack.
Single Page Application (Fast, Efficient and Modern Web Applications)
The Single Page Application (SPA) has been around for a few years, however the recent popularity of knock out and Angular JS has made it an attractive option for many web developers. It offers a client side rich interface with a very light weight server interaction.

Web App Storage

When developing web applications we need to persist data and depending on the type of data there are a few options to choose from. Most application utilise one or more options in a single web application.
SQL Database
This is one of the most common storage mechanisms used by almost all of the web applications. It is suitable for storing tabular or structured data where we have rows and columns to store and query based on their relationships. Microsoft SQL Server and MySQL are popular choices in this category.
No SQL Database
This is a new breed of storage and is suitable for storing large unstructured data. The best example would be tweets where each tweet is a different and not related to each other. Both Microsoft Azure and AWS offer these services however MongoDB is a popular choice in this category.
Binary Data
We can store our binary data, i.e. images, videos and voice files in a database, however it is not an efficient use of database storage. Traditionally these type of contents are simply stored on a file server, however having access to cloud infrastructure both Microsoft Azure Blobs and AWS S3 services are great choices in this category.

Web App Deployment

Having a number of options available to deploy a web application it is sometime a difficult choice to make. Here are a few options available and reasons why you should choose one
Shared Hosting
This is one of the common and cost effective options available for deploying a simple web application where performance, security and availability are not critical factors. There are even free deals from many hosting providers including Microsoft Azure where you can upload up to 10 sites for free.
Dedicated VPS
When your web application has some external dependencies or you need to access the operating system and control the environment your best choice is to deploy on a dedicated Virtual Private Server (VPS). There are wide variety of options available including Microsoft Azure and AWS where you pay based on your usage instead of a fixed monthly/yearly subscription.
Cloud Hosting
Most modern web applications are now developed for cloud, this enables the web applications to be scalable and cost effective. For example a booking system can spawn ten web servers during the peak times and only a single server at night to save cost and serve better. Both Microsoft Azure and Amazon Web Services are popular choice in this category.
YZM Technologies is a Perth based Software Company specialising in building custom software, databases and mobile apps and helping small businesses achieve better results by optimising business processes.


1 comment:

  1. Thanks for your ideas. You can also find the details on Affity Solutions, at the Web Designing and Development Australia. The main object of the Affity Solutions is to provide quality web services and is among the few software development company in Australia.