标签: unix-socket

与通过Unix Socket和TCP/IP套接字运行PHP-FPM有什么区别?

有两种运行PHP-FPM的方法.我不知道它在科技方面没有防弹,但这两种方法的优点和缺点是什么?

php sockets tcp unix-socket

16
推荐指数
1
解决办法
8553
查看次数

Java中的UNIX域套接字

我看到Java的这些线程UNIX套接字实现?http://forums.sun.com/thread.jspa?threadID=713266.

第二个链接说Java已经支持UNIX Domain Socket.如果那是真的我需要从Java实现什么类?

从第一个链接开始,它表示Java不支持UNIX Domain Socket.如果需要UNIX域套接字,则必须使用第三方库.

那么,这是什么?

java sockets unix-socket

15
推荐指数
4
解决办法
3万
查看次数

php7.0-fpm.sock位于何处

我有一个带有目录结构的简单项目

我正在为我的drupal站点设置nginx配置,并且对于fastcgi_pass我一直在使用127.0.0.1:9000但是我想使用这个conf中建议的unix套接字:

 # PHP 7 socket location.
   fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
Run Code Online (Sandbox Code Playgroud)

但我找不到 php/php7.0-fpm.sock;

我的centos发行版中有以下路径

/var/run/php-fpm/php-fpm.pid
Run Code Online (Sandbox Code Playgroud)

php nginx unix-socket

15
推荐指数
2
解决办法
3万
查看次数

使用 SQLAlchemy 通过 unix 套接字连接到数据库

我正在尝试使用云函数中的 SQLAlchemy 连接到我的云 SQL 数据库,但我似乎无法计算出正确的连接字符串。

DATABASE_URL=postgres://$DB_USER:$_DB_PWD@/$DB_NAME?unix_socket=/cloudsql/$DB_INSTANCE
Run Code Online (Sandbox Code Playgroud)

这给了我错误:

pyscopg2.ProgrammingError: invalid dns: invalid connection option "unix_socket"
Run Code Online (Sandbox Code Playgroud)

通过 unix socket 连接到 Postgresql 9.6 DB 的正确方法是什么pyscopg2

postgresql sqlalchemy unix-socket google-cloud-sql google-cloud-functions

13
推荐指数
1
解决办法
4004
查看次数

从Ruby中的Unix Socket读取/写入

我正在尝试从Ruby中的UNIX套接字进行连接,读取和写入.它是haproxy使用的stats套接字.

我的代码如下:

require 'socket'
socket = UNIXSocket.new("/tmp/haproxy.stats.socket")

# First attempt: works

socket.puts("show stat")

while(line = socket.gets) do
  puts line
end

# Second attemp: fails

socket.puts("show stat")

while(line = socket.gets) do
  puts line
end
Run Code Online (Sandbox Code Playgroud)

它第一次成功,但在第二次尝试失败.我不知道为什么.

