当前位置: 首页 > news >正文

国外免费psd网站wap盛唐建站

国外免费psd网站,wap盛唐建站,wordpress页面怎么用,已经有网站怎么做淘宝客服务发现 Registry 接口分为两个#xff0c;Registrar 为实例注册和反注册#xff0c;Discovery 为服务实例列表获取 创建一个 Discoverer 服务间的通信使用的grpc#xff0c;放到data层#xff0c;实现的是从uses服务调用orders服务 app/users/internal/data.go 加入 New…服务发现 Registry 接口分为两个Registrar 为实例注册和反注册Discovery 为服务实例列表获取 创建一个 Discoverer 服务间的通信使用的grpc放到data层实现的是从uses服务调用orders服务 app/users/internal/data.go 加入 NewDiscovery和 NewOrderServiceClient需要把新加的2个方法加入到 ProviderSet 需要把新生成的orderClient注入到Data里面 orderClient orders.OrderClient package dataimport (contextgithub.com/go-kratos/kratos/contrib/registry/nacos/v2github.com/go-kratos/kratos/v2/loggithub.com/go-kratos/kratos/v2/middleware/recoverygithub.com/go-kratos/kratos/v2/registrygithub.com/go-kratos/kratos/v2/transport/grpcgithub.com/google/wiregithub.com/nacos-group/nacos-sdk-go/clientsgithub.com/nacos-group/nacos-sdk-go/common/constantgithub.com/nacos-group/nacos-sdk-go/vogorm.io/driver/mysqlgorm.io/gormtimexgs_kratos/gen/config/usersxgs_kratos/gen/orders )// ProviderSet is data providers. var ProviderSet wire.NewSet(NewData, NewDiscovery, CreateRegister, NewOrderServiceClient, NewUserRepo)// Data . type Data struct {// TODO wrapped database clientdb *gorm.DBlog *log.HelperorderClient orders.OrderClient }// NewData .func NewData(c *conf.Data, logger log.Logger, client orders.OrderClient) (*Data, func(), error) {cleanup : func() {log.NewHelper(logger).Info(closing the data resources)}db, err : gorm.Open(mysql.Open(c.Database.Source), gorm.Config{})if err ! nil {log.Fatalf(failed to connect database: %v, err)panic(err)}return Data{db: db,log: log.NewHelper(logger),orderClient: client,}, cleanup, nil }// NewDiscovery 服务发现 func NewDiscovery(conf *conf.Data) registry.Discovery {sc : []constant.ServerConfig{{IpAddr: conf.Nacos.Addr,Port: conf.Nacos.Port,},}cc : constant.ClientConfig{NamespaceId: conf.Nacos.NamespaceId,TimeoutMs: 5000,}client, err : clients.NewNamingClient(vo.NacosClientParam{ClientConfig: cc,ServerConfigs: sc,},)if err ! nil {panic(err)}r : nacos.New(client)return r }// NewOrderServiceClient orders 服务客户端 func NewOrderServiceClient(r registry.Discovery) orders.OrderClient {conn, err : grpc.DialInsecure(context.Background(),grpc.WithEndpoint(discovery:///orders-xgs.grpc),grpc.WithDiscovery(r),grpc.WithTimeout(time.Second*2),grpc.WithMiddleware(recovery.Recovery(),),)if err ! nil {panic(err)}c : orders.NewOrderClient(conn)return c }在users下执行 wire 以ListUser方法为例子进行调用 app/users/internal/user.go package dataimport (contextfmtgithub.com/go-kratos/kratos/v2/logxgs_kratos/app/users/internal/bizxgs_kratos/app/users/internal/data/dalxgs_kratos/gen/ordersxgs_kratos/gen/users )//data 层处理数据的存储和读取type userRepo struct {data *Datalog *log.Helper }// NewUserRepo . r registry.Discovery, func NewUserRepo(data *Data, logger log.Logger) biz.UserRepo {return userRepo{data: data,log: log.NewHelper(logger),} }// CreateUser 创建用户 func (r *userRepo) CreateUser(ctx context.Context, req *users.CreateUserRequest) (*users.CreateUserReply, error) {user : dal.UserMo{Age: req.Age,Name: req.Name,Email: req.Email,}result : r.data.db.Create(user)if result.Error ! nil {return nil, result.Error}return users.CreateUserReply{Id: user.Id,}, nil }func (r *userRepo) ListUser(ctx context.Context, req *users.ListUserRequest) ([]*users.UserData, error) {//获取order服务的clientclient : r.data.orderClientorder, err : client.CreateOrder(ctx, orders.CreateOrderRequest{OrderNo: 1,})if err ! nil {return nil, err}fmt.Println(order)var results []dal.UserMores : r.data.db.Find(results)if res.Error ! nil {return nil, res.Error}var userDatas []*users.UserDatafor _, result : range results {userDatas append(userDatas, users.UserData{Id: result.Id,Name: result.Name,Age: result.Age,Email: result.Email,})}return userDatas, nil }从新生成一下代码  buf  generate 如果服务是分开部署的需要拿到对方的存根 proto 执行 kratos proto client xxx.proto生成client 分别启动users和orders 服务是都是注册成功的由于注册的是http和grpc所有后面拼接的有http和grpc调用的时候需要拼接上 postman请求看效果 看日志输出 users 再看orders服务的日志输出 项目的代码  码云 https://gitee.com/gebilaoxie/xgs_kratos.git
http://www.w-s-a.com/news/432967/

相关文章:

  • 大型做网站的公司有哪些wordpress注册链接无效
  • 推荐门户网站建设公司网站开发移动端
  • 公司网站的栏目设置成都十大监理公司排名
  • 安溪住房和城乡建设网站关岭县建设局网站
  • 网站域名注销备案徐州房产网
  • 筑聘网windows优化大师自动安装
  • 龙华高端网站设计门户网站建设方案公司
  • 网站开发作用网站建设哪家专业
  • 网站设计报告总结南宁商城网站推广公司
  • 淘宝做店招的网站免费网站建设自助建站
  • 重庆工信部网站绵阳公司网站建设
  • 购物网站开发流程制作企业网页
  • 定州哪里可以做网站建设项目环境影响登记表备案系统网站
  • 网站建设费属于广告费小猪网站怎么做的
  • 国内优秀设计网站站长哈尔滨微网站建设
  • 如何建设一个优秀的电商网站沐风seo
  • 从零开始学网站建设知乎安防网站下载
  • 打开网站弹出qq应用软件有哪些
  • 温州网站建设seo网站 如何做 中英文切换
  • 聊城做网站的公司资讯信阳 网站建设
  • 天津市工程建设交易网站查汗国珠海 网页设计
  • 龙果学院大型网站稳定性建设汾阳做网站
  • 湖北 个人网站备案时间域名查询备案查询
  • 网站推广方式校园网站怎么建
  • 长沙seo网站排名怎么在百度发帖
  • 织梦贷款网站模板做印章网站
  • 彭州做网站上海百度网络推广
  • 广州网站搭建快速提升网站排名荧光字网站
  • 15年做那些网站能致富做seo是什么意思
  • 各电商网站的特点网站制作2007