Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Cosa sono le pipe denominate?

Sia nei sistemi Windows che POSIX, le named pipe forniscono un modo per la comunicazione tra processi tra processi in esecuzione sulla stessa macchina. Quello che ti danno le named pipe è un modo per inviare i tuoi dati senza la penalizzazione delle prestazioni di coinvolgere lo stack di rete.

Proprio come hai un server in ascolto di un indirizzo IP/porta per le richieste in arrivo, un server può anche impostare una pipe denominata che può ascoltare le richieste. In entrambi i casi, il processo client (o la libreria di accesso al DB) deve conoscere l'indirizzo specifico (o il nome della pipe) per inviare la richiesta. Spesso esiste un'impostazione predefinita standard comunemente utilizzata (molto simile alla porta 80 per HTTP, il server SQL utilizza la porta 1433 in TCP/IP; \\.\pipe\sql\query per una named pipe).

Impostando ulteriori named pipe, puoi avere più server DB in esecuzione, ciascuno con i propri listener di richieste.

Il vantaggio delle named pipe è che in genere sono molto più veloci e liberano risorse dello stack di rete.

-- A proposito, nel mondo Windows, puoi anche avere named pipe su macchine remote -- ma in tal caso, la named pipe viene trasportata su TCP/IP, quindi perderai le prestazioni. Usa named pipe per la comunicazione con la macchina locale.