Get Worker Process Isolation in any Application with SimpleIPC
Have a process that keeps crashing? Don't waste too much time before doing what you know for sure will work. An exception can't crash your process if it isn't in your process.
Have a memory leak? Maybe it can be fixed, and maybe it can't. If it can't, there's a way to make it a non-issue..
If you like DCOM/COM+ you'll like SimpleIPC. .NET Remoting is the new way, and SimpleIPC keeps it simple. All of your server code can be scripted. Your client can even be Java or VBA.
It's like ASP programming without a web server. Write your scripts, pass parameters and make your call, and get your return. Cache session variables, set up application pools - it's a set of personal servers that are only accessible from the local machine. You can have worker process isolation in any app.
Send commands to your computer from across the internet. Combine SimpleIPC with the HomeWeb Service and use your home computer like a public web server. Call scripts and access files when you're away from home.
What SimpleIPC is:
SimpleIPC is a set of objects, server processes, and configuration tools which allow you, the software developer, to have some of your application's work performed in an external process on the same machine. You make function calls to objects in the external process as if they were local objects. "Under the covers", you're using .NET Remoting over the IPC (Inter Process Communication) channel, but you don't need to be an expert on .NET Remoting to use SimpleIPC. The platform handles the communications and external process life cycle details for you. SimpleIPC runs on Windows, and the code to be run in the external processes (i.e. IPC servers) must be written in a .NET programming language. However, your client code may be written in a variety of languages, to include Java, VBScript/VBA, and .NET programming languages. In this way, SimpleIPC provides a straightforward interop between Java or COM and .NET.
SimpleIPC is unique because it consolidates most of the tasks a developer needs to perform to accomplish process isolation into one easy-to-use user interface. There is a built-in script editor for authoring .NET server routines in JScript.NET. There are configuration panels for setting the number of IPC servers that can be run on the machine, how many client connections each will accept, etc. There is even a built-in test facility to allow the developer to simulate a load on a set of IPC servers to help assess the server code's performance and scalability.
Supported Operating Systems:
Windows Server 2003
.NET Framework 2.0
"highly useful for resource-intensive applications"
Need help getting started? Please call 866-991-5991 or email Technical Support for assistance.
Need more instructions? Wondering what else you can do with SimpleIPC? Browse our documentation library for step-by-step instructions & sample code.
When to use SimpleIPC:
You might consider using SimpleIPC under the following circumstances:
You have some code which is useful, but which has the potential to throw unhandled exceptions and crash your application process. You can run this code via SimpleIPC. If there is a process crash, it will be one of the expendable external processes, rather than your application process. Your application can just repeat the call against a different external process and continue on. There is no need for your end users to be impacted.
You have some code which is useful, but which leaks memory. You can run this code via SimpleIPC and configure the external processes to recycle frequently. In this way, you can keep your application's memory consumption under control without sacrificing functionality.
You need an expeditious way to perform one of several common programming tasks, such as invoking .NET code from a Java application, running a subset of your application's operations under a different Windows identity, or limiting concurrent access to shared resources in a multi-user environment.
Video: IIS Crashes and Crash-Proofing
Download the SimpleIPC Quick Facts to browse a more complete description of the features and benefits of the product.
How to use SimpleIPC:
To use SimpleIPC, you configure the performance parameters of your external processes (how long they run before exiting, how many concurrent sessions to service, etc.). Then you write your server code to be hosted by the external processes. The server code must be written in a .NET programming language. You can use SimpleIPC's built-in script editor to write your server code in JScript.NET, or you can write your code in any .NET programming language via VS.NET. Lastly, you write client code to call into your server code from your client application. Your client code may be written in any of several programming languages.
What is involved in writing code for use with SimpleIPC:
The following practical exercises provide instructions and sample code for writing server routines to be run within your external processes. These should give you a good understanding of the techniques and level of effort involved.
The following sample client applications demonstrate the use of the most common API calls. These should give you a good understanding of the approach to incorporating the remote procedure calls into your client application. The following language-specific samples are available. VB.NET Client Sample Java Client Sample VBScript Client Sample
The cost of SimpleIPC is $299 (USD) per machine. Please contact email@example.com for volume licensing or OEM arrangements. SimpleIPC Express is the free version of the SimpleIPC product. It provides the majority of the capabilities in the full SimpleIPC installation and is suitable for many implementation scenarios.