RTC Forums
November 24, 2024, 10:56:35 PM
Welcome,
Guest
. Please
login
or
register
.
1 Hour
1 Day
1 Week
1 Month
Forever
Login with username, password and session length
Home
Help
Login
Register
RTC Forums
>
Subscription
>
Support
>
IPC service and gui
Pages: [
1
]
« previous
next »
Print
Author
Topic: IPC service and gui (Read 7466 times)
chmichael
Newbie
Posts: 5
IPC service and gui
«
on:
November 20, 2009, 01:43:56 AM »
Dear Danijel,
Do you have any easy example how to implement an IPC (Inter-process communication) between a service and GUI app without using TCP Lowlevel components ?
Thank you
Logged
D.Tkalcec (RTC)
Administrator
Posts: 1881
Re: IPC service and gui
«
Reply #1 on:
November 20, 2009, 11:28:59 AM »
There are a lot of examples on using RTC remote functions, which is the easiest way you can achieve communication between applications (inter-process, inside LAN or over the Internet).
To get the best performance when both applications are running on the same PC or when all your clients are inside LAN without a Firewall, simply set "useProxy" and "useWinHTTP" properties to FALSE. This way, you will be using TCP/IP over asynchronous WinSock with a thin HTTP layer, which is comparable in performance to using the TCP/IP components directly.
And if you need even faster performance than you could ever get with asynchronous TCP/IP communication, you can use the TRtcMessageClient and TRtcMessageServer components with third-party transports (for example, NexusDB transports) instead of using TRtcHttpClient and TRtcHttpServer components.
Best Regards,
Danijel Tkalcec
Logged
Kevin Powick
RTC Expired
Posts: 87
Re: IPC service and gui
«
Reply #2 on:
November 24, 2009, 11:01:54 PM »
Danijel,
I think he's looking for something outside of TCP/IP, when both the client and the server process are on the same, physical machine.
Named pipes come to mind.
http://en.wikipedia.org/wiki/Named_pipe
Logged
Linux is only free if your time is worthless
D.Tkalcec (RTC)
Administrator
Posts: 1881
Re: IPC service and gui
«
Reply #3 on:
November 24, 2009, 11:06:45 PM »
Thank you. I think you are correct and named pipes are probably the fastest way one can get two applications to communicate with one another when both are running on the same PC. And ... if I am not mistaken, NexusDB components include a named pipes transport, which should work in combination with the RTC SDK when using the rtcMessageClient and rtcMessageServer components.
Best Regards,
Danijel Tkalcec
Logged
chmichael
Newbie
Posts: 5
Re: IPC service and gui
«
Reply #4 on:
November 27, 2009, 08:48:18 AM »
Well, i was looking TCP/IP for LAN IPC.
Maybe Name Pipes are fast but TCP/IP is more reliable ?
Logged
D.Tkalcec (RTC)
Administrator
Posts: 1881
Re: IPC service and gui
«
Reply #5 on:
November 27, 2009, 09:09:44 AM »
For communication between PCs (inside LAN or over the Internet), I would recommend using HTTP/S (works over TCP/IP) because it is reliable and allows you to break the LAN barrier and easily access your Server over the Internet, should that be required.
And if you want to use a different transport based on each clients specific requirements, you can also use the TRtcDualDataServerLink component on the Server to embed more than one transport and make your server-side functionality accessible over more than one communications channel (for example use named pipes for local inter-process communication and HTTP/S for LAN and Internet clients). The most important thing here is to use the standard RTC SDK components, which are based on TRtcDataServer/TRtcDataClient descendant components and using HTTP/S instead of using the low-level TCP/IP or UDP stuff.
Best Regards,
Danijel Tkalcec
Logged
Pages: [
1
]
Print
« previous
next »
Jump to:
Please select a destination:
-----------------------------
Dashboard
-----------------------------
=> General
=> 3rd-Party
=> Quick Start
-----------------------------
Subscription
-----------------------------
=> Support
Loading...