问题描述
因此,最近我一直在为广播控制制作服务器,但是我在阅读线路时遇到了一些问题。当连接进入时,我正在创建一个新线程,这就是处理连接的地方。所有数据都在被调用的URL中提供。例如:
$FinalData = [ 'exists' =>
!!fopen($CSVpath,"r")
];
要么
/controllerupdate/?_=1597968275949
。它们根据URL从混合器返回不同的内容。其他所有事物的处理工作最少(平均
不过,/api/
最多需要花费700毫秒来通话,这是广播时的年龄。
这是代码块:
String line = br.readLine()
@Override
public void run() {
String path = "";
try {
//BufferedReader br = new BufferedReader(new InputStreamReader(this.is));
BufferedReader in = new BufferedReader(new InputStreamReader(this.s.getInputStream()));
long timeIn = System.currentTimeMillis();
//String request = br.readLine(); // Now you get GET index.html HTTP/1.1
String line;
line = in.readLine();
long t = (System.currentTimeMillis() - timeIn);
String[] requestParam = line.split(" ");
path = requestParam[1];
if(t > 50) {
System.out.println("T1: " + path + " :: " + t);
}
//Rest of the processing code is here
} catch (Exception e) {
e.printstacktrace();
}
}
执行连接的程序是C#程序:
Listening for connection on port 8080 ....
1597968951950 :: T1: /controllerupdate/?_=1597968950775 :: 187
1597968952013 :: T1: /api/ :: 766
1597968953450 :: T1: /controllerupdate/?_=1597968950778 :: 203
1597968953950 :: T1: /api/ :: 453
1597968954950 :: T1: /controllerupdate/?_=1597968950781 :: 203
1597968955950 :: T1: /api/ :: 703
1597968956450 :: T1: /controllerupdate/?_=1597968950784 :: 203
1597968956950 :: T1: /api/ :: 125
1597968957951 :: T1: /controllerupdate/?_=1597968950787 :: 204
1597968958951 :: T1: /api/ :: 345
1597968959450 :: T1: /controllerupdate/?_=1597968950790 :: 203
1597968960950 :: T1: /controllerupdate/?_=1597968950793 :: 203
1597968960950 :: T1: /api/ :: 453
致电者:
private async Task<String[]> doGetRequestWithError(String url)
{
if (!url.StartsWith("http"))
{
url = "http://" + url;
}
//Console.WriteLine(url);
try
{
HttpClient httpClient = new HttpClient();
HttpResponseMessage result = await httpClient.GetAsync(url).ConfigureAwait(false);
String error = result.StatusCode.ToString();
String content = await result.Content.ReadAsstringAsync();
return new String[] { content,error };
}
catch (Exception e)
{
Console.WriteLine(e.StackTrace);
Console.WriteLine("ERROR: " + url);
}
return new string[] { "","" };
}
认为该日志中运行缓慢的是来自Ajax调用:
Task<String[]> tsk = this.doGetRequestWithError(this.server + "/mixer?id=" + this.id + "&function=next");
因此,我只是想知道我要去哪里错了?我以前从未遇到过这个问题!
提前谢谢!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)