背景 由于工作需要,在web端执行相关的部署操作,能够在页面实时展示部署任务的实时日志信息,使用到websocket来实现。 websocket
在linux中有一个tail命令,tail -f 可以实时的监控文件新增加的内容,如果用代码实现这个逻辑,可以使用这个包 go get github.com/hpcloud/tail 示例代码 package main import ( "fmt" "github.com/hpcloud/tail"
golang的高并发一大利器就是协程。gin里可以借助协程实现异步任务。 package main import ( "log" "time" "github.com/gin-gonic/gin" ) func main(){ router := gin.Default() router.GET("/sync", func(c *gin.Context) { time.Sleep(5 * time.Second) log.Println("Done! in path" + c.Request.URL.Path) }) router.GET("/async", func(c *gin.Context) { // 因为涉
最近遇到一个很尴尬的现象,现象如下: 在windows上部署了一个go web应用,运行一段时间项目就假死一样,telnet端口是通的,但调用接
环境 OS: CentOS 8.4 OpenResty: 1.19.9.1(手动编译) OpenResty prefix: /app/nginx lua_package_path "$prefix/lualib/?.lua;;"; 报错如下 2021/12/07 18:56:11 [error] 2383822#0: *1 lua entry thread aborted: runtime error: /app/nginx//lualib/resty/openssl/pkey.lua:13: module 'resty.openssl.include.x509' not found: no field package.preload['resty.openssl.include.x509'] no file '/app/nginx//lualib/resty/openssl/include/x509.lua' no file './resty/openssl/include/x509.lua' no file '/app/nginx/luajit/share/luajit-2.1.0-beta3/resty/openssl/include/x509.lua' no file '/usr/local/share/lua/5.1/resty/openssl/include/x509.lua' no file '/usr/local/share/lua/5.1/resty/openssl/include/x509/init.lua' no file '/app/nginx/luajit/share/lua/5.1/resty/openssl/include/x509.lua' no file '/app/nginx/luajit/share/lua/5.1/resty/openssl/include/x509/init.lua' 其
因wireguard已经合并至5.6内核中,刚好Alibaba Cloud Linux 3是5.10内核,结果测试下来没有wireguard模块, 因是CentOS
Golang各种数值占据的大小 int 类型大小为 8 字节 int8 类型大小为 1 字节 int16 类型大小为 2 字节 int32 类型大小为 4 字节 int64 类型大小为 8 字节 go语言中的int的
目的 hugo手动部署到github pages流程: 使用hugo生成静态网页 将静态网页push到建好的github pages repo中,一般是<
背景介绍 Debian 11 OpenResty 1.19.9.1 默认情况下,Nginx/OpenResty会启动一个root权限运行的master进程,之后再用指定的普通用户权限启动对应的
环境 CentOS 7 OpenResty 1.19.9.1 cosocket-mtls patch ngx_lua-0.10.20_01-cosocket-mtls.patch lua-resty-core-0.1.22_01-cosocket-mtls.patch lua-resty-http 为了支持mTLS功能,折腾的够呛,OpenResty官方又没支持,基于OpenResty的APISIX和Kong都有补