go-micro命令行学习
题记
上篇文章我们提到了go-micro有个CLI(提供命令行界面让我们和微服务进行交互),现在我们来简单的学习一下。
1、什么是go-micro.exe(CLI)?
go-micro
是一个命令行工具,用于管理和操作微服务。它提供了一系列命令,允许您进行各种操作,包括调用服务、创建新项目、生成项目模板文件、运行服务、列出服务等等。
2、go-micro.exe(CLI)安装
使用如下命令安装go-micro命令行:
1 | go install github.com/go-micro/cli/cmd/go-micro@latest |
使用go-micro --version
命令检查是否安装成功
3、学习go-micro命令
使用go-micro --help
可以查看所有命令,接下来是对一些命令的解释和示例
COMMANDS
- call: 该命令用于调用一个服务。
- 示例:
go-micro call helloworld Helloworld.Call '{"name": "John"}'
- 这个示例调用了名为
helloworld
的服务中的Helloworld.Call
方法,传递了一个 JSON 格式的参数{"name": "John"}
。
- 示例:
- completion: 该命令用于输出指定 shell(bash 或 zsh)的 shell 自动补全代码。
- 示例:
go-micro completion bash
- 这个示例输出适用于 bash shell 的自动补全代码。
- 示例:
- describe: 该命令用于描述一个资源。
- 示例:
go-micro describe helloworld
- 这个示例描述了名为
helloworld
的资源。
- 示例:
- generate: 该命令用于在事后生成项目模板文件。
- 示例:
go-micro generate
- 这个示例在当前目录下生成项目模板文件。
- 示例:
- new: 该命令用于创建一个新的项目模板。
- 示例:
go-micro new helloworld
- 这个示例创建了一个名为
helloworld
的新项目模板。
- 示例:
- run: 该命令用于构建并持续运行一个服务。
- 示例:
go-micro run github.com/auditemarlow/helloworld
- 这个示例构建并持续运行了位于
github.com/auditemarlow/helloworld
的服务。
- 示例:
- services: 该命令用于列出注册中心中的服务。
- 示例:
go-micro services
- 这个示例列出了注册中心中的所有服务。
- 示例:
- stream: 该命令用于创建一个服务流(service stream)。
- 示例:
go-micro stream helloworld
- 这个示例创建了一个名为
helloworld
的服务流。
- 示例:
GLOBAL OPTIONS
- –auth: 用于设置角色基础访问控制的身份验证。例如,
--auth service
。 - –auth_id: 用于客户端身份验证的账户ID。
- –auth_namespace: 设置用于服务身份验证账户的命名空间,默认为 “go.micro”。
- –auth_private_key 和 –auth_public_key: 用于JWT身份验证的私钥和公钥,以base64编码的PEM格式提供。
- –auth_secret: 客户端身份验证的账户密钥。
- –broker: 用于发布/订阅的消息代理,支持的选项有 http、nats 和 RabbitMQ。
- –broker_address: 消息代理的地址,使用逗号分隔的地址列表。
- –client: go-micro 的客户端类型,默认为 rpc。
- –client_pool_size: 设置客户端连接池的大小,默认为1。
- –client_pool_ttl: 设置客户端连接池的生存时间,默认为1分钟。
- –client_request_timeout: 设置客户端请求超时时间,默认为5秒。
- –client_retries: 设置客户端的重试次数,默认为1次。
- –config: 用于指定配置的来源。
- –help, -h: 显示帮助信息。
- –profile: 用于调试分析CPU和内存统计信息。
- –register_interval 和 –register_ttl: 分别设置服务注册的间隔和TTL(Time To Live)时间。
- –registry: 设置服务发现的注册中心,支持的选项有 etcd 和 mdns。
- –registry_address: 用于服务发现的注册中心地址,使用逗号分隔的地址列表。
- –runtime 和 –runtime_source: 设置构建和运行服务的运行时。
- –selector: 用于选择节点进行查询的选择器。
- –server: go-micro 的服务器类型,默认为 rpc。
- –server_address: 设置服务器的绑定地址,默认为 “127.0.0.1:8080”。
- –server_advertise: 在注册发现时使用的地址。
- –server_id: 服务器的ID,如果未指定,则自动生成。
- –server_metadata: 用于定义服务器元数据的键值对列表。
- –server_name: 服务器的名称。
- –server_version: 服务器的版本号。
- –store: 用于键值存储的存储引擎。
- –store_address: 用于键值存储的地址列表。
- –store_database 和 –store_table: 用于指定存储引擎的数据库和表。
- –tracer: 用于分布式跟踪的跟踪器,支持的选项有 memory 和 jaeger。
- –tracer_address: 用于分布式跟踪的地址列表。
- –transport: 用于传输的传输机制,目前仅支持 http。
- –transport_address: 用于传输的地址列表。
- –version, -v: 打印版本信息。
- 标题: go-micro命令行学习
- 作者: Olivia的小跟班
- 创建于 : 2024-02-22 23:50:11
- 更新于 : 2024-02-22 23:58:46
- 链接: https://www.youandgentleness.cn/2024/02/22/go-micro命令行学习/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论