我想我理解该选项的正式含义.在我正在处理的一些遗留代码中,使用了该选项.客户抱怨RST作为对其接近的连接的FIN的回应.
我不确定我是否可以安全地将其删除,因为我不明白何时应该使用它.
能否举例说明何时需要该选项?
当使用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) 我的应用程序需要通过http://127.0.0.1/...(localhost url)联系它正在处理的同一设备.
出于某种原因,当我到达那里有JSON内容的网站时,大约50%的时间(可能正好是50%),我得到例外:
java.net.SocketException:recvfrom失败:ECONNRESET(由对等方重置连接)
对于其他50%,我得到了非常好的结果.我试图进行民意调查(甚至民意调查之间的延迟很大),但我仍然得到同样奇怪的结果.
我搜索过互联网,也在这里,我不确定为什么会这样.对等方是否意味着客户端已经造成了这种情况?为什么会这样,我该如何处理?
一些网站说这是常见的事情,但我没有找到在这种情况下最好的事情.
我正在使用AWS Batch,我发现根卷的大小对于我的任务来说太低了.
我尝试创建一个新的计算环境/作业队列,但没有任何选项来设置卷大小.我尝试从此处更改启动配置,但AWS Batch不考虑新的启动配置和/或自动扩展组.我可能不得不改变dm.basesize,但目前还不清楚应该在哪里做.
所以,我建立了一个自定义的AMI从Amazon 2 Linux上的500 GB的存储空间,并改变了--storage-opt与dm.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批处理中的作业配置根卷大小?
我有1000-2000个网页从一台服务器上下载,我正在使用go例程和渠道来实现高效率.问题是,每次运行我的程序时,最多400个请求都会失败并显示错误"peer by peer".很少(可能是10次中的1次),没有请求失败.
我该怎么做才能防止这种情况发生?
有趣的是,当我在与托管网站的服务器相同的国家/地区的服务器上运行此程序时,0请求失败,因此我猜测延迟存在一些问题(因为它现在正在运行在不同的大陆上的服务器).
我使用的代码基本上只是一个简单的http.Get(url)请求,没有额外的参数或自定义客户端.
我使用的是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)
任何人都可以提出任何可能导致此问题的建议
我使用创建一个会话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) 我想测试当发生“对等方重置连接”错误时我们的应用程序(嵌入式 ftp 服务器)中发生的日志记录。这篇文章很好地解释了错误的根源,但没有真正解释如何导致错误。有谁知道如何触发 TCP 连接的此错误?
我在将数据复制到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) 我有一个代码,其中有13个客户端必须连接到服务器.然后服务器对客户端给出的数据进行一些计数.之后角色转变 - 服务器成为客户端,客户端成为接收数据的服务器.问题在于,当尝试进行第一次连接时,即13个客户端尝试连接到服务器时,我不断收到此错误: [Errno 104] Connection reset by peer.我尝试了一些解决方法,例如尝试在第二个间隔中连接5次但没有任何效果.
这是我的代码:
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) 我正在尝试使用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) python ×3
tcp ×3
http ×2
sockets ×2
android ×1
aws-batch ×1
concurrency ×1
debugging ×1
delphi ×1
docker ×1
firemonkey ×1
ftp ×1
go ×1
hadoop ×1
indy10 ×1
java ×1
laravel ×1
localhost ×1
networking ×1
peer ×1
php ×1
python-2.7 ×1
rabbitmq ×1
session ×1
setsockopt ×1
size ×1
so-linger ×1
testing ×1
ubuntu ×1
urllib2 ×1
volume ×1