Friday, August 27, 2010

BalanceNG - The Software Load-Balancer

BalanceNG is a modern software IP load balancing solution. It is small, fast, and easy to use and setup. It offers session persistence, different distribution methods (Round Robin, Random, Weighted Random, Least Session, Least Bandwidth, Hash, Agent, and Randomized Agent) and a customizable UDP health check agent in source code. BalanceNG - The Software Load Balancer">BalanceNG comes with a Free Basic License: A basic load balancer setup with one virtual server and two targets may be evaluated as long as needed at no charge.

BalanceNG - The Software Load-Balancer

Load balancing software uses multiple hardware devices to spread work around and thereby speed performance. While Linux Virtual Server may be the best-known option for Linux networks, another alternative, BalanceNG, a simple, lightweight utility, may be a better choice for some organizations.
BalanceNG - The Software Load Balancer">BalanceNG (Balance Next Generation) is user-mode load balancing software with its own network stacks that runs over Linux and Solaris. All the work is done by the software; the operating system is used only for accessing the physical network interfaces and TCP/IP functions. It supports many different load balancing methods, including round robin, random, hash, and least resource. The load-balancing service takes around 400KB of disk space and the agent takes around 100KB. You need to run the balancing service on a machine that will act as your virtual server, and a balancing agent on all nodes that are part of the cluster, which are called targets in BalanceNG - The Software Load Balancer">BalanceNG parlance. The software generates minimal network (UDP) traffic. The software can provide load balancing not only for Web servers, but almost any kind of service, including HTTP, FTP, SQL, POP3, IMAP, and SMTP.

BalanceNG is not open source. You can download and use the software for free on one virtual server and two targets, which is enough for a small or home business. If you need more, you can upgrade the basic license so that you can have up to 512 virtual servers and up to 1,024 target servers.

Wednesday, February 10, 2010

Tips to open LTD company in UK

Most people attempting DIY company formation struggle with the company’s Memorandum of Association and the company’s Articles of Association. These documents are very important - they describe the company’s objects and also deal with the way in which the company’s internal affairs are regulated. For example, the Articles of Association deal with such things as the transfer of shares, the conduct of directors’ and members’ meetings, the declaration of dividends and the directors’ indemnity from company assets.

The format of the Memorandum of Association and the Articles of Association may be found in The Companies (Tables A to F) Regulations 1985. This legislation contains a ‘model’ example of a Memorandum of Association and Articles of Association. A copy of these regulations may be obtained from The Stationery Office Limited (the privatized publishing arm of Her Majesty’s Stationery Office). The Stationery Office Limited has an office at Nine Elms, London and at the time of writing could be contacted on ph. 0870 600 5522. It has a website at www.tso.co.uk. (In general, statutory enactments going back to 1989 may be obtained free of charge from www.hmso.gov.uk. Unfortunately, The Companies (Tables A to F) Regulations 1985 are not available from that source as they were passed in 1985.)

But even armed with The Companies (Tables A to F) Regulations 1985, the process of forming a company has complications. The ‘model’ set of Articles of Association (known as ‘Table A’) found in these regulations has undergone little change since it appeared in earlier legislation in 1948 and is unsuitable in many respects for modern companies. (For example, the meeting procedures are cumbersome, the provisions for compulsory rotation of directors are usually unsuitable, the provisions requiring directors to keep minutes are usually considered to be drafted in a manner which is too onerous on directors and there are no satisfactory pre-emption rights in relation to shares. Many other examples could be given.) Although it is possible to adopt Table A in full (e.g. by writing a letter to Companies House at the time of lodging the other documents) thereby avoiding the need to prepare any Articles of Association, this is rarely a good idea in practice.

Also The Companies (Tables A to F) Regulations 1985 give no guidance as to how the Articles of Association should be signed. In practice, they are usually signed by the subscribers (initial members / shareholders) in the presence of a witness who signs also.

