Go语言和ASP.NET的一般处理程序在处理WEB请求时的速度比较
Go语言和ASP.NET的一般处理程序在处理WEB请求时的速度比较
Go语言和ASP.NET的一般处理程序在处理WEB请求时的速度比较
1、首先写一个Go语言的简单WEB程序,就返回一个HelloWord!
package main
import (
f "fmt"
"log"
"net/http"
// "strings"
)
func sayhelloName(w http.ResponseWriter, r *http.Request) {
// r.ParseForm()
// f.Println(r.Form)
// f.Println("path", r.URL.Path)
// f.Println("scheme", r.URL.Scheme)
// f.Println(r.Form["url_long"])
// for k, v := range r.Form {
// f.Println("key:", k, "val:", strings.Join(v, "、"))
// }
f.Fprintln(w, "hello world!")
}
func main() {
http.HandleFunc("/", sayhelloName)
err := http.ListenAndServe(":8080", nil)
if err != nil {
log.Fatal("ListenAndServe:", err)
}
}
2、建一个Asp.net的Handler1.ashx的一般处理程序,并运行于IIS中。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace TESTWeb
{
/// <summary>
/// Handler1 的摘要说明
/// </summary>
public class Handler1 : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
context.Response.Write("hello world!");
}
public bool IsReusable
{
get
{
return false;
}
}
}
}
3、用C#写一个控制台程序,用来模拟发起10000次请求时,速度比较:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Text;
namespace TESTSpeed
{
class Program
{
static void Main(string[] args)
{
WebClient wc = new WebClient();
DateTime dt1 = DateTime.Now;
for (int i = 0; i < 10000; i++)
{
var result = wc.DownloadString("http://localhost:48563/handler1.ashx?t=" + DateTime.Now.Ticks);
}
DateTime dt2 = DateTime.Now;
Console.WriteLine("Asp.net一般处理程序用时:" + (dt2 - dt1).TotalMilliseconds);
WebClient wc2 = new WebClient();
DateTime dt3 = DateTime.Now;
for (int i = 0; i < 10000; i++)
{
var result = wc2.DownloadString("http://127.0.0.1:8080/?t=" + DateTime.Now.Ticks);
}
DateTime dt4 = DateTime.Now;
Console.WriteLine("Go语言用时:" + (dt4 - dt3).TotalMilliseconds);
}
}
}
4、测试结果:
Go语言用时:811.0464ms
Asp.net一般处理程序:14017.8017ms
5、结论:Go不是一般的快!!!!相差了17倍!!!
Go语言和ASP.NET的一般处理程序在处理WEB请求时的速度比较
https://www.dearcloud.cn/2015/12/05/20200310-cnblogs-old-posts/20151205-Go语言和ASP.NET的一般处理程序在处理WEB请求时的速度比较/