# pxname,svname,qcur,qmax,scur,smax,slim,stot,bin,bout,dreq,dresp,ereq,econ,eresp,wretr,wredis,status,weight,act,bck,chkfail,chkdown,lastchg,downtime,qlimit,pid,iid,sid,throttle,lbtot,tracked,type,rate,rate_lim,rate_max,check_status,check_code,check_duration,hrsp_1xx,hrsp_2xx,hrsp_3xx,hrsp_4xx,hrsp_5xx,hrsp_other,hanafail,req_rate,req_rate_max,req_tot,cli_abrt,srv_abrt,
stats,FRONTEND,,,0,0,2000,0,0,0,0,0,0,,,,,OPEN,,,,,,,,,1,1,0,,,,0,0,0,0,,,,0,0,0,0,0,0,,0,0,0,,,
stats,BACKEND,0,0,0,0,2000,0,0,0,0,0,,0,0,0,0,UP,0,0,0,,0,22,0,,1,1,0,,0,,1,0,,0,,,,0,0,0,0,0,0,,,,,0,0,
legacy_socket,FRONTEND,,,0,0,1000,0,0,0,0,0,0,,,,,OPEN,,,,,,,,,1,2,0,,,,0,0,0,0,,,,0,0,0,0,0,0,,0,0,0,,,
all,FRONTEND,,,0,0,10000,0,0,0,0,0,0,,,,,OPEN,,,,,,,,,1,3,0,,,,0,0,0,0,,,,0,0,0,0,0,0,,0,0,0,,,
socket_backend,socket,0,0,0,0,200,0,0,0,,0,,0,0,0,0,DOWN,1,1,0,0,1,22,22,,1,4,1,,0,,2,0,,0,L4CON,,0,0,0,0,0,0,0,0,,,,0,0,
socket_backend,socket,0,0,0,0,200,0,0,0,,0,,0,0,0,0,DOWN,1,1,0,0,1,22,22,,1,4,2,,0,,2,0,,0,L4CON,,0,0,0,0,0,0,0,0,,,,0,0,
socket_backend,socket,0,0,0,0,200,0,0,0,,0,,0,0,0,0,DOWN,1,1,0,0,1,22,22,,1,4,3,,0,,2,0,,0,L4CON,,0,0,0,0,0,0,0,0,,,,0,0,
socket_backend,socket,0,0,0,0,200,0,0,0,,0,,0,0,0,0,DOWN,1,1,0,0,1,22,22,,1,4,4,,0,,2,0,,0,L4CON,,0,0,0,0,0,0,0,0,,,,0,0,
socket_backend,socket,0,0,0,0,200,0,0,0,,0,,0,0,0,0,DOWN,1,1,0,0,1,22,22,,1,4,5,,0,,2,0,,0,L4CON,,0,0,0,0,0,0,0,0,,,,0,0,
socket_backend,socket,0,0,0,0,200,0,0,0,,0,,0,0,0,0,DOWN,1,1,0,0,1,22,22,,1,4,6,,0,,2,0,,0,L4CON,,0,0,0,0,0,0,0,0,,,,0,0,
socket_backend,socket,0,0,0,0,200,0,0,0,,0,,0,0,0,0,DOWN,1,1,0,0,1,22,22,,1,4,7,,0,,2,0,,0,L4CON,,0,0,0,0,0,0,0,0,,,,0,0,
socket_backend,socket,0,0,0,0,200,0,0,0,,0,,0,0,0,0,DOWN,1,1,0,0,1,21,21,,1,4,8,,0,,2,0,,0,L4CON,,0,0,0,0,0,0,0,0,,,,0,0,
socket_backend,socket,0,0,0,0,200,0,0,0,,0,,0,0,0,0,DOWN,1,1,0,0,1,21,21,,1,4,9,,0,,2,0,,0,L4CON,,0,0,0,0,0,0,0,0,,,,0,0,
socket_backend,socket,0,0,0,0,200,0,0,0,,0,,0,0,0,0,DOWN,1,1,0,0,1,21,21,,1,4,10,,0,,2,0,,0,L4CON,,0,0,0,0,0,0,0,0,,,,0,0,
socket_backend,BACKEND,0,0,0,0,0,0,0,0,0,0,,0,0,0,0,DOWN,0,0,0,,1,21,21,,1,4,0,,0,,1,0,,0,,,,0,0,0,0,0,0,,,,,0,0,
api_backend,api,0,0,0,0,200,0,0,0,,0,,0,0,0,0,UP,1,1,0,0,0,22,0,,1,5,1,,0,,2,0,,0,L4OK,,0,0,0,0,0,0,0,0,,,,0,0,
api_backend,api,0,0,0,0,1,0,0,0,,0,,0,0,0,0,UP,1,1,0,0,0,22,0,,1,5,2,,0,,2,0,,0,L4OK,,0,0,0,0,0,0,0,0,,,,0,0,
api_backend,api,0,0,0,0,1,0,0,0,,0,,0,0,0,0,DOWN,1,1,0,0,1,21,21,,1,5,3,,0,,2,0,,0,L4CON,,0,0,0,0,0,0,0,0,,,,0,0,
api_backend,BACKEND,0,0,0,0,0,0,0,0,0,0,,0,0,0,0,UP,2,2,0,,0,22,0,,1,5,0,,0,,1,0,,0,,,,0,0,0,0,0,0,,,,,0,0,
www_backend,ruby-www,0,0,0,0,10000,0,0,0,,0,,0,0,0,0,UP,1,1,0,0,0,22,0,,1,6,1,,0,,2,0,,0,L4OK,,0,0,0,0,0,0,0,0,,,,0,0,
www_backend,BACKEND,0,0,0,0,0,0,0,0,0,0,,0,0,0,0,UP,1,1,0,,0,22,0,,1,6,0,,0,,1,0,,0,,,,0,0,0,0,0,0,,,,,0,0,

/Users/Olly/Desktop/haproxy_stats.rb:14:in `write': Broken pipe (Errno::EPIPE)
    from /Users/Olly/Desktop/haproxy_stats.rb:14:in `puts'
    from /Users/Olly/Desktop/haproxy_stats.rb:14
