我创建了一个新的空 asp.net 核心项目并键入如下代码。但是 QPS 大约在 600 左右。(hello world test php 6000,asp.net core 10000,带有 PDO 的 php 在 1000 左右做同样的工作)
Ubuntu 20.04 ab -c 1000 -n 50000 http://localhost:4246/
app.UseEndpoints(endpoints =>
{
endpoints.MapGet("/", async context =>
{
var list = new List<Dictionary<string, string>>();
MySqlConnection myConnnect;
MySqlCommand sqlCmd;
myConnnect = new MySqlConnection(constructorString);
sqlCmd = new MySqlCommand();
sqlCmd.Connection = myConnnect;
sqlCmd.CommandText = "select * from location where parent_id=0";
await myConnnect.OpenAsync();
using (var reader = await sqlCmd.ExecuteReaderAsync(System.Data.CommandBehavior.CloseConnection))
{
while (await reader.ReadAsync())
{
var data = new Dictionary<string, string>();
data["id"] = reader.GetInt32(0).ToString();
data["spell_first"] = reader.GetString(2);
data["spell_full"] = reader.GetString(3);
data["name"] = reader.GetString(4);
list.Add(data);
}
}
await context.Response.WriteAsync("Hello World!");
});