【问题标题】:How to fix port for Go-Micro Service如何修复 Go-Micro 服务的端口
【发布时间】:2020-01-06 05:33:01
【问题描述】:

我正在运行 go-micro ,但无法为我的服务设置常量端口。有什么方法可以将端口分配给服务。

如果我正在运行我的服务,它会在每次执行时提供不同的端口。我希望它修复。

【问题讨论】:

  • 您使用什么来创建服务?任何框架?码头工人?分享代码。
  • Micro Cli 创建服务,我没有使用 docker。我们正在开发中。开发时只需要修复运输端口。
  • 在创建 docker 镜像时指定端口映射。分享你的 docker run 命令
  • Docker 不是我项目开发的正确方式

标签: go go-micro


【解决方案1】:

您可以在您必须为您的微服务创建的服务器中指定端口。由于您尚未共享任何示例代码,因此建议的解决方案可能对您有用:

 service := micro.NewService(
    micro.Name(serviceName),
    micro.Server(
      server.NewServer(
        server.Name(serviceName),
        server.Address(":8080"),
      ),
    ),
  )

  service.Init()

如果这不是您使用 go-micro 的方式,请告诉我。

【讨论】:

  • 我已将 Inbuild 环境变量用于自定义 PORT。谢谢
【解决方案2】:

由于没有提到go micro版本。 我已经使用 go-micro 版本 github.com/micro/go-micro/v2 v2.9.0 测试了上述答案。 但是我遇到了另一个问题,go-micro 服务器在固定端口上运行得非常好。但是,当我通过固定端口执行 gRPC 客户端时,响应对象返回恐慌。 一些正在处理代码并找到以下修复程序

   service := micro.NewService(
      micro.Name(serviceName),
      micro.Version("1.0"),
      micro.Address(":8080"),
  )

通过上述修复,服务器设置为固定端口,gRPC 客户端也成功响应。

【讨论】:

    猜你喜欢
    • 2020-06-25
    • 1970-01-01
    • 2014-02-23
    • 1970-01-01
    • 1970-01-01
    • 2023-01-18
    • 1970-01-01
    • 2018-09-30
    • 2018-10-26
    相关资源
    最近更新 更多