Skip to content

rpc使用咨询 #19

@duanzonglong

Description

@duanzonglong

rpc服务端
package main

import (
"fmt"
"github.com/micro-plat/hydra"
"github.com/micro-plat/hydra/hydra/servers/rpc"
)

func main() {

//创建app
app := hydra.NewApp(
	hydra.WithPlatName("test"),
	hydra.WithSystemName("baseserver"),
	hydra.WithRegistry("lm://."),
	hydra.WithServerTypes(rpc.RPC),
)
hydra.Conf.RPC("192.168.31.221:8090")

//注册服务
app.RPC("/hello", func(ctx hydra.IContext) interface{} {
	fmt.Println("rpc hello")
	return "hello world"
})

//启动app
app.Start()

}
go build xxx.go
.\xxx.exe conf install
.\xxx.exe run

api服务端
package main

import (
"github.com/micro-plat/hydra"
"github.com/micro-plat/hydra/hydra/servers/http"
"github.com/micro-plat/lib4go/errs"
)

func main() {

//创建app
app := hydra.NewApp(
	hydra.WithPlatName("test"),
	hydra.WithSystemName("apiserver"),
	hydra.WithRegistry("lm://."),
	hydra.WithServerTypes(http.API),
	hydra.WithDebug(),
)
hydra.Conf.API("8080")

//注册服务
app.API("/hello", func(ctx hydra.IContext) interface{} {
	rspn := ctx.Invoke("rpc://192.168.31.221:8090")

	if !rspn.IsSuccess() {
		return errs.NewErrorf(rspn.GetStatus(), "RPC请求错误:%+v", rspn.GetError())
	}
	return rspn
})

//app.Micro()

//启动app
app.Start()

}

go build xxx.go
.\xxx.exe conf install
.\xxx.exe run
报错信息:
[2023/01/09 22:38:59.209424][i][8dadd182d]api.request: GET /hello from 192.168.199.68
[2023/01/09 22:38:59.209424][e][8dadd182d]调用RPC服务出错:rpc.client连接到服务器失败:lm://.(3)(err:rpc.client.resolver target err:未找到服务提供程序:/192/168/31/221:8090)
[2023/01/09 22:38:59.209424][e][8dadd182d]RPC请求错误:请求发生错误:rpc.client连接到服务器失败:lm://.(3)(err:rpc.client.resolver target err:未找到服务提供程序:/192/168/31/221:8090)

环境信息:win10 go版本 1.19.4

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions