对于想了解PHP域whois脚本不返回所有信息的读者,本文将提供新的信息,我们将详细介绍phpwho,并且为您提供关于AmazonSQSLongPolling不返回所有消息、DirectoryInfo
对于想了解PHP域whois脚本不返回所有信息的读者,本文将提供新的信息,我们将详细介绍php who,并且为您提供关于Amazon SQS Long Polling不返回所有消息、DirectoryInfo.GetFiles()不返回所有文件、Discord.js不返回所有公会成员的列表、Django Rest Framework-当获取类型不为JSON的Object时,如何从响应中的模型返回所有信息?的有价值信息。
本文目录一览:- PHP域whois脚本不返回所有信息(php who)
- Amazon SQS Long Polling不返回所有消息
- DirectoryInfo.GetFiles()不返回所有文件
- Discord.js不返回所有公会成员的列表
- Django Rest Framework-当获取类型不为JSON的Object时,如何从响应中的模型返回所有信息?
PHP域whois脚本不返回所有信息(php who)
但是当我在Mac上运行以下命令时,它会返回所有信息
“whois google.com”
这是我的PHP函数从whois服务器获取信息
function QueryWhoisServer($whoisserver,$domain) { $port = 43; $timeout = 10; $fp = @fsockopen($whoisserver,$port,$errno,$errstr,$timeout) or die("Socket Error " . $errno . " - " . $errstr); fputs($fp,$domain . "\r\n"); $out = ""; while(!feof($fp)){ $out .= fgets($fp); } fclose($fp); return $out; } echo QueryWhoisServer("whois.verisign-grs.com","google.com");
为此,每个域都需要根据下面的代码查询相关的注册商whois服务器.
检查代码注释,了解每个函数的功能.
function GetWhoisInfo($whoisserver,$domain){ $port = 43; $timeout = 10; $fp = @fsockopen($whoisserver,$timeout) or die("Socket Error " . $errno . " - " . $errstr); stream_set_blocking($fp,true); fputs($fp,$domain . "\r\n"); $out = ""; while(!feof($fp)){ $out .= fgets($fp); } fclose($fp); return $out; } function GetRegistrarWhoisServer($whoisserver,$domain) { $out = GetWhoisInfo($whoisserver,$domain); $rws_string = explode("\r\n",$out); $rws = explode("Registrar WHOIS Server: ",$rws_string[2])[1]; return $rws; } function WhoisToJson($winfo) { $winfoarr = explode(PHP_EOL,$winfo); $jsonarr = []; foreach($winfoarr as $info){ $infodata = explode(": ",$info); if($infodata[0] !== "")$jsonarr[$infodata[0]] = $infodata[1]; //avoid to process privacy info at the end of whois service output if($infodata[0] === "DNSSEC")break; } return json_encode($jsonarr); } function QueryWhoisServer($whoisserver,$domain) { //query to $whoisserver whois to get registrar whois server address only $rws = GetRegistrarWhoisServer($whoisserver,$domain); //query to registrar whois server (registrar whois servers are returning contact infos) $out = GetWhoisInfo($rws,$domain); //parsing infos and formatting to json return WhoisToJson($out); } echo QueryWhoisServer("whois.verisign-grs.com","google.com");
Amazon SQS Long Polling不返回所有消息
我需要在读取的1次中读取Amazon SQS队列中的所有消息,然后根据创建的时间戳对其进行排序并对其进行业务逻辑。
为了确保检查所有SQS主机是否有消息,我启用了长轮询。我这样做的方法是将队列的默认等待时间设置为10秒。(任何大于0的值都将启用长轮询)。
但是,当我尝试读取队列时,它仍然无法提供所有消息,因此我必须进行多次读取才能获取所有消息。我什至对每个接收请求通过代码启用了长时间轮询,但仍然无法正常工作。下面是我正在使用的代码。
AmazonSQSClient sqsClient = new AmazonSQSClient(new ClasspathPropertiesFileCredentialsProvider());sqsClient.setEndpoint("sqs.us-west-1.amazonaws.com");String queueUrl = "https://sqs.us-west-1.amazonaws.com/12345/queueName";ReceiveMessageRequest receiveRequest = new ReceiveMessageRequest().withQueueUrl(queueUrl).withMaxNumberOfMessages(10).withWaitTimeSeconds(20);List<Message> messages = sqsClient.receiveMessage(receiveRequest).getMessages();
我在队列中有3条消息,每次我运行代码时,我都会得到不同的结果,有时我获得全部3条消息,有时只有1条消息。我将可见性超时设置为2秒,这是为了消除导致消息不可见的原因在阅读中看不到它们。这是短期轮询的预期行为。长轮询应该消除多个轮询。我在这里做错什么吗?
谢谢
答案1
小编典典长时间轮询应该消除多次轮询
不,长轮询应该消除实际可用的消息时的大量空轮询和虚假的空响应。在SQS中进行长时间的调查不会坐下来等待最大的等待时间,只是寻找更多的东西返回,或者一旦找到东西就继续搜索。在SQS中进行长时间轮询只能等待足够长的时间才能找到
一些东西 :
“ 长轮询允许Amazon SQS服务等待直到队列中有消息可用,然后再发送响应。因此,除非连接超时,否则对
ReceiveMessage请求的响应将包含至少一个可用消息(如果有),并且最多包含ReceiveMessage调用中请求的最大数目。
”—
http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-
long-polling.html
(添加了重点)
因此,SQS查找并返回的 “内容”
可能是所有消息(最大),或者是消息的子集,因为如上所述,SQS是分布式系统。在“一旦发现问题后尽快返回”和“在整个系统中搜索所有可能的内容,直到客户将接受的最大消息数量”之间,可能会做出架构决定。这些选择似乎是合理的,大多数应用程序都希望更快地响应“尽快给我”。
您不知道自己实际上已经耗尽了队列,直到您从长轮询中得到空响应为止。
DirectoryInfo.GetFiles()不返回所有文件
我只是用我自己的文件夹浏览器试验一下。 我注意到,当我看着Windows 7中的System32文件夹,我得到了一些奇怪的结果。 代码如下:
DataTable dt=new DataTable(); string Folder="C:\Windows\System32"; DirectoryInfo DI = new DirectoryInfo(Folder); foreach (FileInfo FI in DI.GetFiles()) { DaTarow Row = dt.NewRow(); if(FI.Name== "accelerometerdll.DLL") { } Row["Name"] = FI.Name; Row["Created"] = FI.CreationTime; Row["Size"] = FI.Length; dt.Rows.Add(Row); } dataGridView1.DataSource = dt;
运行时,文件列表不完整。 与Windows资源pipe理器相比,文件总数超过400个文件。
有一个简单的检查名为“accelerometerdll.dll”的文件来尝试解决这个问题。 该文件绝对位于System32文件夹中。 我可以在资源pipe理器中看到它,当我执行DIR时,可以在命令窗口中看到它。 然而它从来没有出现在我的数据表中。 条件从未满足。 它就像它的简单无形。 我试着以pipe理员的身份运行这个结果。
更令人不安的是,它显示一个名为“12520437.cpx”的文件,我无法在资源pipe理器或命令窗口中看到它。 它似乎是在SysWOW64文件夹不是System32文件夹?
win10的wpf窗口定位错误
在WPF .NET Framework中使用自定义的任务pipe理器,如何防止进程重复?
为什么Microsoft.Build.Evaluation在64位PC上将$(ProgramFiles)评估为“c: program files”?
给定一个IntPtr句柄,改变窗口的背景颜色
启动f#与Process.Start交互
我的主要目标是显示与打开任何文件夹时资源pipe理器显示的文件完全相同的文件。
有任何想法吗?
在线程中调用列表框
.NET和本机C ++应用程序之间进行通信的最佳方式
.NET等价于热键控制
如何引用外部类中的string(C#)
为什么我的映射networking驱动器不出现在networking位置?
有必要根据知识丰富的反应关闭偏好的32位编译器指令。
更多信息在这里:
文件系统重定向器
Discord.js不返回所有公会成员的列表
如何解决Discord.js不返回所有公会成员的列表?
我试图遍历一个相对较小的公会的所有成员,但是该机器人似乎只记录缓存的用户。当我尝试console.log退出公会成员时,它只会注销自己和漫游器,并且当其他人发送消息并且我再次运行它时,它们也被包含在公会成员中。它曾经工作过,但今天早些时候只是随机打破了。我已经尝试做message.guild.fetch(),它什么也没做。这是尝试获取行会成员的代码:
message.guild.fetch().then(console.log)
let allUsers = Array.from(
message.guild.members[Object.keys(message.guild.members)[1]].keys()
);
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)
Django Rest Framework-当获取类型不为JSON的Object时,如何从响应中的模型返回所有信息?
创建播放器model序列化器
class PlayerSerializer(serializers.ModelSerializer):
class Meta:
model = Player
fields = "__all__"
然后在响应字典中使用序列化器:
{
# other fields
"full_user_info": PlayerSerializer(data=Player)
}
今天的关于PHP域whois脚本不返回所有信息和php who的分享已经结束,谢谢您的关注,如果想了解更多关于Amazon SQS Long Polling不返回所有消息、DirectoryInfo.GetFiles()不返回所有文件、Discord.js不返回所有公会成员的列表、Django Rest Framework-当获取类型不为JSON的Object时,如何从响应中的模型返回所有信息?的相关知识,请在本站进行查询。
本文标签: