相关疑难解决方法(0)

TCP选项SO_LINGER(零) - 何时需要

我想我理解该选项的正式含义.在我正在处理的一些遗留代码中,使用了该选项.客户抱怨RST作为对其接近的连接的FIN的回应.

我不确定我是否可以安全地将其删除,因为我不明白何时应该使用它.

能否举例说明何时需要该选项?

sockets networking tcp setsockopt so-linger

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

Python处理socket.error:[Errno 104]由peer重置连接

当使用Python 2.7 urllib2从API检索数据时,我收到错误[Errno 104] Connection reset by peer.什么导致错误,以及如何处理错误,以便脚本不会崩溃?

ticker.py

def urlopen(url):
    response = None
    request = urllib2.Request(url=url)
    try:
        response = urllib2.urlopen(request).read()
    except urllib2.HTTPError as err:
        print "HTTPError: {} ({})".format(url, err.code)
    except urllib2.URLError as err:
        print "URLError: {} ({})".format(url, err.reason)
    except httplib.BadStatusLine as err:
        print "BadStatusLine: {}".format(url)
    return response

def get_rate(from_currency="EUR", to_currency="USD"):
    url = "https://finance.yahoo.com/d/quotes.csv?f=sl1&s=%s%s=X" % (
        from_currency, to_currency)
    data = urlopen(url)
    if "%s%s" % (from_currency, to_currency) in data:
        return float(data.strip().split(",")[1])
    return None


counter = 0
while True: …
Run Code Online (Sandbox Code Playgroud)

python ubuntu urllib2 python-2.7

68
推荐指数
3
解决办法
16万
查看次数

在Android中获取"SocketException:Connection by peer reset"

我的应用程序需要通过http://127.0.0.1/...(localhost url)联系它正在处理的同一设备.

出于某种原因,当我到达那里有JSON内容的网站时,大约50%的时间(可能正好是50%),我得到例外:

java.net.SocketException:recvfrom失败:ECONNRESET(由对等方重置连接)

对于其他50%,我得到了非常好的结果.我试图进行民意调查(甚至民意调查之间的延迟很大),但我仍然得到同样奇怪的结果.

我搜索过互联网,也在这里,我不确定为什么会这样.对等方是否意味着客户端已经造成了这种情况?为什么会这样,我该如何处理?

一些网站说这是常见的事情,但我没有找到在这种情况下最好的事情.

android localhost socketexception peer

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

如何在AWS批处理中定义根卷大小

我正在使用AWS Batch,我发现根卷的大小对于我的任务来说太低了.

我尝试创建一个新的计算环境/作业队列,但没有任何选项来设置卷大小.我尝试从此处更改启动配置,但AWS Batch不考虑新的启动配置和/或自动扩展组.我可能不得不改变dm.basesize,但目前还不清楚应该在哪里做.

所以,我建立了一个自定义的AMI从Amazon 2 Linux上的500 GB的存储空间,并改变了--storage-optdm.basesize=400GB所指示的位置,但是,虽然我的情况下被催生,作业留在RUNNABLE状态下去.我检查了这里定义的可能原因,但是i)"启用自动分配公共IPv4地址"被检查,ii)图像应该是好的(它已经在创建环境时被验证并且可以生成),iii)I这样的实例类型有5个实例的限制(但我甚至无法运行1),iv)我的角色权限应该没问题 - 我成功使用了默认的amazonlinux映像的相同角色,v)资源不足(实例得到)产生,所以我认为这不应该是问题),vi)连接 - 它应该工作,因为自动缩放组显示一个成功的状态.

一种可能的解决方案可能是在运行时附加特定的AWS卷,但它会受到限制,我想找到一个自动解决方案,因为我必须管理多个卷以进行并行执行.

我也尝试通过管道来自s3桶的输入执行任务,分析数据和管道输出到第二个s3桶,但每次都得到Connection Reset by Peer错误,可能是因为任务运行的时间太长(我也设置--cli-read-timeout为0)但它根本没有解决它.

有没有办法为AWS批处理中的作业配置根卷大小?

size volume amazon-web-services docker aws-batch

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

去http.Get,并发和"通过对等重置连接"

我有1000-2000个网页从一台服务器上下载,我正在使用go例程和渠道来实现高效率.问题是,每次运行我的程序时,最多400个请求都会失败并显示错误"peer by peer".很少(可能是10次中的1次),没有请求失败.

我该怎么做才能防止这种情况发生?

有趣的是,当我在与托管网站的服务器相同的国家/地区的服务器上运行此程序时,0请求失败,因此我猜测延迟存在一些问题(因为它现在正在运行在不同的大陆上的服务器).

我使用的代码基本上只是一个简单的http.Get(url)请求,没有额外的参数或自定义客户端.

concurrency http go

10
推荐指数
3
解决办法
1万
查看次数

RabbitMQ错误:fwrite():发送12个字节失败,errno = 104连接由peer重置

我使用的是RabbitMQ的图书馆videlalvaro/PHP-amqplib一个内部Laravel 4.2应用程序,我已经开始收到以下错误:

fwrite(): send of 12 bytes failed with errno=104 Connection reset by peer"
Run Code Online (Sandbox Code Playgroud)

任何人都可以提出任何可能导致此问题的建议

php rabbitmq laravel

7
推荐指数
1
解决办法
4767
查看次数

是否可以在请求中刷新会话?

