我有一个go程序,可以从多个协同程序生成大量的HTTP请求.运行一段时间后,程序会发出错误:connect:无法分配请求的地址.
使用netstat进行检查时,我在TIME_WAIT中获得了一个高数字(28229)的连接.
当协程的数量为3时,会发生大量的TIME_WAIT套接字,并且当它为5时严重到足以导致崩溃.
我在docker下运行Ubuntu 14.4并转到版本1.7
这是go计划.
package main
import (
"io/ioutil"
"log"
"net/http"
"sync"
)
var wg sync.WaitGroup
var url="http://172.17.0.9:3000/";
const num_coroutines=5;
const num_request_per_coroutine=100000
func get_page(){
response, err := http.Get(url)
if err != nil {
log.Fatal(err)
} else {
defer response.Body.Close()
_, err =ioutil.ReadAll(response.Body)
if err != nil {
log.Fatal(err)
}
}
}
func get_pages(){
defer wg.Done()
for i := 0; i < num_request_per_coroutine; i++{
get_page();
}
}
func main() {
for i:=0;i<num_coroutines;i++{
wg.Add(1)
go get_pages()
}
wg.Wait()
}
Run Code Online (Sandbox Code Playgroud)
这是服务器程序: …
在jquery集成新闻之后,jQuery和MS Ajax正在进行大量讨论.
我目前正在说服我的团队考虑jQuery,但我不是他们中的任何一个.
我真的想要在jQuery和MS Ajax"Client"库之间进行一些很好的比较,因为我的团队认为如果我们只使用原始的ms ajax客户端库,我们可以使用jQuery,而jQuery似乎只有更好的选择器.
在某些情况下,有人可以为使用jQuery而不是MS Ajax提供一些很好的见解吗?如果更好的性能问题?
谢谢!
我目前正在为Android(2.2)和使用SSL的服务器编写客户端部分.我设法在服务器和普通客户端之间交换消息,但Android似乎对自签名证书不太满意.我搜索过Stackoverflow和Google搜索很多,很多人都有类似的问题.到目前为止我找到的所有答案要么不起作用,要么没有任何意义.那里的大多数代码示例都是针对HTTPS的,但我不能使用,因为我需要通过套接字进行通信(SSLSocket是我最好的猜测).我尝试了很多不同的代码,但是现在我又回到零了.
到目前为止,我已经发现我必须创建一个证书(我认为我做对了)和一个自定义的TrustManager.显然我无法找到任何正常工作的代码,这就是我在这里问的原因,因为通常会有一些非常有帮助的人.
我正在寻找有关应该做什么的详细描述,以及一些可以制作成有效的Android客户端代码的代码.
提前致谢
我在Android上有一个客户端,在c#上有服务器.客户端向服务器发送消息,没关系.但是我需要服务器在指定目录中发送文件夹和文件的请求列表,并且不知道如何做,因为客户端没有从服务器获取任何消息.客户端的部分代码旨在监听不起作用,应用程序只是停止,直到我关闭服务器应用程序,然后它再次工作,但仍然没有读取任何东西.提前致谢
客户:
package com.app.client.app;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStreamWriter;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.InetAddress;
import java.net.Socket;
import java.net.UnknownHostException;
import android.util.Log;
public class my_activity extends Activity {
private TextView txt;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button b = (Button)findViewById(R.id.button1);
txt = (TextView)findViewById(R.id.textView1);
b.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
connectSocket("Hello");
}
});
}
private void …Run Code Online (Sandbox Code Playgroud) 我的特殊问题是这样的:
我们目前正在运行一组服务,要求客户端在调用服务时提供用户名和密码作为身份验证.
我们希望在这些服务上实施PKI基础设施,但我们的一些合作伙伴将比其他合作伙伴使用更长的时间来适应这种新的基础设施.
作为第一步,我们希望从我们的一些合作伙伴那里获得客户证书.将需要客户端证书(除了用户名和密码)来访问我们服务器上的数据,而对于其他用户,只需要用户名和密码.
为了解决这个问题,我试图在WCF中为用户名/密码认证(使用UserNamePasswordValidator)和客户端证书(使用X509CertificateValidator)实现自定义验证器.用户名/密码验证程序将验证这些凭据是否符合我们的数据库,而客户端证书验证程序将检查请求是否来自我们需要证书的客户端,如果是,则验证是否提供了有效的客户端证书.我无法配置WCF以便它使用这两个验证器.
我在服务器上的WCF配置目前设置如下:
<behaviors>
<serviceBehaviors>
<behavior name="MyServiceBehavior">
<serviceMetadata httpsGetEnabled="true" policyVersion="Policy15" />
<serviceDebug includeExceptionDetailInFaults="true" />
<serviceCredentials>
<clientCertificate>
<authentication customCertificateValidatorType="MyWS.Security.MyServicesCertificateValidator, MyWS"
certificateValidationMode="Custom" revocationMode="NoCheck" />
</clientCertificate>
<userNameAuthentication userNamePasswordValidationMode="Custom"
customUserNamePasswordValidatorType="MyWS.Security.MyServicesUsernameValidator, MyWS" />
</serviceCredentials>
</behavior>
</serviceBehaviors>
</behaviors>
<serviceHostingEnvironment multipleSiteBindingsEnabled="true"/>
<bindings>
<basicHttpBinding>
<binding name="MySoapBinding">
<security mode="TransportWithMessageCredential">
<transport clientCredentialType="Certificate" />
<message clientCredentialType="UserName" />
</security>
</binding>
</basicHttpBinding>
</bindings>
<services>
<service behaviorConfiguration="MyServiceBehavior" name="MyWS.Services.TheService">
<endpoint address="" binding="basicHttpBinding" bindingConfiguration="MySoapBinding" name="TheService" bindingNamespace="https://services.my/TheService" contract="MyWS.Interfaces.Service.ITheService" />
<host>
<baseAddresses>
<add baseAddress="https://localhost:4434/MyWS/TheService"/>
</baseAddresses>
</host>
</service>
</services>
Run Code Online (Sandbox Code Playgroud)
据我所知,此配置无效,因为我无法在传输层使用customCertificateValidatorType(因为IIS在此处涉及WCF之前检查证书),但我无法看到我如何将customCertificateValidatorType和customUserNamePasswordValidatorType组合为凭据消息层的类型也是.
我已经实现了一个消息检查器,并且可能能够以某种方式使用OperationContext来解决问题(如下面链接中所示),但是我还没有看到这样做的方式......
http://social.msdn.microsoft.com/Forums/en/wcf/thread/b6ab8b58-516b-41d4-bb0e-75b4baf92716
我想我可能会尝试实现与WCF工作方式不兼容的东西,但如果有人知道如何解决这个问题,我很乐意收到你的反馈意见!
我用我的ios App测试我的FB应用程序已经有一段时间了,只使用沙盒应用程序和我的管理员帐户; 它工作得很好.
现在,我已经在我的fb应用程序中禁用了沙盒模式,让我的一些FB朋友测试应用程序.
每当他们尝试从iPhone应用程序连接时,他们会得到以下显示:
"myApp错误配置Facebook登录"
并且错误是:com.facebook.sdk:ErrorLoginFailedReason = invalid_client(错误2)
在任何地方都找不到任何关于它的信息.
另外(不知道是否重要),我不在我的iPhone上使用Facebook本机应用程序(所以我通过Safari登录),而我的朋友做(并从Facebook本机应用程序获取错误).
一般
我正在尝试在C#中编写一个非常简单的TCPIP客户端服务器来连接到具有端口号的IP地址,并询问非常简单的行命令,然后将回复放在网格箱,图形或其他显示选项中.
我已经在网上找到了一个可以下载的实用程序,由Jayan Nair编写,这似乎正确地发送消息,并收到回复确定.
当我尝试将回复数据加载到richtext或GridView时出现问题.
我得到的错误消息是: - System.InvalidOperationException
我问过微软论坛,他们给了我一个非常复杂,含糊不清和过度参与的关于我应该做什么的指示,这涉及一些名为INVOKE和BeginInvoke的东西,而且他们整个事情似乎都是一个项目;它自己对.
我所追求的只是一个有效的例子,而不是太复杂.
这是代码: -
try
{
SocketPacket theSockId = (SocketPacket)asyn.AsyncState;
int iRx = theSockId.thisSocket.EndReceive(asyn);
char[] chars = new char[iRx + 1];
System.Text.Decoder d = System.Text.Encoding.UTF8.GetDecoder();
int charLen = d.GetChars(theSockId.dataBuffer, 0, iRx, chars, 0);
//
System.String szData = new System.String(chars);
richTextRxMessage.Text = szData; // fails
//textBox1.Text = szData; // also fails
WaitForData();
}
Run Code Online (Sandbox Code Playgroud)
这是错误信息: -
base {System.Windows.Forms.TextBoxBase} = {Text = '((System.Windows.Forms.RichTextBox) (((System.Windows.Forms.RichTextBox)(richTextRxMessage)))).Text' threw an exception of type 'System.InvalidOperationException'}
Run Code Online (Sandbox Code Playgroud)
附加信息是: - szData包含大约6300个字符,包括制表符(9)和返回(13),并且与服务器发送的消息一致我也尝试使用文本框而不是richtext,结果相同
对于那些感兴趣
这是Microsoft链接 …
我目前正在使用SourceTree作为Windows的GUI Git客户端,但最近发现了GitEye的存在.
我想知道你使用哪一个,推荐,以及为什么.
是否可以从客户端向所有传出的cxf连接添加标头.
使用Spring 3.0和CXF 2.6.0
想象一下,我有一个完全实现的REST API,它也提供了HATEOAS.
假设我浏览了根,除了自我链接之外,还返回了两个其他链接(例如一个for /users和one for /orders).据我所知,HATEOAS消除了对带外信息的需求.客户应该如何知道什么users意思?语义存储在哪里?
我知道这是一个愚蠢的问题,但我真的很想知道.