Friday, July 17, 2009

Web Server-Working Concept

First, it's important to note that this is a two-sided story. Web servers are responsible for storing and exchanging information with other machines. Because of this, at least two participants are required for each exchange of information: a client, which requests the information, and a server, which stores it. Each side also requires a piece of software to negotiate the exchange of data; in the case of the client, a browser like Netscape or Internet Explorer is used.


On the server side, however, things are not as simple. There is a myriad of software options available, but they all have a similar task: to negotiate data transfers between clients and servers via HyperText Transfer Protocol, the communications protocol of the Web. What type of server software you are able to run depends on the Operating System chosen for the server. For example, Microsoft Internet Information Server is a popular choice for Windows NT, while many Unix fans choose Apache Web server.

A simple exchange between the client machine and Web server goes like this:

1. The client's browser dissects the URL in to a number of separate parts, including address, path name and protocol.

2. A Domain Name Server (DNS) translates the domain name the user has entered in to its IP address, a numeric combination that represents the site's true address on the Internet (a domain name is merely a "front" to make site addresses easier to remember).

3. The browser now determines which protocol (the language client machines use to communicate with servers) should be used. Examples of protocols include FTP, or File Transfer Protocol, and HTTP, HyperText Transfer Protocol.

4. The server sends a GET request to the Web server to retrieve the address it has been given. For example, when a user types http://www.example.com/1.jpg, the browser sends a GET 1.jpg command to example.com and waits for a response. The server now responds to the browser's requests. It verifies that the given address exists, finds the necessary files, runs the appropriate scripts, exchanges cookies if necessary, and returns the results back to the browser. If it cannot locate the file, the server sends an error message to the client.

5. The browser translates the data it has been given in to HTML and displays the results to the user.

This process is repeated until the client browser leaves the site.

Aside from its functions listed above, the Web server also has an additional number of responsibilities. Whereas a Web browser simply translates and displays data it is fed, a Web server is responsible for distinguishing between various error and data types. A Web server must, for example, designate the proper code for any sort of internal error and send that back to the browser immediately after it occurs. It also has to distinguish between various elements on a Web page (such as .GIFs, JPEGS and audio files) so that the browser knows which files are saved in which format. Depending on the site's function, a Web server may also have numerous additional tasks to handle, including logging statistics, handling security and encryption, serving images for other sites (for banners, pictures, etc), generating dynamic content, or managing e-commerce functions.

Now that you've had a behind-the-scenes tour of a Web server, you can appreciate all the work that goes in to delivering a single page of content to your computer screen. Use this knowledge to your advantage, and keep it in mind when shopping around for your next host.This cocept goes in a scheduled way.



Hosting Needs

One must start with the space. Web space (disk space) is the amount of data you can store on the hard disk of the web server. Each web hosting accound comes with a certain amount of space, usually over 50 MB and less than 1000 MB.

Obviously, the amount of needed space depends on the size of the website. Most websites are composed of html (text) pages with a few images (gifs or jpegs) or even a little bit of Flash animation. Text is very economical; it occupies very little space. Images and flash are more expensive; they require a lot of space. If you're new to the web you might think it's great to have a lot of colorful images to make your website really beautiful. Don't make this common mistake!

Your aim should be to say as much as you can on a page while maintaining it's size under 50-60 KB including images. The reason? There are still lots of people using slow dial-up connections of under 56 Kbps. For them a 150 KB will take more that 21 seconds to load. A 60 KB page will take more than 8 seconds to load. That's still a lot of time! A good page size is under 30 KB. A maximum page size is 50-60 KB.

Considering an average page size of 30 KB, you can put approximately 33 pages on 1Mb of space. If you have 10 MB of space available, you could host 330 pages. I only wish I had so many pages to put online. Don't worry, I'm working on it!

The idea is this: unless you run a busy forum your needs for space are likely to be rather modest. Just keep in mind to achieve an average of 30KB/page and you should be more than fine even with 10 MB of web space.

Bandwidth is the amount of data that you're allowed to transfer per month. It includes all uploads and downloads regardless of the protocol used (HTTP, FTP, POP etc.). Bandwidth depends very much on the average page size, but it also depends on the number of visitors your website will have and the average number of pages they visit. For an average page size of 30 KB, 20,000 visitors per month and 3 pages per visitor your website will need about 1800 MB (1.8 GB) of bandwidth per month. Most low cost hosting packages include that amount of bandwidth. Not to mention that 20,000 visitors per month is only a dream for most websites. Most don't even have 2,000 visitors per month.

