github.com/qiuhoude/go-web@v0.0.0-20220223060959-ab545e78f20d/prepare/09_rpc/tcp/server.go (about) 1 package main 2 3 import ( 4 "github.com/qiuhoude/go-web/prepare/09_rpc/moudle" 5 "log" 6 "net" 7 "net/rpc" 8 ) 9 10 func main() { 11 rect := new(moudle.Rect) 12 //注册一个rect服务 13 rpc.Register(rect) 14 15 addr, err := net.ResolveTCPAddr("tcp", ":8000") 16 if err != nil { 17 log.Fatal(err) 18 } 19 listener, err := net.ListenTCP("tcp", addr) 20 if err != nil { 21 log.Fatal(err) 22 } 23 for { 24 conn, err := listener.Accept() 25 if err != nil { 26 continue 27 } 28 rpc.ServeConn(conn) 29 } 30 31 }