Run Code Online (Sandbox Code Playgroud)

问题是什么?有没有很好的参考使用UNIX套接字和Ruby?

ruby unix-socket

12
推荐指数
2
解决办法
1万
查看次数

使用Node.js实时读取文件

我需要使用node.js实时读出正在写入文件的数据的最佳方法.麻烦的是,Node是一艘快速发展的船,它使寻找解决问题的最佳方法变得困难.

我想做什么
我有一个正在做某事的java进程,然后把它做的事情的结果写到文本文件中.它通常需要5分钟到5个小时才能运行,数据写入的时间很长,并且可以达到一些相当高的吞吐率(大约1000线/秒).

我想实时读取这个文件,然后使用节点聚合数据并将其写入套接字,在套接字上可以在客户端上绘制图形.

客户端,图形,套接字和聚合逻辑都已完成,但我对阅读文件的最佳方法感到困惑.

我尝试过(或者至少玩过)
FIFO - 我可以告诉我的Java进程写一个fifo并使用node读取它,这实际上是我们如何使用Perl实现这个目的,但是因为其他一切都在节点中运行将代码移植过来是有意义的.

Unix Sockets - 如上.

fs.watchFile - 这会对我们需要的东西起作用吗?

fs.createReadStream - 这比watchFile好吗?

fs&tail -f- 似乎是一个黑客.

实际上,我的问题是什么,
我倾向于使用Unix套接字,这似乎是最快的选择.但节点是否具有更好的内置功能,可以实时读取fs中的文件?

javascript real-time fifo unix-socket node.js

12
推荐指数
2
解决办法
2万
查看次数

为什么linux 108上的unix-socket允许最大路径长度?

创建unix套接字时,man 7 unix允许路径名()最多为108个字符.对于朋友来说,这导致了他的节目中的一个错误,因为他的路径更长.现在我们想知道这个数字是如何确定的.

我怀疑这个数字是确定的,因此sizeof该结构sockaddr_un与其他sockaddresses的大小相比是明确的sockaddr_in.但如果他们想避免与其他sizeof值发生冲突,为什么不使用素数呢?有人可以为此提供一个授权来源吗?

c sockets linux unix-socket

12
推荐指数
2
解决办法
2346
查看次数

识别连接到Unix域套接字的程序

我有一个正在侦听Unix域套接字的程序.

当客户端连接到套接字时,我想找出连接的程序,然后决定是否允许连接(基于用户/组设置).

这可能在Linux下,如果是这样,怎么样?

linux unix-socket

11
推荐指数
2
解决办法
4461
查看次数

将Python xmlrpclib与unix域套接字一起使用?

我正在尝试与之交互supervisord,我想通过unix socket(它是一个共享的托管环境)与它交谈.

到目前为止我尝试过的是:

import xmlrpclib
server = xmlrpclib.ServerProxy('unix:///path/to/supervisor.sock/RPC2')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python2.7/xmlrpclib.py", line 1549, in __init__
    raise IOError, "unsupported XML-RPC protocol"
IOError: unsupported XML-RPC protocol
Run Code Online (Sandbox Code Playgroud)

/path/to/supervisor.sock肯定存在.使用'unix:///path/to/supervisor.sock/RPC2'形式的URI supervisord,这是我的想法.文档不讨论unix套接字:http://docs.python.org/library/xmlrpclib.html.

这可能吗?我应该使用不同的库吗?

python xml-rpc xmlrpclib unix-socket

11
推荐指数
3
解决办法
7151
查看次数

如何从命令行访问Unix域套接字?

使用Python读取Unix域套接字文件类似于普通的TCP套接字:

>>> import socket
>>> import sys
>>>
>>> server_address = '/tmp/tbsocket1'  # Analogous to TCP (address, port) pair
>>> sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
>>> sock.connect(server_address)
>>> sock.recv(512)
'*** uWSGI Python tracebacker output ***\n\n'
Run Code Online (Sandbox Code Playgroud)

由于UDS不是普通文件,因此cat不适用于它们:

$ sudo cat /tmp/tbsocket1
cat: /tmp/tbsocket1: No such device or address
Run Code Online (Sandbox Code Playgroud)

也没有curl:

$ sudo curl /tmp/tbsocket1
curl: (3) <url> malformed
Run Code Online (Sandbox Code Playgroud)

如何使用标准命令行工具(如curl)读取或写入Unix域套接字?

PS:在一个奇怪的巧合,一个卷曲补丁建议最近)

unix linux curl unix-socket

11
推荐指数
2
解决办法
2万
查看次数