A practical Use Of Open Source Code Softwares
- Date: 2007-06-07 - Word Count: 777
Share This!
As we started the project of our web site, we knew that the proprietary software costs would be too high for our financial resources. Our only option then was to make use of Open Source Code softwares.
However, within the Open Source Code there are lots of softwares to choose from, and it´s up to the system analyst/programmer to pick the ones that best suit the project goals.
In our case, we picked Linux as our operating system. However we faced a big question: Which Linux distribution ? There are dozens of linux distributions, each one with specific advantages, sometimes with or without paid services.
We chose linux Slackware because we thought that it would suit better our needs, in terms of stability and reliability. Slackware is a conservative distribution, meaning that it only offers in its distribution package kernel versions and third party libraries, once it´s been proved to be stable and reliable. As a result, Slackware is one the most stable Linux operating system on the market. If the user wishes the most recent Linux kernel and libraries, we recommend to look for a different distribution.
Another reason for us picking Slackware, was because of its text interface, which at the beginning may become a bit difficult, in the long run however it offers a better understanding of the Linux environment. This way most of Slackware configurations are done thru text scripts.
Once it was set the operating system, we picked Apache as our web server. Apache is one of the most popular web server in the internet. For server programming language, we chose PHP. Also, a very popular programming language. Our experience with Apache/PHP proves that this setup is very reliable, working extremely well in our production environment. For workstation programming language, we chose javascript, which besides of having a simple syntax, it offers lots of resources.
Apache web server is really a complete web server. Also, it can become very complex with many configuration setups.
For our database, we picked Postgresql. This database has been made available to the public for more than 15 years, and besides of being well debugged, it offers so many resources that it has become one of the best database options from Open Source Code softwares. Extremely reliable, Postgresql has reported cases where there have been databases in production with over 4 terabytes. Besides all of that, Postresql is not the most popular Open Source Code database. A matter of marketing ? Probably.
As for the programming language PHP, we had to use an object oriented application structure. There are many PHP application structures being offered with Open Source Code license. Object oriented application is very important, because it makes programming very easy and scalable up to the point where the system may grow without many problems. Also, it helps to keep PHP code separated from HTML, with the help of some specific libraries, such as Smarty. We make use of Smarty library and we believe that it is a very important resource, which can even make web pages faster thru the use of its cache functions.
Also a very important set of libraries worth mentioning for PHP systems, is the PEAR libraries. In PEAR web site, among the many libraries being offered, there are the database interface DB and the MAIL_QUEUE, which sends emails thru the use of database.
As we came to the end of our project, we had to use some sort of real time database replication. For that we chose the DRBD and Heartbeat libraries. The use of database replication is very important and should not be postponed. Just after 3 months our system got into production, our server hard disk became bad. Thru the use of DRBD/Heartbeat we were able to put the system back into production within seconds, without loosing any data. DRBD/Heartbeat replication is done thru the use of a lan network between the server and slave nodes.
Our project also makes use of ImageMagick (enlarge and reduce images), Iptables (firewall), Tsearch2(text search in portgresql) and Mon (linux monitoring tasks).
Also a very important library worth mentioning is the pseudo APC compiler for PHP. Speed is always a critical factor for internet sites.
Our web site is already in production and based upon our experience we can say that the Open Source Code softwares we picked, proved to be extremely reliable and stable. Open Source Code softwares can certainly be an excellent option for developing web sites.
This article is under GNU FDL license and can be distributed without any previous authorization from the author. However the author´s name and all the URL´s (links) mentioned in the article and biography must be kept.
However, within the Open Source Code there are lots of softwares to choose from, and it´s up to the system analyst/programmer to pick the ones that best suit the project goals.
In our case, we picked Linux as our operating system. However we faced a big question: Which Linux distribution ? There are dozens of linux distributions, each one with specific advantages, sometimes with or without paid services.
We chose linux Slackware because we thought that it would suit better our needs, in terms of stability and reliability. Slackware is a conservative distribution, meaning that it only offers in its distribution package kernel versions and third party libraries, once it´s been proved to be stable and reliable. As a result, Slackware is one the most stable Linux operating system on the market. If the user wishes the most recent Linux kernel and libraries, we recommend to look for a different distribution.
Another reason for us picking Slackware, was because of its text interface, which at the beginning may become a bit difficult, in the long run however it offers a better understanding of the Linux environment. This way most of Slackware configurations are done thru text scripts.
Once it was set the operating system, we picked Apache as our web server. Apache is one of the most popular web server in the internet. For server programming language, we chose PHP. Also, a very popular programming language. Our experience with Apache/PHP proves that this setup is very reliable, working extremely well in our production environment. For workstation programming language, we chose javascript, which besides of having a simple syntax, it offers lots of resources.
Apache web server is really a complete web server. Also, it can become very complex with many configuration setups.
For our database, we picked Postgresql. This database has been made available to the public for more than 15 years, and besides of being well debugged, it offers so many resources that it has become one of the best database options from Open Source Code softwares. Extremely reliable, Postgresql has reported cases where there have been databases in production with over 4 terabytes. Besides all of that, Postresql is not the most popular Open Source Code database. A matter of marketing ? Probably.
As for the programming language PHP, we had to use an object oriented application structure. There are many PHP application structures being offered with Open Source Code license. Object oriented application is very important, because it makes programming very easy and scalable up to the point where the system may grow without many problems. Also, it helps to keep PHP code separated from HTML, with the help of some specific libraries, such as Smarty. We make use of Smarty library and we believe that it is a very important resource, which can even make web pages faster thru the use of its cache functions.
Also a very important set of libraries worth mentioning for PHP systems, is the PEAR libraries. In PEAR web site, among the many libraries being offered, there are the database interface DB and the MAIL_QUEUE, which sends emails thru the use of database.
As we came to the end of our project, we had to use some sort of real time database replication. For that we chose the DRBD and Heartbeat libraries. The use of database replication is very important and should not be postponed. Just after 3 months our system got into production, our server hard disk became bad. Thru the use of DRBD/Heartbeat we were able to put the system back into production within seconds, without loosing any data. DRBD/Heartbeat replication is done thru the use of a lan network between the server and slave nodes.
Our project also makes use of ImageMagick (enlarge and reduce images), Iptables (firewall), Tsearch2(text search in portgresql) and Mon (linux monitoring tasks).
Also a very important library worth mentioning is the pseudo APC compiler for PHP. Speed is always a critical factor for internet sites.
Our web site is already in production and based upon our experience we can say that the Open Source Code softwares we picked, proved to be extremely reliable and stable. Open Source Code softwares can certainly be an excellent option for developing web sites.
This article is under GNU FDL license and can be distributed without any previous authorization from the author. However the author´s name and all the URL´s (links) mentioned in the article and biography must be kept.
Related Tags: web design, web site development, linux, php, apache, slackware
This article can also be accessed in portuguese language from the News Article section of page PoloMercantil
Roberto Sedycias has a bachelor degree in Business Administration and over 20 years experience in systems analysis and computer programming. Currently working as IT consultant for www.PoloMercantil.com.br Your Article Search Directory : Find in Articles
Recent articles in this category:
- Improper Way Of Marketing Reflects Poorly On A Company.
New business, product or service everything requires visibility, awareness in order to come into the - Replacing Paper Prints With Online Versions
Nowadays saving out on resources and being additionally informative are both aspects that are in. In - Stop Smoking Effectively
If I told you of a way that you could stop smoking harmful tobacco would you believe it? Most people - What Is Runtime Error 182? And How To Fix It
Are you finding an effective way to fix runtime error 182? Do you think fixing runtime error 182 is - Do You Know How To Fix Runtime Error 87 In Minutes?
Are you finding an effective way to fix runtime error 87? Do you think fixing runtime error 87 is to - Knowledge About Avi, Avi Player, Avi Converter On Mac
Knowledge about AVI, AVI player, AVI Converter on MacWhat is an AVI?AVI, an acronym for Audio Video - Buy Your Highly Successful Email Survey Software Today
Email Survey Software- Boost Your Business and Increase ProfitsAn email survey software could be one - Xrm - The Anything Relationship Management Solution
I recently attended the Microsoft Dynamics West Region FY11 Sales Planning Retreat. This year's meet - What Are The Benefits Of Working With Electronic Medical Records
Recording medical information is a vital part of health care services. These records are necessary f - Basic Factor To Make Website Business Oriented
Internet is home for millions of websites. The online business is becoming more and more competitive
Most viewed articles in this category:
- Parental Control Software
Parental control software is software that can help parents protect their children when they are onl - Digital Asset Management Software
Managing and organizing your organization's documents is a critical component to your business's suc - AdobeRGB vs. sRGB
Understanding color spaces I'll try to explain it very simplified, but understandable for everyone - Confessions of a Prankster
I wanted to get a jump on April Fool's Day, partially because of the long, cold winter blues, and pa - Malicious Thoughts About The Spyware Ills Of My PC
Who would think I was capable of such revengeful thoughts about the parties responsible for inflicti - Recover File and Recover Deleted File Tools
Data recovery software is a very effective way of retrieving data from a worn or damaged hard disk d - Life without Windows
Ubuntu, a user-friendly version of Linux, has been running so nicely on my home PC that I decided to - What Benefit Does an Online Software Download Site Offer You?
Are you having a problem that where you find a good softeware when you consider to have a try or wan - Maintaining A Website
There was an era when people were talking about how to create a website using html coding or some ea - Benefits Of Proper Time Tracking
Have you ever written down time when you have started and finished your work? Maybe you have had mul