您好,登錄后才能下訂單哦!
本篇內容主要講解“Asp.net core與golang web如何測試”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Asp.net core與golang web如何測試”吧!
下面是測試環境:
CPU:E3-1230 v2
內存:16G
電腦有點不給力
操作系統:Centos7.0(虛擬機單核2G內存)
asp.net core rc2
golang v1.7beta1
下面是各自的代碼:
go
package
main
import
(
"fmt"
"net/http"
)
func
main() {
fmt.Println(
"This is webserver base!"
)
//第一個參數為客戶端發起http請求時的接口名,第二個參數是一個func,負責處理這個請求。
http.HandleFunc(
"/login"
, loginTask)
//服務器要監聽的主機地址和端口號
err := http.ListenAndServe(
"192.168.199.236:8081"
, nil)
if
err != nil {
fmt.Println(
"ListenAndServe error: "
, err.Error())
}
}
func
loginTask(w http.ResponseWriter, req *http.Request) {
//獲取客戶端通過GET/POST方式傳遞的參數
req.ParseForm()
fmt.Fprint(w,
"Hello World!"
)
}
C#
public
class
MyHandlerMiddleware
{
// Must have constructor with this signature, otherwise exception at run time
public
MyHandlerMiddleware(RequestDelegate next)
{
// This is an HTTP Handler, so no need to store next
}
public
async Task Invoke(HttpContext context)
{
await context.Response.WriteAsync(
"Hello World!"
);
}
// ...
}
public
class
Startup
{
public
void
ConfigureServices(IServiceCollection services)
{
}
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
public
void
Configure(IApplicationBuilder app)
{
app.MapWhen(context => {
return
context.Request.Path.ToString().EndsWith(
"jjj.go"
); }, ap =>
{
ap.UseMiddleware<MyHandlerMiddleware>();
});
}
}
都是簡單路由和簡單返回字符串
從測試結果看,asp.net core更好一些,包括響應時間和并發數。按理說go應該比.net core快才對。希望各位大神再多做對比測試來反駁我,我測試N次后都是這個結果
不過在windows環境下,golang的并發能到6000左右,而.net core依然在4600多,不過響應速度.net core依然比golang快一些,這個我有點費解。
到此,相信大家對“Asp.net core與golang web如何測試”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。