1 Star 0 Fork 0

kean/redis

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
serve.go 1.09 KB
一键复制 编辑 原始数据 按行查看 历史
package redis
import (
"crypto/tls"
"github.com/redis-go/redcon"
"time"
)
// Run runs the default redis server.
// Initializes the default redis if not already.
func Run(addr string) error {
return Default().Run(addr)
}
// Run runs the redis server.
func (r *Redis) Run(addr string) error {
go r.KeyExpirer().Start(100*time.Millisecond, 20, 25)
return redcon.ListenAndServe(
addr,
func(conn redcon.Conn, cmd redcon.Command) {
r.HandlerFn()(r.NewClient(conn), cmd)
},
func(conn redcon.Conn) bool {
return r.AcceptFn()(r.NewClient(conn))
},
func(conn redcon.Conn, err error) {
r.OnCloseFn()(r.NewClient(conn), err)
},
)
}
// Run runs the redis server with tls.
func (r *Redis) RunTLS(addr string, tls *tls.Config) error {
go r.KeyExpirer().Start(100*time.Millisecond, 20, 25)
return redcon.ListenAndServeTLS(
addr,
func(conn redcon.Conn, cmd redcon.Command) {
r.HandlerFn()(r.NewClient(conn), cmd)
},
func(conn redcon.Conn) bool {
return r.AcceptFn()(r.NewClient(conn))
},
func(conn redcon.Conn, err error) {
r.OnCloseFn()(r.NewClient(conn), err)
},
tls,
)
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/kean123/redis.git
[email protected]:kean123/redis.git
kean123
redis
redis
master

搜索帮助