Building distributed applications can be a very complex and risky venture. For such difficult problems, TIBCO SmartSockets offers maximum power and flexibility together with superior ease of use. The TIBCO SmartSockets programming model has a number of important benefits, described in the following sections.
TIBCO SmartSockets speeds development through a robust API, reusable C++ classes, pre-packaged message types, a simple-to-use command language, and options for configuring the application. An easy-to-understand multi-process programming model eliminates the need for network programming skills. A single call to a TIBCO SmartSockets function is the equivalent of many lines of complex network programming. As a result, the cost and risk of developing a distributed application are significantly reduced.
TIBCO SmartSockets grows with you as your application grows in terms of:
Because the RTclient and RTserver processes can be distributed across a network within the TIBCO SmartSockets programming model, your application can make maximum use of existing computer resources while offering virtually unlimited expansion capability. Applications can be built on a single machine and then deployed as needed over a network, without changing even a single line of source code.
TIBCO SmartSockets allows you to keep the investment in software that you have already developed. By adding calls to the TIBCO SmartSockets API within already existing software, existing code becomes part of your distributed application, communicating with other processes in the application.
Applications built with TIBCO SmartSockets are guaranteed to be portable across different platforms. For example, an entire application or parts of an application can be moved easily from a Intel x86 to a Sun SPARCstation. Because TIBCO SmartSockets offers a portable API and classes, source code is immediately portable across heterogeneous platforms. The IPC portion of your distributed application, often the most platform dependent, need only be written once.
The TIBCO SmartSockets programming model and capabilities are preserved even when processes are spread over a network of differing computer types, such as Sun, DEC VAX, IBM, and so on. TIBCO SmartSockets even transparently handles the problem of translating numbers and text when they are sent from one type of platform to another. For example, floating point numbers on a DEC VAX computer use a different internal representation than those on a Sun SPARC.
The TIBCO SmartSockets programming model allows the processes in a distributed application to appear as though they are local to one another: client-to-server or peer-to-peer. The processes interact as if there is not even a network present.
When building program-to-program communication with TIBCO SmartSockets, you do not need to think about whether the programs are running on the same machine or on different machines. As your application grows, you can position and move your programs among UNIX, OpenVMS, and the various Windows (98, NT, and 2000) without worry.
TIBCO SmartSockets reduces software maintenance costs by eliminating the need for network programming skills. TIBCO SmartSockets allows a software engineer to write distributed applications without going through the tedious and expensive process of writing network software. Furthermore, as updates of the operating system occur, TIBCO SmartSockets is also updated to mask those operating system changes from you. Finally, as described earlier, moving all or part of your application to another platform can be done transparently with TIBCO SmartSockets.
TIBCO SmartSockets offers a number of capabilities to greatly increase the availability of your distributed application. TIBCO SmartSockets offers easily configurable options for responding to network failures, hot failover to parallel processes when a process or machine goes down, guaranteed message delivery, error callbacks when an exception occurs, and sophisticated real-time monitoring tools to keep an eye on what is happening. All these sophisticated features allow you to build applications that are robust and fault tolerant.
TIBCO SmartSockets means your computers spend less time waiting and more time working. It also gives you the flexibility to match the technology to the business need. For example, you may have specific message types that cause control action to be taken by the TIBCO SmartSockets RTclients. Messages associated with less critical needs can still be sent and added to the queue, to be worked on when the higher-priority messages have been taken care of.
In addition to being a powerful development aid for visually monitoring, debugging, and testing your distributed application, RTmon can also be a valuable tool for the system administrator. Through RTmon, the system administrator can, from any display in the network, see a complete graphical representation of a TIBCO SmartSockets project that is updated in real time, such as a process joins the project. Through an easy-to-use point-and-click interface, the administrator can request information (how many messages are buffered in a program’s message queue) or poll for information (how much CPU/memory a program is using) manually or on a regular basis. The system administrator can even send messages, through a point-and-click interface, to any process in the application to perform actions such as stopping a process.
TIBCO SmartSockets™ Tutorial Software Release 6.8, July 2006 Copyright © TIBCO Software Inc. All rights reserved www.tibco.com |