笛卡( DizKaz)
我调查过,这类社区产品已经有不少人做过了,但是,基于自己长期积累的一些小想法,以及为了练习一下新技术(第一次使用 go 写东西),就还是动手做了。
麻雀虽小,五脏俱全,一个投票评论类社区该有的都有,欢迎来玩。
关于响应时间的计算原理:
我是从第一个 HTTP 中间件收到请求开始记录时间戳,存储在 startTime
变量, 该变量放到 r.Context()
中,然后在页面模板中读取 startTime
, 用渲染位置的 time.Now()
值减去前面的 startTime
获得的时间差。
之后我考虑公开源代码,到时候大家可以看到相关实现,没有任何需要造假的地方。如果真的那么快,我只能说go确实很厉害。另外,我用的是 chi
这个比较轻量的路由工具进行开发,没有那些笨重的框架,目前程序跑在 DigitalOcean 的一个最低配置的单核云主机上。
1
dcsite 2023-12-18 10:09:54 +08:00
很不错!让我想起 18 年前的冬天,用 PHP 写的 BBS + Group 系统了。
|
2
stinkytofu 2023-12-18 10:14:36 +08:00 1
响应时间 1ms 造假了, 我 F12 看了一下,资源加载都是几百毫秒, 小兄弟做人要诚实, 告诉我你这个 1ms 是怎么算出来的
|
3
null113 2023-12-18 10:34:58 +08:00
响应时间:0ms HTML 渲染时间:0ms
这个是怎么算的 |
4
falcon05 2023-12-18 10:40:29 +08:00 via iPhone
@stinkytofu 那是服务器生成页面的时间吧,v2ex 页脚也有,62ms 。
|
5
Kholin OP @stinkytofu 响应时间是之从服务端程序接收到 HTTP 请求,到数据被渲染到该页面位置的时候的时间,不包括从客户端发送数据到服务器,以及从服务器把数据传回来的时间,这部分属于网络连接和传输数据的时间,跟网络环境有关,所以没有计算在内。
另外这个响应时间是包含了 HTML 渲染时间的,一般时间长度取决于页面数据结构的复杂程度。 |
6
Kholin OP @null113 怎么会是 0ms ,这个我也有点奇怪,我从开发到上线都没看到过这么快的处理速度,我这里一般最快是几毫秒,最慢是几百毫秒,我现在访问主页一般是 20-50ms 的样子
|
7
null113 2023-12-18 13:10:02 +08:00
|
9
kuanat 2023-12-19 02:51:07 +08:00
chi 确实非常好用,无依赖,兼容 net/http 。小项目里极其灵活,大项目里无缝替换。
|
10
lifespy 2023-12-19 14:37:18 +08:00
邮箱错误
|
12
lifespy 2023-12-19 15:10:09 +08:00
|
13
Kholin OP @lifespy 抱歉,我这个报错提示不准确,大概率是密码格式错误了,我这里看不到你的密码,你可以根据输入框下面的格式提醒检查一下
|
14
weishao2011 2023-12-20 09:24:48 +08:00
等个开源
|
15
Nosub 2023-12-20 11:43:27 +08:00
很不错,很喜欢这种风格,希望坚持下去。
|
17
hanyuyu 2023-12-20 15:06:47 +08:00
|
18
GeekGao 2023-12-21 15:30:42 +08:00
开源吗? 支持匿名评论嘛?
|
19
Kholin OP @GeekGao 会开源,不过得等我有空整理好代码再说。目前本身就跟匿名差不多,只需要邮箱注册,或者直接用谷歌和 GitHub 账号授权登录也。
|
20
Kholin OP *行。
|
22
Kholin OP @GeekGao 其实做之前也知道大概会这样,毕竟现在整体的讨论环境也差很多,主要是完成自己的一些小想法吧,做出来了就好
|
23
GeekGao 2023-12-21 16:51:24 +08:00
@Kholin 我倒是希望有个这么个平台,类似热榜,但又不是抓平台评定的热榜。是各大博主发推转的 url 。类似 10 几年前的郑钧的玩聚 sr (可能很多人没听过)他 blog 里曾经提过他的推荐算法
|
24
GeekGao 2023-12-21 16:52:31 +08:00
|