我创建了一个Android应用,例如社交媒体应用。我正在使用ASP.NET Web服务来获取JSON数据或处理诸如INSERT,UPDATE,DELETE之类的数据。而且我正在使用MySQL数据库。
活动用户数约为2.5k,每天平均为1.5k。
无论如何,当我用“显示过程列表”控制过程列表时;在phpMyAdmin上,有很多过程;一些进程具有“睡眠”命令值。因此,这种情况会出现错误,例如降低应用程序速度,有时还会出现“ max_user_connections”。
因此,在完成Web Service上的数据库处理后,我关闭了所有连接,但是仍然存在该问题或错误。
[WebMethod]
public string ABC(int x, string y)
{
using (con = new MySqlConnection(conString))
{
List<Profile> result= new List<Profile>();
result.Add(new Profile
{
posts= ""
});
List<ClassA> resultA= new List<ClassA>();
query= "SELECT COUNT(FollowId) FROM Followings WHERE FUserId = " + x;
con.Open();
cmd = new MySqlCommand(query, con);
dr = cmd.ExecuteReader();
string count = "0";
while (dr.Read())
{
count = dr[0].ToString();
}
dr.Close();
con.Close();
query= "SELECT COUNT(FollowId) FROM Followings WHERE FollowingUserId = " + x;
con.Open();
cmd = new MySqlCommand(query, con);
dr = cmd.ExecuteReader();
string count2 = "0";
while (dr.Read())
{
count2 = dr[0].ToString();
}
dr.Close();
con.Close();
query= "SELECT .... FROM Posts WHERE UserId = " + x+ " ORDER BY PostId DESC LIMIT 30";
con.Open();
cmd = new MySqlCommand(query, con);
dr = cmd.ExecuteReader();
int i;
int count3 = 0;
while (dr.Read())
{
count3++;
i = 0;
resultA.Add(new ClassA
{
postId = Convert.ToInt32(dr[i]),
postUrl = dr[++i].ToString(),
... = Convert.ToInt32(dr[++i])
});
}
dr.Close();
con.Close();
string json = "";
if (resultA.Count > 0)
{
json = JsonConvert.SerializeObject(resultA);
}
result[0].posts = json;
json = "";
if (result.Count > 0)
{
json = JsonConvert.SerializeObject(result);
}
return json;
}
}
这是我的网络方法的任何示例。我在哪里弄错了?
感谢您的答复。