Server:
type MyDBService struct {}
func(ms *MyDBService) GetDbName(port int,dbName *string) error {
if port==1521{
*dbName="Oracle"
}else if port==3306{
*dbName="MySQL"
}else{
*dbName="none"
}
return nil
}
func main(){
lis,_:=net.Listen("tcp",":8081")
rpc.Register(new(MyDBService))
for{
client,err:=lis.Accept()
if err!=nil{
panic(err)
}
rpc.ServeConn(client)
}
}
Client:
func main() {
client, err := rpc.Dial("tcp", ":8081")
if err != nil {
panic(err)
}
dbName := ""
err = client.Call("MyDBService.GetDbName", 1521, &dbName)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(dbName)
}