Welcome to www.chooseblackamerica.com
Web Hosting - DNS, How The Internet Keeps Track of Names
The way computers communicate is, in a way, very similar to something very familiar: the postal system that delivers letters and packages. Here's how...
The Internet is just what the name suggests, a large inter-connected set of networks. But those networks are pointless without the one part that forms what is called their 'end-nodes', otherwise known as computers. Those computers often need to share information because the people who use them want to share information.
But, in a system where there are millions of separate computers, how can you enable them all to communicate? One very important feature of that solution is performed by something called DNS, the Domain Name System.
Every part of a network that is going to send or receive information is assigned an IP address. That's a numeric identifier that uniquely specifies a particular 'node', such as a computer, a router that directs traffic or other component. They look like this: 188.8.131.52
But those numbers are more difficult for people to remember and work with. They also aren't very attractive from a marketing perspective. So, a naming system was layered on top of some of them, mostly the computers involved, though routers have names, too.
But once you have a system that associates a unique IP address to a given name, you need some way of keeping track of all of them. That's carried out by several different pieces of the system: Name Registrars, DNS Servers and other components.
The Name Registrars, overseen by IANA (Internet Assigned Numbers Authority) and other international bodies, provide and keep track of domain names. When you register with GoDaddy or any of a hundred other intermediate companies, ultimately that information makes its way into a number of specialized databases stored inside DNS Servers.
A DNS Server is the hardware and/or software that tracks and forwards the IP Address/Domain Name pair from one place to the next. In many cases, there are a number of them between your browser and the remote computer you want to share information with.
Suppose you request information from, say, Yahoo's site by clicking on a link on their site. DNS resolves (translates) the name of WHO IS making the request and OF WHOM, to addresses, then passes the request through the network to the requested IP address. The requested data is then passed back through the mesh of network components to your computer and displayed in your browser.
Whether the communication is between a desktop computer and a server somewhere, or between one server and another, the process is essentially the same. DNS servers translate names into IP addresses and the requests for data are forwarded on.
In some cases those DNS servers are part of a specialized network computer whose sole job is to do the translation and forwarding. In other cases the DNS software may reside on a server that also houses a database of general data, or stores email, or performs other functions.
But however complicated the chain or the parts, the basic process is simple. Translate the name to an address, just as the postal system does. Whether international or local, your name is associated with an address, and the deliveries are made to the address, then forwarded to a particular name.
Web Hosting - Changing Web Hosts, Pitfalls and Planning At some point, nearly everyone finds it necessary to change web hosts. It may be just a migration to another server, or it may be changing web hosting companies entirely. Either way, the process is fraught with potential dangers. But there are ways to minimize the odds of problems and maximize your changes of a smooth migration. Plan, plan, plan. Make a very detailed list of everything that is on your current system. Review what is static and what changes frequently. Note any tailoring done to software and files. Be prepared to remake them if the systems aren't transferred properly or can't be restored. Keep careful track of all old and new names, IP addresses and other information needed to make the migration. Backup and Test Backup everything on your system yourself, whenever possible. Web hosting companies typically offer that as a service, but the staff and/or software are often less than par. Often backups appear to go well, but they're rarely tested by restoring to a spare server. When the time comes that they're needed, they sometimes don't work. Do a dry run, if you can. Restore the system to its new location and make any needed changes. If you have the host name and or IP address buried in files, make sure it gets changed. This is often true of databases. SQL Server on Windows, for example, picks up the host name during installation. Moving a single database, or even multiple ones, to a new server is straightforward using in-built utilities or commercial backup/restore software. But moving certain system-related information may require changing the host name stored inside the master database. Similar considerations apply to web servers and other components. Accept Some Downtime Be prepared for some downtime. Very few systems can be picked up, moved to another place, then brought online with zero downtime. Doing so is possible, in fact it's common. But in such scenarios high-powered professionals use state-of-the-art tools to make the transition seamless. Most staff at web hosting companies don't have the skills or the resources to pull it off. Prepare for Name Changes One aspect of moving to a new host can bedevil the most skilled professionals: changing domain names and or domain name/IP address combinations. When you type a URL into your browser, or click on one, that name is used because it's easier for people to remember. www.yahoo.com is a lot easier to remember than 184.108.40.206. Yet the name and or name/IP address combination can (and does) change. Still, specialized servers called DNS (Domain Name System) servers have to keep track of them. And there are a lot of them. There may be only two (rarely) or there may be a dozen or more DNS servers between your visitors' browsers/computers and your web host. Every system along the chain has to keep track of who is who. When a name/IP address changes, that pair has to be communicated to everyone along the chain, and that takes time. In the meantime, it's possible for one visitor to find you at the new place, while another will be pointing to the old one. Some amount of downtime will usually occur while everything gets back in sync. The Little Gotchas But even apart from name and IP address changes, there are a hundred little things that can, and often do, go wrong. That's not a disaster. It's just the normal hurdles that arise when changing something as complicated as a web site and the associated systems that underlie it. Gather Tools and Support Having an FTP program that you're familiar with will help facilitate the change. That will allow you to quickly move files from one place to the next to do your part to get the system ready to go or make repairs. Making the effort to get to know, and become friendly with, support staff at the new site can be a huge benefit. They may be more willing to address your problem before the dozen others they have to deal with at any given moment. Ok. On your mark. Get ready. Go.
Web Hosting - Databases, What Are They and Do You Need One? 'Database' is one of the most commonly used terms that one encounters in web site design. Yet, what they really are and whether they're essential is often not clear to novices. A database is a collection of organized data, stored in files that have a specific structure. It's that organization and structure that allows for easy and rapid storage and retrieval. The need for a database generally only arises when you have a certain amount of information and that information needs to have some structure. If you have a half-dozen names and addresses to store, a database is usually overkill. If you have a blob of data with no relationships between any of the items in that blob, maintaining a database is usually more trouble than it's worth. Maintain a database? Yes, like other complex systems a database, to be effective, needs to be designed properly at the outset then kept 'tuned' for good performance. The alternative is to gradually allow the database to become more and more disorganized. That leads to difficulty in use, poor speed of retrieval and more frequent failures. With MySQL, Access or MS SQL Server, the three most common choices of database product for web sites today, setting up a database is relatively simple. Even those with limited technical skill can get one up and running just by following some simple instructions. But some thought should be given to how you want the information organized, and to maintaining the system during its lifetime. Suppose you have a set of names, addresses, email addresses, products purchased, date purchased and amount. If you have only a few dozen records it matters very little how these pieces are arranged and related. A database usually isn't even warranted in this scenario. Once you have several thousand or more records, it matters a lot. Speed, the ease of expanding the set of attributes (like adding, say, product category), and other issues come into play. Even those with little technical expertise, but a willingness to exert logical thought and invest some time, can build a very robust database. Think about how you would organize a set of data (called 'tables'). Should Name, Address, and Product be in the same table? Or should the personal information be stored in one table and any product information (product, price, ...) in another? Some experimentation may be needed to get it right, but the choices have an impact on how easy the tables are to maintain. It also affects the speed with which programs can fetch old data and store the new. Having a database also introduces new maintenance issues for the server administrator, since backups usually need to be done differently. Recovering a failed database is usually more complicated than simply re-copying files from yesterday. Ask your hosting company what tools and skills they have for dealing with any database system you consider. It's true that introducing a database creates more complexity and the need for additional thought and administrative effort. At a certain level, professional expertise will be needed. But clearly the advantages outweigh the costs in many cases. Companies large and small eventually use databases to store and organize data. At some point, you may be fortunate enough to be one of them.