Labels

Delphi (23) windows (6) XE3 (5) Delphi 2007 (4) Rad Studio (4) XE (4) XE8 (4) Service (3) windows service application (3) Error (2) IIS (2) Manual (2) SQL (2) TTouchKeyBoard (2) Uninstall (2) XE7 (2) application (2) attach to process (2) batch file (2) cmd (2) date (2) delphi 2009 (2) delphi xe (2) excel (2) no-cache (2) .NET Globalization (1) .res (1) Application Events (1) AutoFit Height (1) AutoFit width (1) Borland.Common.Targets (1) Borland.Delphi.Targets (1) Cache-control (1) Clearing cache on IIS (1) Configure (1) DFM (1) DPR (1) DYNAMIC FORM IN DELPHI (1) Database (1) DateTime Issue (1) DateTime issue in IIS 7 (1) Delete cache (1) Delphi XE3 (1) Disable application from taskbar (1) Duplicate (1) Error 1053: (1) Events (1) Excel columns (1) Excel row (1) Export Excel (1) FD (1) FDDriversFireDac database connection error. (1) File (1) Firedac (1) Format Excel using delphi (1) GNU gettext (1) GPEDIT (1) Get ip address using Delphi (1) GetIPAddress (1) HTTP header (1) Hide Application button from Taskbar (1) Hide Application from TaskBar (1) Hide recycle Bin (1) Hint (1) Hint balloon (1) ICON GROUP (1) ID MAINICON (1) IIS Culture (1) IIS Date issue (1) IIS PHP (1) IIS Set DateTime Format (1) ISAPI extensions (1) Icon (1) Install (1) Install PHP (1) Joomla freezes while installing (1) Joomla taking more time to install (1) MAINICON (1) MYSQL (1) Modify (1) ORA-12516 (1) ORA-12520 (1) ORA-12520: TNS:listener could not find available handler for requested type of server (1) Oracle (1) Out of memory error in TstringList delphi (1) PHP (1) Parameterized queries (1) Php extension (1) Process Name Not Visible (1) Promote Websites (1) Query (1) Remove (1) Remove IIS Temp files (1) Remove Recycle Bin (1) Repair (1) Resource (1) Run php on IIS (1) SQl Injection (1) SQlText (1) Safe (1) Show recycle Bin (1) Simple Ways to Promote Blogs (1) Sortdate format (1) StringList limitations (1) System account setting (1) System locale in IIS (1) TNS listener could not find available handler with matching protocol stack (1) TStrings (1) TTrayIcon (1) TaskBar (1) Tform (1) The service did not respond in a timely fashion (1) TranslateComponent (1) Tray (1) Tray Application (1) TstringList (1) Type 14 (1) UnInstallation (1) Website (1) WinCache (1) Windows Application (1) XE2 (1) batch (1) c++ (1) c++Builder (1) cache (1) cache clear (1) cachecontrol (1) call (1) cannot load library (1) cd (1) cell format (1) clear (1) client (1) close cmd window (1) close program started by cmd (1) cmd.exe (1) command prompt (1) configure a php website on IIS (1) convert delphi color to html color (1) create (1) creating table (1) current (1) data format (1) dbx (1) dbx framework (1) dbx vs vcl (1) debug (1) debugger (1) debugging (1) debugging service application (1) delete IIS temp (1) delete temporary files on IIS (1) delphi color to html color (1) delphi debugger (1) delphi windows service debug (1) directory (1) disable cache (1) dll (1) duplicate resource (1) dynamic form (1) echo off (1) excel cells with mso-number-format (1) exit (1) exit /B (1) form (1) get directory (1) getip (1) group policy (1) hexa color (1) hexa color code (1) hide application (1) hostname (1) how to disable cache in indy (1) html (1) html color (1) html to excel (1) idhttp (1) indy (1) indy not clearing cache (1) inno (1) inno script (1) inno scripts (1) inno setup (1) instant (1) instant client (1) internalize (1) invalid pointer operation (1) invalid pointer operation error in inno (1) invalid pointer operation error in inno setup (1) ip (1) ip address (1) joomla (1) joomla 3 (1) joomla 3 not installing (1) joomla freezes (1) joomla hangs (1) joomla instalation (1) joomla not installing (1) keyboard (1) keystroke (1) libmysql.dll (1) libmysqld.dll (1) localization (1) localize (1) minimize (1) mso-number-format (1) numeric (1) parameters (1) params (1) path (1) pc ip address (1) php in Windows (1) php on IIS (1) prevent against SQL Injection (1) procedure (1) procedure call (1) process (1) program (1) pskill (1) remove cache on IIS (1) resource not found error (1) run as administrator (1) send (1) shortdate format (1) sortdate (1) sqlquery (1) styling excel (1) taskkill (1) tcolor to hexacolor (1) text (1) touchkeyboard (1) tranbslate (1) translate (1) translate component captions (1) unable to load project (1) unc (1) vcl (1) windows 10 (1) windows xp (1) winsock (1) without installing standard oracle (1)

Monday, 16 February 2015

IPC Mechanism

Named Pipes

Named pipes provide connection-oriented messaging by using pipes. Connection-oriented messaging requires that the communication occur over a virtual circuit and maintain reliable and sequential data transfer. A pipe is a portion of memory that can be used by one process to pass information to another. A pipe connects two processes so that the output of one can be used as input to the other. This technique is used for passing data between client and server.
A named pipe is a named, one-way or duplex pipe for communication between the pipe server and one or more pipe clients. All instances of a named pipe share the same pipe name, but each instance has its own buffers and handles, and provides a separate conduit for client/server communication.

In a fast local area network (LAN) environment, Transmission Control Protocol/Internet Protocol (TCP/IP) Sockets and Named Pipes clients are comparable in terms of performance. However, the performance difference between the TCP/IP Sockets and Named Pipes clients becomes apparent with slower networks, such as across wide area networks (WANs) or dial-up networks. This is because of the different ways the interprocess communication (IPC) mechanisms communicate between peers.
For named pipes, network communications are typically more interactive. A peer does not send data until another peer asks for it using a read command. A network read typically involves a series of peek named pipes messages before it begins to read the data. These can be very costly in a slow network and cause excessive network traffic, which in turn affects other network clients.


Mailslots

Mailslots are a connectionless, high-level interprocess communication mechanism between networked computers, often used to locate and provide notification of services and computers. That is, mailslots are a broadcast service used for message delivery. The delivery of a message is not guaranteed, although the delivery rate on most networks is high.

A mailslot is a mechanism for one-way interprocess communications (IPC). Applications can store messages in a mailslot. The owner of the mailslot can retrieve messages that are stored there. These messages are typically sent over a network to either a specified computer or to all computers in a specified domain.

Mailslots function as a server-client interface. A server can create a Mailslot, and a client can write to it by name. 
Only the server can read the mailslot, as such mailslots represent a one-way communication mechanism. A server-client interface could consist of two processes communicating locally or across a network. Mailslots operate over the RPC protocol and work across all computers in the same network domain. Mailslots offer no confirmation that a message has been received. Mailslots are generally a good choice when one client process must broadcast a message to multiple server processes.

No comments:

Post a Comment