我使用创建一个会话requests.Session()。由于某种原因,服务器端关闭了此连接,所以我必须重新连接。问题是,这个会话在很多地方都使用,所以我想知道是否可以重建 TCP 连接但保留会话对象,以便我仍然可以使用它?

例子:

s = requests.Session()

class B:
    def __init__(self, session):
        self._session = session

    def get(self):
        self._session.get('some_url')

b1 = B(s)
b2 = B(s)
b3 = B(s)

# some get calls
...
# then connection is closed

# some get calls
...
Run Code Online (Sandbox Code Playgroud)

如果我可以保留 seesion 对象,则无需替换_session每个B实例中的每个对象。

错误日志:

Traceback (most recent call last):
  File "/usr/local/lib/python3.5/site-packages/requests/packages/urllib3/connectionpool.py", line 376, in _make_request
    httplib_response = conn.getresponse(buffering=True)
TypeError: getresponse() got an unexpected keyword argument 'buffering'

During handling of the above exception, …
Run Code Online (Sandbox Code Playgroud)

python session http python-requests

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

触发“对等方重置连接”

我想测试当发生“对等方重置连接”错误时我们的应用程序(嵌入式 ftp 服务器)中发生的日志记录。这篇文章很好地解释了错误的根源,但没有真正解释如何导致错误。有谁知道如何触发 TCP 连接的此错误?

testing ftp tcp

5
推荐指数
1
解决办法
4409
查看次数

将数据复制到HDFS时createBlockOutputStream中的异常

我在将数据复制到HDFS时收到以下警告消息.我有6个节点集群在运行.每次复制期间它都会忽略这两个节点并显示以下警告消息.

    INFO hdfs.DFSClient: Exception in createBlockOutputStream
java.io.IOException: Bad connect ack with firstBadLink as 192.168.226.136:50010
        at org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.createBlockOutputStream(DFSOutputStream.java:1116)
        at org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.nextBlockOutputStream(DFSOutputStream.java:1039)
        at org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.run(DFSOutputStream.java:487)
13/11/04 05:02:15 INFO hdfs.DFSClient: Abandoning BP-603619794-127.0.0.1-1376359904614:blk_-7294477166306619719_1917
13/11/04 05:02:15 INFO hdfs.DFSClient: Excluding datanode 192.168.226.136:50010
Run Code Online (Sandbox Code Playgroud)

Datanode日志

2014-02-07 04:22:01,953 WARN org.apache.hadoop.hdfs.server.datanode.DataNode:                     IOException in offerService
          java.io.IOException: Failed on local exception: java.io.IOException: Connection  reset by peer; Host Details : local host is: "datanode4/192.168.226.136"; destination host is: "namenode":8020;
        at org.apache.hadoop.net.NetUtils.wrapException(NetUtils.java:763)
        at org.apache.hadoop.ipc.Client.call(Client.java:1235)
        at org.apache.hadoop.ipc.ProtobufRpcEngine$Invoker.invoke(ProtobufRpcEngine.java:202)
        at sun.proxy.$Proxy10.sendHeartbeat(Unknown Source)
        at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:616)
        at org.apache.hadoop.io.retry.RetryInvocationHandler.invokeMethod(RetryInvocationHandler.java:164) …
Run Code Online (Sandbox Code Playgroud)

java hadoop

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

Python socket.error:[Errno 104]由peer重置连接

我有一个代码,其中有13个客户端必须连接到服务器.然后服务器对客户端给出的数据进行一些计数.之后角色转变 - 服务器成为客户端,客户端成为接收数据的服务器.问题在于,当尝试进行第一次连接时,即13个客户端尝试连接到服务器时,我不断收到此错误: [Errno 104] Connection reset by peer.我尝试了一些解决方法,例如尝试在第二个间隔中连接5次但没有任何效果.

这是我的代码:

server.py

import socket, pickle, numpy as np
import struct
import math


while 1:
    HOST = ''
    PORT = 50007
    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    s.bind((HOST, PORT))
    s.listen(13)

adresses = []
ports = []

i = 0
print("receiving...")
while i < 13:
    i += 1    
    #wait to accept a connection - blocking call
    conn, addr = s.accept()
    print ('Connected with ', addr)
    adresses.append(addr[0])
    buf = b''
    while len(buf) < 4:
        buf …
Run Code Online (Sandbox Code Playgroud)

python sockets

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

Indy TCPServer在客户端连接时给出"由对等重置连接"错误

我正在尝试使用Delphi firemonkey应用程序创建TCP服务器.

我的资源文件Unit1.fmx如下.

object Form1: TForm1
  Left = 0
  Top = 0
  Caption = 'Form1'
  ClientHeight = 480
  ClientWidth = 640
  FormFactor.Width = 320
  FormFactor.Height = 480
  FormFactor.Devices = [Desktop]
  OnActivate = FormShow
  OnCreate = FormCreate
  DesignerMasterStyle = 0
  object Label1: TLabel
    Position.X = 504.000000000000000000
    Position.Y = 248.000000000000000000
    Text = 'Label1'
  end
  object TCPServer: TIdTCPServer
    Bindings = <>
    DefaultPort = 0
    OnAfterBind = TCPServerAfterBind
    OnConnect = TCPServerOnConnect
    OnExecute = TCPserverExecute
    Left = 560
    Top = 184
  end
end …
Run Code Online (Sandbox Code Playgroud)

delphi debugging tcp indy10 firemonkey

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