I took you through all those numbers just to give you an idea how to estimate your needs. If you're just launching your website you will not need neither a huge amount of space, neither a huge amount of bandwidth. For 99% of people a hosting account with 10MB of space and 1Gb is more than enough.

Conclusion: Unless you have reasons to believe that your website will definitely have lots of visitors and unless you'll offer movies or music for download (legally of course ), I see little reason for you to worry about space and bandwidth.

Just make your own calculations and also try to make sure that the host you choose allows account upgrades. That is to make sure you will be able to get more space and/or bandwidth if/when you need it without going through all the trouble of changing hosts.

The end. Cheers!It goes like this and so on.

Hosting Plan-Salient Features

Forwarding mail accounts are useful if you want to send your mail to a service like SpamCop or other email filter before you receive it. Rather than store it on your mail server, it will redirect all mail to another single email address where it is dealt with appropriately. This kind of account is useful for redirecting your emails to a common POP3 box.
Aliases are names that can be used to identify different types of email account, redirecting them to POP3 mailboxes on the server or other addresses, where they are processed again if necessary. What happens to the emails will depend on whom they are being sent to. A catch all alias is often used to collect and deal with email sent to people or departments not recognised by your mail server.
Autoresponders
are not an email account in their own right, however they do have their own email address and simply reply to anyone that emails them for information. They are useful if you want to send out pre-prepared information to people requesting it, as opposed to you replying to all the requests manually.
FTP Access One other thing that is common amongst paid hosting accounts is FTP access. FTP programs allow you to upload files and to edit and delete your content on the server much more quickly than using a web-based interface. If you are hosting on a *nix system, you will also be able to change your file permission settings using FTP.

One of the better features I've seen offered with hosting, is the ability for you to create your own FTP accounts. This is great when you have someone helping out on the site or if you want to share your web space while keeping your user's files separate from your own. How hosts go about this can vary.