There are more hurdles after lodging the correct documents at Companies House. Various sections of the Companies Act 1985 require limited companies (and indeed other types of companies) to keep proper registers - e.g. section 352 (Register of Members), section 288 (Register of Directors and Secretaries) and section 407 (Register of Charges). If these registers are not kept, the company and every director and company secretary commits an offence and is liable to a fine. The registers are not in a specific format prescribed by legislation. Rather, each company register may generally be set out in whatever format is convenient, so long as all of the information required by the legislation is included.

In addition to the company registers, a limited liability company will usually wish to issue share certificates to its initial members / shareholders shortly after it is formed. Again, share certificates are not in a specific format prescribed by legislation.

So in summary, the process of limited company formation (with all of the legally required registers etc.) can be quite difficult and time-consuming, even after carrying out a good deal of research into primary materials such as the Companies Act 1985, The Companies (Tables A to F) Regulations 1985 and the requisite Companies House forms as prescribed by legislation.

So by watching the video demo, one can easily understand the procedures, acts and all the information required to start a LTD company in UK.For this video plz visit.

Friday, January 8, 2010

Installing PHP, Mysql and Apache to start working with PHP

Installing PHP

First, extract the PHP package ( php-4.3.10-Win32.zip ). I extracted the package in the directory where Apache was installed ( C:\Program Files\Apache Group\Apache2 ). Change the new created directory name to php ( just to make it shorter ). Then copy the file php.ini-dist in PHP directory to you windows directory ( C:\Windows or C:\Winnt depends on where you installed Windows ) and rename the file to php.ini. This is the PHP configuration file and we'll take a look what's in it later on.

Next, move the php4ts.dll file from the newly created php directory into the sapi subdirectory. Quoting from php installation file you can also place php4ts.dll in other places such as :

* In the directory where apache.exe is start from ( C:\Program Files\Apache Group\Apache2 \bin)
* In your %SYSTEMROOT%\System32, %SYSTEMROOT%\system and %SYSTEMROOT% directory.
Note: %SYSTEMROOT%\System32 only applies to Windows NT/2000/XP)
* In your whole %PATH%


Modifying Apache Configuration

Apache doesn't know that you just install PHP. We need to tell Apache about PHP and where to find it. Open the Apache configuration file in C:\Program Files\Apache Group\Apache2\conf\httpd.conf and add the following three lines :

LoadModule php4_module php/sapi/php4apache2.dll
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

The first line tells Apache where to load the dll required to execute PHP and the second line means that every file that ends with .php should be processed as a PHP file. You can actually change it to anything you want like .html or even .asp! The third line is added so that you can view your php file source code in the browser window. You will see what this mean when you browse this tutorial.

Now restart Apache for the changes to take effect ( Start > Programs > Apache HTTP Server 2.0.50 > Control Apache Server > Restart ) . To check if everything is okay create a new file, name it as test.php and put it in document root directory ( C:\Program Files\Apache Group\Apache2\htdocs ). The content of this file is shown below.

phpinfo();
?>

phpinfo() is the infamous PHP function which will spit out all kinds of stuff about PHP and your server configuration. Type http://localhost/test.php on your browser's address bar and if everything works well you should see something like this :



Installing MySQL

First extract the package ( mysql-4.0.18-win.zip ) to a temporary directory, then run setup.exe. Keep clicking the next button to complete the installation. By default MySQL will be installed in C:\mysql.

Open a DOS window and go to C:\mysql\bin and then run mysqld-nt --console , you should see some messages like these :
C:\mysql\bin>mysqld-nt --console
InnoDB: The first specified data file .\ibdata1 did not exist:
InnoDB: a new database to be created!
040807 10:54:09 InnoDB: Setting file .\ibdata1 size to 10 MB
InnoDB: Database physically writes the file full: wait...
040807 10:54:11 InnoDB: Log file .\ib_logfile0 did not exist: new to be created

InnoDB: Setting log file .\ib_logfile0 size to 5 MB
InnoDB: Database physically writes the file full: wait...
040807 10:54:12 InnoDB: Log file .\ib_logfile1 did not exist: new to be created

