Last month we discussed how to network your Cirris testers together to centrally manage all of your data and testing needs. This month we continue on the topic focusing on the "Server" piece of the networking puzzle.
A server in its most simple form is just a PC running software that is responsible for coordinating some form of communication between nodes on a network. There are four requirements for a server:
Types of Servers
Example drawing of a Database server
Real time data collection & reporting can provide helpful information for production evaluations.
Why do I want Easy-Wire on a Server?
Cirris Easy-Wire software has the ability to be networked to a server. We do this by storing the data needed to run all of your test equipment in one central file called easywire.fdb. Using one file allows any Easywire client station to centrally manage the test programs, security settings /logins, and data collection/reports from any computer in the building with EasyWire installed on it. The Cirris Server is responsible for collecting all of this data and handing it out to all of the stations who request it. The Cirris server software is always listening for requests from the Easy-Wire stations. When it receives a request, it is processed by an application called Firebird and the response is then generated and given back to the end user or station. If the request is for a specific set of test data, then Firebird will retrieve the data and send it back for display at the requesting station. If the request is to save a test program, the server will gather the test data and place it in the proper locations within the database file.
Using a database server is a great way to share data between machines, but a central database can also pose some potential liabilities that must be understood as you design your test solution. As more and more stations are connected to the server, the amount of data that is passed back and forth between the stations and the server can quickly grow. Requests for data from every station need to be processed by the single Firebird server running on one machine, so that one machine must have the necessary "horsepower" to handle all of these requests. The operating system, disk access, and the data speed that your network is capable of all come into play. If you are connecting one or two Cirris test stations, the server machine may just be a desktop PC capable of storing a couple of megabytes of data. If your needs grow to twenty or thirty stations this solution will soon become overworked and unable to keep up with the demand of all thirty stations requesting data at the same time.
For example, a test program that is storing measured values on a 500 point device-under-test can be expected to send between 3000 and 5000 bytes of data for each completed test. If this is happening on each station in a 25 station network, surges of network traffic could reach 125,000 bytes of data at a time. To process this amount of data the server hardware should be optimized for serving data. The computer hardware needs to be capable of these loads. It should have disk storage that can handle files that are several hundred megabytes in size and have quick disk access times. The operating system also needs to be designed for this type of work. We recommend Microsoft Windows 2003 server or newer. You may also benefit from upgrading from PC hardware to server hardware which is designed for continual use under heavy loads.
The connections between the test stations on the network will also need to be considered. If your network is connected with cables that are only capable of 10 megabit data speeds, it is probably not going to be able to handle these data loads without long delays (IE end user frustrations). Perhaps you have noticed long pauses when you are running Easy-Wire during a busy production day. This may be caused by an overload somewhere in your network setup. It may be the server hardware, the operating system, or it may be the connections between the stations on the network.
As your testing needs continue to grow, it may become necessary to break your Easy-Wire network into smaller groups. For example all of your build stations could be placed in one group, while your final test stations can be placed in another. It may make sense to divide things by product lines or customers. By breaking things up into smaller groups you can spread the network load issues discussed above into manageable groups giving you the benefits of the network while alleviating some of the scaling issues.
At Cirris we are always looking to make our testing solutions faster, more efficient, and scalable to better serve your testing needs. We also want to improve data backup and maintain the integrity of very large databases. It is our goal to use technology to make your job easier, and your data safer.