Some hosts will let you act like a mini hosting company, where FTP accounts that you create takes them to a special users folder specifically for their files; keeping them from your main files. Other hosts will allow you to create FTP accounts that you can define exactly which folders they have access to, and exactly what they can (and can't) do with them.

While having the ability to create multiple FTP accounts may seem trivial if you don't intend to host other sites on your web space; it can be useful for allowing temporary or permanent access to anyone helping you with your site, without you ever needing to give out your own FTP account details. Now that is a feature worth having!

Some More Basic Features

Email Accounts
Email accounts are a common feature of hosting, particularly if you are hosting a domain. Some hosts will let you have control over your mail settings, putting restrictions on mail activities (for example the number of accounts or maximum size of mail boxes) on the server side. Other hosts will do all the set up for you, even though setting up of new mail accounts can be easier than you think with the right software support.

How you configure your email is a matter of personal preference, but there are essentially four main types of mail accounts; POP3, forwarding, aliases and autoresponders.

POP3 accounts are the traditional "inboxes", you have space on a server to store your mail, allowing you to use an email program to log in and download your mail; each login and password combination usually equates to one account. This works a bit like an office inbox, the mail is left there until you do something with it; if it is full then your mail can't be stored and bounces.

The Basic Features-Hosting Plan

Disk Properties
All hosting accounts offer a certain amount of disk space that you can use to store all your files. Exactly what is, and isn't counted towards your disk space usage will vary from host to host; so make sure you check exactly what files you will need to allow for when deciding how much disk quota you will need.

It would be a good idea to have some sort of estimates on what you need for various tasks. How much space will you need for storing your email, web files, databases and log files? By breaking down your usage like this it will be much easier to work out how much space you should go for (once you know exactly what files are counted towards your disk quota).

All plans will certainly include all your web accessible files when calculating disk usage. Some hosts will also choose to include email and/or logs in the quota, which can make estimating your disk space requirements more difficult. While you may have a good idea of the disk space needed for your web files, your email and log file needs change constantly.

Should a host include all types of file storage in the quota, check to see if you can switch off your logs or exclude particular information. If the option is available it will save you a lot of disk space, particularly if you have a busy site. However, if you want to use any statistics package that is available with your hosting, you will need to allow some logging to take place.

If you enable your logs then it is also worth remembering that you might not be able to delete a log file from the server until the server has stopped writing to it. Daily logs are fairly manageable if you remember to log in and download and delete them regularly. Problems with monthly logs can arise if you underestimate your log space needs and you can't delete the file until the end of the month; which could lead to an extra charge if you aren't careful.

If your email settings and inboxes are included in your disk quota, it might be an idea to set the maximum size of each mailbox if it is possible. This will save you from storing too much mail on the server and inadvertently going over your limit.

ColdFusion MX: Macromedia- Rapid Server Scripting Environment

ColdFusion 1.0 was launched in 1995 by the Allaire Corporation as the first Web application server for Windows NT. It was conceived and designed specifically to help HTML programmers create database-oriented web applications. Promising from the start, significant improvements were made over the years leading to ColdFusion 5.0. The Allaire Corporation was acquired by Macromedia in 2001 and since then ColdFusion has been integrated with Macromedia’s industry-leading development software -- Dreamweaver and Flash. Today, the latest version is called ColdFusion MX, which is part of the Macromedia MX "family" - an integrated suite of products that is designed to streamline the creation and delivery of everything from simple websites to Rich Internet Applications. The "MX" moniker is not an acronym and doesn't have a literal translation. "MX" simply designates ColdFusion MX as a major new release and part of the Macromedia MX product family which also includes Macromedia Flash MX, Dreamweaver MX, Fireworks MX, Director MX, Macromedia Flash Communication Server MX and Macromedia Studio MX.

One of the greatest features of ColdFusion is its simple, tag-based scripting language called ColdFusion Markup Language or CFML. What makes CFML great is that it’s very easy for developers to learn because they are already used to working with tag-based HTML. That allows ColdFusion applications to be written faster, even by developers with less experience. CFML is simple and very intuitive, reducing common web functions - like accessing a database - into single CFML tags. Compare that with several lines of code that are required with PHP or ASP. ColdFusion also handles low-level programming tasks automatically and simplifies code reuse. In addition to over 75 tags and 240 built-in functions, CFML allows developers to extend the language by creating their own custom tags or userdefined functions, or by integrating COM, Java/C++ and Java components. With the release of ColdFusion MX, Macromedia now offers developers next generation architecture that allows deployment of ColdFusion applications on Java 2 Enterprise Edition (J2EE) servers, including Macromedia JRun, IBM Websphere, BEA WebLogic and Sun One.

There are other key advantages to ColdFusion MX such as its comprehensive feature set including built-in graphing and charting functions and Verity search engine. ColdFusion MX is also supported on Solaris, Linux, Windows and HP-UX with code compatability between platforms. Another big advantage is how reliably it is supposed to scale to heavy loads.

Unfortunately, ColdFusion MX was initially not very reliable and a big disappointment for developers who upgraded from ColdFusion 5.0. And a lot of developers made the switch as soon as MX was released because Macromedia slashed the cost to license MX ($795) to almost half the cost of version 5.0 ($1295). The big problem was instability arising from the change from 5.0’s ColdFusion Server to MX’s JRun Server. Macromedia has since released a couple of updates to ColdFusion MX that have apparently fixed the initial problems with it -- but not before a lot of developer headaches. Macromedia has now raised the licensing cost to $1295 for ColdFusion MX, which is about the only real downside we can see compared with other competing platforms that are less expensive. There is a freeware version of ColdFusion MX available but its features are limited.

Reality In ASP.NET

Translation: ASP.NET is software built on a reliable programming model that runs on the server-side to more quickly display Web pages to your browser. The software can be programmed using a coding language your developer is bound to already know.

Now, let’s drill this down a little bit farther....

Microsoft says, "ASP.NET server controls enable an HTML-like style of declarative programming that lets you build great pages with far less code than with classic ASP. Displaying data, validating user input, and uploading files are all amazingly easy. Best of all, ASP.NET pages work in all browsers -- including Netscape, Opera, AOL, and Internet Explorer."

Translation: Writing less code takes your developer less time, which saves you money! And your Web site should work perfectly no matter whose computer you view it on.

Microsoft says, "ASP.NET lets you leverage your current programming language skills. Unlike classic ASP, which supports only interpreted VBScript and JScript, ASP.NET now supports more than 25 .NET languages (including built-in support for VB.NET, C#, and JScript.NET -- no tool required), giving you unprecedented flexibility in your choice of language."

Translation: ASP.NET gives you unprecedented flexibility in your choice of developers!

Microsoft says, "Application features that used to be hard to implement, or required a 3rd-party component, can now be added in just a few lines of code using the .NET Framework. The .NET Framework offers over 4500 classes that encapsulate rich functionality like XML, data access, file upload, regular expressions, image generation, performance monitoring and logging, transactions, message queuing, SMTP mail, and much more!"

Translation: Human beings solve complex problems by breaking them down into smaller tasks that are manageable. In programming, these smaller tasks are called "objects" (thus the term Object Oriented -- or OO -- language). A "class" is a recipe of code to achieve an "object." So, the .NET framework is really a cookbook for developers with over 4500 recipes of code that can be strung together to solve your larger complex coding needs without reinventing the recipes from scratch every time.

Microsoft says, "ASP.NET output caching can dramatically improve the performance and scalability of your application. When output caching is enabled on a page, ASP.NET executes the page just once, and saves the result in memory in addition to sending it to the user. When another user requests the same page, ASP.NET serves the cached result from memory without re-executing the page. Output caching is configurable, and can be used to cache individual regions or an entire page. Output caching can dramatically improve the performance of data-driven pages by eliminating the need to query the database on every request."

Translation: ASP.NET’s server-side logic really rocks when it comes to your Web site’s performance -- especially if your pages display a lot of database information requested by your users.

ASP.NET-Real Meaning

The promise of Microsoft’s ASP.NET is that "writing dynamic, high-performance Web applications has never been easier." That sure sounds good, doesn’t it? But for many non-developer professionals who are involved in one way or another with the Web development process, the devil is in the details of how this is achieved. So here’s a look at how some of the developer jargon translates into everyday language.

Microsoft says, "ASP.NET is a set of technologies in the Microsoft .NET Framework for building Web applications and XML Web Services. ASP.NET pages execute on the server and generate markup such as HTML, WML or XML that is sent to a desktop or mobile browser. ASP.NET pages use a compiled, event-driven programming model that improves performance and enables the separation of application logic and user interface. ASP.NET pages and ASP.NET XML Web Services files contain server-side logic (as opposed to client side logic) written in Visual Basic .NET, C# .NET, or any .NET compatible language. Web applications and XML Web Services take advantage of the features of the common language runtime, such as type safety, inheritance, language interoperability, versioning, and integrated security."

Principles Of ASP Web Hosting

ASP Web hosting refers to web hosting companies that provide support for ASP. A good host will be able to offer help and support if you want to host a dynamic data-driven web site using ASP. Find out what versions of ASP and ASP.NET they support. They should be able to offer a comprehensive list of tips for optimizing your ASP Web site on their servers. Since ASP code allows you to link your web pages to a database, check if they support the database applications you will be using such as Access and SQL, for example.

Because of the popularity of Windows and Microsoft products, shared hosting plans that support ASP developed Web sites are commonplace. The key to long term reliability and satisfaction will be choosing a provider for ASP Web hosting that will deliver the level of technical support you will need. Paying a little extra per month is well worth the rapid troubleshooting capability of a Web host with 24/7 telephone support.

Dynamics Of Active Server On Pages

ASP, or Active Server Pages, is a scripting language introduced by Microsoft and designed to be embedded within the HTML code for Web pages. The word ‘Active’ in its name refers to the fact that ASP enables your Web pages to be dynamic and interactive -- delivering different database driven information for each Web page query and allowing the user to interact with page objects such as Active X or Java components. With ASP, you can combine HTML pages, script commands, and COM components to create interactive Web pages or powerful Web-based applications, which are easy to develop and modify. The term ‘Server’ in its name is a reference to server-side scripting -- meaning ASP is run on the Web server before any HTML is sent to the user’s browser -- making the content unaffected by the type of Web browser being used. ASP Web pages have the extension .asp which tells the server to run the ASP code before the page is sent to the users computer.
ASP was developed and launched by Microsoft and first introduced on their Internet Information Server (IIS). For this reason, a Web site programmed with ASP is best hosted on a Windows server because most components of ASP work with IIS, which is specific to Windows. ASP is a component of IIS 3.0, which is a free, downloadable, and integrated feature of Windows NT Server 4.0. The ASP feature of IIS 3.0 requires Microsoft Windows NT Server 4.0 running IIS 2.0 or Windows NT Workstation 4.0 running Peer Web Services. The ASP feature does not require Service Pack 2 for Windows NT 4.0, although it is recommended that all Windows NT systems receive the Service Pack 2 updates. The ASP feature contains a subset of the updates found in Service Pack 2. Installation of ASP will upgrade IIS version 2.0 to version 3.0. The other IIS 3.0 features -- Index Server 1.1, Microsoft NetShow, FrontPage 97 Server Extensions, and Crystal Reports -- add significant functionality to IIS, but are not required to take advantage of ASP.

Some More ASP Basics



Microsoft says, "Application features that used to be hard to implement, or required a 3rd-party component, can now be added in just a few lines of code using the .NET Framework. The .NET Framework offers over 4500 classes that encapsulate rich functionality like XML, data access, file upload, regular expressions, image generation, performance monitoring and logging, transactions, message queuing, SMTP mail, and much more!"

Translation: Human beings solve complex problems by breaking them down into smaller tasks that are manageable. In programming, these smaller tasks are called "objects" (thus the term Object Oriented -- or OO -- language). A "class" is a recipe of code to achieve an "object." So, the .NET framework is really a cookbook for developers with over 4500 recipes of code that can be strung together to solve your larger complex coding needs without reinventing the recipes from scratch every time.

Microsoft says, "ASP.NET output caching can dramatically improve the performance and scalability of your application. When output caching is enabled on a page, ASP.NET executes the page just once, and saves the result in memory in addition to sending it to the user. When another user requests the same page, ASP.NET serves the cached result from memory without re-executing the page. Output caching is configurable, and can be used to cache individual regions or an entire page. Output caching can dramatically improve the performance of data-driven pages by eliminating the need to query the database on every request."

Translation: ASP.NET’s server-side logic really rocks when it comes to your Web site’s performance -- especially if your pages display a lot of database information requested by your users.

ASP.NET: Understanding Its Real Meaning In Detail

The promise of Microsoft’s ASP.NET is that "writing dynamic, high-performance Web applications has never been easier." That sure sounds good, doesn’t it? But for many non-developer professionals who are involved in one way or another with the Web development process, the devil is in the details of how this is achieved. So here’s a look at how some of the developer jargon translates into everyday language.

Microsoft says, "ASP.NET is a set of technologies in the Microsoft .NET Framework for building Web applications and XML Web Services. ASP.NET pages execute on the server and generate markup such as HTML, WML or XML that is sent to a desktop or mobile browser. ASP.NET pages use a compiled, event-driven programming model that improves performance and enables the separation of application logic and user interface. ASP.NET pages and ASP.NET XML Web Services files contain server-side logic (as opposed to client side logic) written in Visual Basic .NET, C# .NET, or any .NET compatible language. Web applications and XML Web Services take advantage of the features of the common language runtime, such as type safety, inheritance, language interoperability, versioning, and integrated security."

ASP web hosting Procedure

You will need to find a web host who will host your website on a Windows 2000 or 2003 server. It is safer to host your ASP pages on a Windows server as they are more stable and most ASP components work with IIS (Internet Information Services), specific to Windows. You also need to consider if your web site uses a database (e.g. SQL, Access) and then make sure your web host provides support for the type of database your web site uses.

Translation: ASP.NET is software built on a reliable programming model that runs on the server-side to more quickly display Web pages to your browser. The software can be programmed using a coding language your developer is bound to already know.

Now, let’s drill this down a little bit farther....

Microsoft says, "ASP.NET server controls enable an HTML-like style of declarative programming that lets you build great pages with far less code than with classic ASP. Displaying data, validating user input, and uploading files are all amazingly easy. Best of all, ASP.NET pages work in all browsers -- including Netscape, Opera, AOL, and Internet Explorer."

Translation: Writing less code takes your developer less time, which saves you money! And your Web site should work perfectly no matter whose computer you view it on.

ASP working way

When you type a URL in the Address Box or click on a web page you are asking the web server to send a file to your computer; if the file is standard HTML, then, when your web browser receives the web page it will look exactly the same as it did on the web server. However if an ASP file is sent to your computer from the web server, firstly, the server will run the HTML code; and then, run the ASP code. For example: the ASP code could be the current date, or time; and other such information.
You will need to find a web host who will host your website on a Windows 2000 or 2003 server. It is safer to host your ASP pages on a Windows server as they are more stable and most ASP components work with IIS (Internet Information Services), specific to Windows. You also need to consider if your web site uses a database (e.g. SQL, Access) and then make sure your web host provides support for the type of database your web site uses.

ASP Web Hosting

ASP web hosting refers to web hosting companies who provide support for ASP (Active Server Page). If you want a dynamic data-driven web site you may wish to embed ASP code into your web site’s HTML Pages. When a user is viewing a web site that is developed using ASP, the pages can change depending on the actions of the user. ASP code allows you to link your web pages to a database, where users can interact with the web page by logging in and using their own personal settings or they can interactively place orders on your web site.


ASP stands for Active Server Pages. Active Server Pages are HTML pages with embedded ASP scripts that are processed on the server before the page is sent to the user. ASP allows you to create dynamic database driven pages, a user can access data in a database, and interact with page objects such as Active X or Java components.