是否可以查看 nginx 正在主动提供哪些 URL(即,查看正在响应的 URL,而不是 nginx 已完成响应的 URL)。
我想看到这些,因为我正在使用nginx push 模块并试图弄清楚为什么活动(和写入)连接的数量一直在增加。这些是长时间保持打开状态的请求,所以我希望能够看到 nginx 目前正在处理哪些 URL,理想情况下还有一些关于这些客户端的信息(即用户代理、IP 地址、都是有帮助的)。
我有一个客户端(Server 2008 R2)无法连接到我们的生产环境 PPTP VPN 服务器(Server 2003,运行 RRAS)。
服务器位于打开 TCP1723 和 GRE 的防火墙后面。我们办公室的其他客户能够正常连接。我们的办公室位于瞻博网络 SSG5-Serial 防火墙后面,但允许所有传出流量,并且多个其他客户端能够毫无问题地连接到 VPN 服务器。
我还在办公室外的另一个网络上设置了一个完全不同的 VPN 服务器。正常运行的客户端连接得很好 - Server 2008 R2 机器没有。因此,这绝对是这台机器的问题。
我已经重新启动了。我已经禁用了防火墙,两者都没有。
我已经在服务器/客户端上运行了 PPTPSRV 和 PPTPCLNT,它们能够完美地进行通信 - 表明使用 TCP1723 和 GRE 都没有问题。
Server 2008 R2 机器本身也作为 VPN 服务器运行(传入连接),并且运行良好。无论是否有活动的传入连接,我们都会遇到问题。
我不确定我的下一个调试步骤是什么;有什么建议?
编辑:服务器上的事件日志有来自 RasMan 的以下警告:
A connection between the VPN server and the VPN client xxx.xxx.xxx.xxx has been
established, but the VPN connection cannot be completed. The most common cause
for this is that a firewall or router between …Run Code Online (Sandbox Code Playgroud) 在 Linux 系统上,有很多方法可以通过连接 IP列出给定端口的当前TCP 连接,但是:如何计算一段时间内每个源 IP 与端口的连接总数?
我们目前在消息中遇到了很多 Redis 错误
无法连接:连接时读取错误,尝试下一个服务器
我们使用 PHP Redis 在 FreeBSD 上运行 Redis,我们很难在 Ubuntu 上重现该错误,因此这可能是一个提示。在 github 上有一个关于该主题的长期问题。
基本上我们通过调用connect(host, port, timeout)phpredis从操作系统获得一个套接字,但是当我们select(db_index)之后执行 a 时,我们得到一个异常。持久化会不会有问题?我假设 connect 在后台不执行任何操作,而 select 尝试访问实际上已关闭的连接。
我们不会遇到超时。我们尝试调整 TIME_WAIT 没有成功。
关于问题可能来自哪里的任何其他想法?跟踪问题的最佳方法是什么?dtrace 也许?
更新
我们目前正在研究我们的 BGSAVE 设置。有趣的是,为定期将数据写入磁盘(持久性)的进程创建一个 fork 需要半秒甚至更多的时间,并且可能 redisconnect()在该时间段内无法响应请求。
本地和远程操作系统都是Debian8。
我想让 ssh 保持很长时间。我的客户端(本地)端
的配置文件/etc/ssh/ssh_config。
Host *
ServerAliveInterval 60
ServerAliveCountMax 10000
Run Code Online (Sandbox Code Playgroud)
/etc/ssh/sshd_config我的服务器(远程)端的配置文件。
/etc/ssh/sshd_config
TCPKeepAlive yes
ClientAliveInterval 60
ClientAliveCountMax 10000
Run Code Online (Sandbox Code Playgroud)
经测试,ssh连接可以长时间保持活动状态。有一个参数/etc/ssh/ssh_config,ConnectTimeout,是什么意思?
做ConnectTimeout 0或起ConnectTimeout 1000不同的作用?
我们正在维护一个为大量客户端提供服务的数据库服务器。每个客户端通常运行多个客户端应用程序。与数据库服务器 (Oracle 9i) 的连接总数在峰值负载时达到 800 个连接。Windows 2003 服务器开始耗尽内存。我们现在计划迁移到 64 位 Windows 以获得更高的内存容量。作为开发人员,我建议转向具有连接池的多层架构,我认为这是解决此问题的自然方法。但是,为了支持我的想法,我需要以下信息:
我确信这个问题的答案应该取决于很多因素,比如所用硬件的确切规格。我期待一个粗略的估计或一些来自现实世界的经验。
我设法使用 keepalived 使 HAproxy 在故障转移配置中工作,如Architecture.txt文档中的建议。
我使用了 CentOS 5.5、来自 epel 存储库的 HAproxy rpm (haproxy-1.3.25-1.el5) 和来自 CentOS 测试存储库的 keepalived rpm (keepalived-1.1.15-0.el5.centos)。
这是我的 keepalived 配置
vrrp_script chk_haproxy { # Requires keepalived-1.1.13
script "killall -0 haproxy" # cheaper than pidof
interval 2 # check every 2 seconds
weight 2 # add 2 points of prio if OK
}
vrrp_instance VI_1 {
interface eth0
state MASTER
virtual_router_id 51
priority 101 # 101 on master, 100 on backup
virtual_ipaddress {
10.0.0.30
10.0.0.31
}
track_script …Run Code Online (Sandbox Code Playgroud) 我注意到 PostgreSQL 和 MySQL 默认有 100 个客户端连接限制。我想知道我是否应该拒绝它,因为网络服务器在同一个盒子上,而且我只有大约 20 个需要连接的 PHP 进程。
此设置是否应匹配或超过将尝试连接的进程数?
在大约 2-3 周内,我将获得一台旧的 AS/400 服务器(9406,可能是 6xx 或 8xx)以从管理员的角度学习 OS/400。
我需要一些特殊的硬件来连接和执行 IPL(并且可能安装 OS/400)吗?
更新:我无法访问任何双轴控制台或获取它的方法。
这可能看起来像一个已经讨论过/回答过的问题。但我专门寻找在任何地方都找不到明确回答的信息。
我有一个 Nginx + php-fpm 设置,它使用 unix 套接字将 Nginx 与后端 php-fpm fastcgi 进程对话。最近我听说基于 unix socket 的连接不像基于 tcp 的连接那样可扩展。不确定这里的限制因素是什么,尤其是当我从同一主机运行所有内容时。
我可以增加每个系统或用户(nginx)的最大文件描述符。我还可以增加每个 nginx 工作进程的这个限制。最大文件描述符是限制因素吗?
我在此设置中配置的网站很少,并且最大套接字(每个网站一个)。我使用的少于 50 个。当多个 nginx 线程在高负载下与后端的多个 php-fpm 实例通信时,每个套接字是否有最大并发连接数限制?或者,如果并发性非常高,实际上什么可以限制套接字允许这些连接?
是否还有其他因素会影响性能,如锁、磁盘 io 性能等?