InnoDB: Setting log file .\ib_logfile1 size to 5 MB
InnoDB: Database physically writes the file full: wait...
InnoDB: Doublewrite buffer not found: creating new
InnoDB: Doublewrite buffer created
InnoDB: Creating foreign key constraint system tables
InnoDB: Foreign key constraint system tables created
040807 10:54:31 InnoDB: Started
mysqld-nt: ready for connections.
Version: '4.0.18-nt' socket: '' port: 3306

Now open another DOS window and type C:\mysql\bin\mysql

if your installation is successful you will see the MySQL client running :

C:\mysql\bin>mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1 to server version: 4.0.18-nt

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql>

Type exit on the mysql> prompt to quit the MySQL client.

Now let's install MySQL as a Service. The process is simple just type mysqld-nt --install to install the service and net start mysql to run the service. But make sure to shutdown the server first using mysqladmin -u root shutdown

C:\mysql\bin>mysqladmin -u root shutdown

C:\mysql\bin>mysqld-nt --install
Service successfully installed.

C:\mysql\bin>net start mysql

The MySQL service was started successfully.


C:\mysql\bin>mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1 to server version: 4.0.18-nt

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql>


Modifying PHP Configuration File ( php.ini )

PHP stores all kinds of configuration in a file called php.ini.You can find this file in the directory where you installed PHP. Sometimes you will need to modify this file for example to use a PHP extension. I won't explain each and every configuration available just the ones that often need modification or special attention.

Some of the configurations are :

1. register_globals
2. error_reporting and display_errors
3. extension and extension_path
4. session.save_path
5. max_execution_time

register_globals

Before PHP 4.2.0 the default value for this configuration is On and after 4.2.0 the default value is Off. The reason for this change is because it is so easy to write insecure code with this value on. So make sure that this value is Off in php.ini.

error_reporting and display_errors

Set the value to error_reporting = E_ALL during development but after production set the value to error_reporting = E_NONE .

The reason to use E_ALL during development is so you can catch most of the nasty bugs in your code. PHP will complain just about any errors you make and spit out all kinds of warning ( for example if you're trying to use an uninitialized variable ).

However, after production you should change the value to E_NONE so PHP will keep quiet even if there's an error in your code. This way the user won't have to see all kinds of PHP error message when running the script.

One important thing to note is that you will also need to set the value of display_erros to On. Even if you set error_reporting = E_ALL you will not get any error message ( no matter how buggy our script is ) unless display_errors is set to On.

extension and extension_path

PHP4 comes with about 51 extensions such as GD library ( for graphics creation and manipulation ), CURL, PostgreSQL support etc. These extensions are not turned on automatically. If you need to use the extension, first you need to specify the location of the extensions and then uncomment the extension you want.

The value of extension_path must be set to the directory where the extension is installed which is PHP_INSTALL_DIR/extensions, with PHP_INSTALL_DIR is the directory where you install PHP. For example I installed PHP in C:\Program Files\Apache Group\Apache2\php so the extensions path is :

extension_path = C:/Program Files/Apache Group/Apache2/php/extensions/

Don't forget to add that last slash or it won't work

After specifying the extension_path you will need to uncomment the extension you want to use. In php.ini a comment is started using a semicolon ( . As an example if you want to use GD library then you must remove the semicolon at the beginning of ;extension=php_gd2.dll to extension=php_gd2.dll

session.save_path

This configuration tells PHP where to save the session data. You will need to set this value to an existing directory or you will not be able to use session. In Windows you can set this value as session.save_path = c:/windows/temp/

max_execution_time

The default value for max_execution_time is 30 ( seconds ). But for some scripts 30 seconds is just not enough to complete it's task. For example a database backup script may need more time to save a huge database.

If you think your script will need extra time to finish the job you can set this to a higher value. For example to set the maximun script execution time to 15 minutes ( 900 seconds ) you can modify the configuration as max_execution_time = 900

PHP have a convenient function to modify PHP configuration in runtime, ini_set(). Setting PHP configuration using this function will not make the effect permanent. It last only until the script ends.

That's it, now you have Apache, PHP and MySQL installed and running smoothly.