一个极其简单的web服务程序
// download CloudGo-io
go get github.com/DanielXuuuuu/CloudGo-io
// download packages
go get github.com/spf13/pflag
go get github.com/urfave/negroni
go get github.com/gorilla/mux
go get github.com/unrolled/render
// run CloudGo-io
go run main.go [-p]
-p指定监听端口号,默认为8080
- 熟悉 go 服务器工作原理
- 基于现有 web 库,编写一个简单 web 应用类似 cloudgo
- 支持静态文件服务
- 支持简单 js 访问
- 提交表单,并输出一个表格
- 对
/unknown给出开发中的提示,返回码5xx
- 使用 curl 工具访问 web 程序
- 对 web 执行压力测试
实际上,Negroni不是一个框架,它是为了方便使用 net/http 而设计的一个库而已。由于本次作业中使用Negroni已经可以实现全部功能,我就没有使用框架。
Negroni 是Web 中间件,是一个具备微型、非嵌入式、鼓励使用原生 net/http 库特征的中间件。
-
测试环境:Windows 10 版本号1903
-
运行终端:Windows Terminal (Preview)
-
测试方式:浏览器访问
在static文件夹中添加了.html文件后,就会显示如下网页,而不是资源列表
该页面在加载时,会通过Ajax请求http://localhost:7777/api/test,得到作者(我)的姓名和ID。
我们通过curl工具访问,可以看的更清楚
查看static/css文件夹
查看style.css文件具体内容
按提示填写信息后,点击按钮提交表单
登入后返回用户信息表格
返回码为501
AB的全称为Apache Bench,是Apache自带的网络压力测试工具, 用以测试HTTP请求的服务器性能,也是业界比较流行和简单易用的一种压力测试工具包。
测试结果如下:
- -n requests:在测试会话中所执行的请求总个数;
- -c concurrency:一次产生的请求个数。默认是一次一个。









