欢迎光临
我们一直在努力

PostgreSQL pgsocket: Extension for Simple TCP/IP Socket Client

背景

PostgreSQL 插件,向外部tpc/ip socket服务发生字节流。

pgsocket is an extension for PostgreSQL server to send bytes to remote TCP/IP socket server.

For the first version only single function provided for one way data send in bytearray.

This extension is compiled in Linux against PostgreSQL version 10.

Download source code from

 

https://github.com/AbdulYadi/pgsocket

. Build in Linux as usual:

$ USE_PGXS=1 make clean  
$ USE_PGXS=1 make  
$ USE_PGXS=1 make install

On successful compilation, install this extension in PostgreSQL environment

$ create extension pgsocket;

Let us send bytes to –for example– host with IP address nnn.nnn.nnn.nnn, port 9090, send time out 30 seconds, messages 'Hello'

$ select pgsocketsend('nnn.nnn.nnn.nnn', 9090, 30, (E'\\x' || encode('Hello', 'hex'))::bytea);

Or using address host name instead of IP address

$ select pgsocketsend('thesocketserver', 9090, 30, (E'\\x' || encode('Hello', 'hex'))::bytea);

Now, sending text from a table to remote TCP/IP socket server is easy. Assuming there is a table words:

id    txt  
——————–  
1    Life is easy  
2    with PostgreSQL

just do:

$ select pgsocketsend('thesocketserver', 9090, 30, (E'\\x' || encode(t.txt, 'hex'))::bytea)  
  
  
from words t WHERE t.id = 1;

参考

https://abdulyadi.wordpress.com/2018/09/11/pgsocket-extension-for-simple-socket-client/

https://github.com/AbdulYadi/pgsocket

https://abdulyadi.wordpress.com/2015/11/14/extension-for-qr-code-bitmap/

https://abdulyadi.wordpress.com/2012/03/03/consume-soap-web-service-from-postgresql-user-defined-function-in-c/

原文地址:https://github.com/digoal/blog/blob/master/201809/20180913_03.md

赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。