创建服务

未匹配的标注

创建服务

M3O 是 Micro 即服务(Micro as a Service). 使用开源工具构建你的服务并部署到平台.

依赖

你可能需要

新的服务

要创建一个新的服务只需要执行以下命令

micro new helloworld

这很像用 Rails 生成一个简单的 helloworld 微服务的脚手架. 然后跟着输出的说明走来制原型.

要在本地运行你的服务并确保其正常工作, 只需要启动服务器并运行该服务.

# 启动服务器
micro server

# 设置为本地环境
micro env set local

# 启动你的服务
micro run helloworld

要检查服务的实际运行情况, 可以这样做

# 检查状态
micro status

# 检查是否已注册
micro services

# 检查日志
micro logs helloworld

接着我们干掉这个服务

# 干掉服务
micro kill helloworld

部署服务

要部署服务的话, 首先你需要将其代码上传到 Github. 我们暂不支持本地源上传.

# 初始化 git
cd helloworld && git init && git add . && git commit -m "My helloworld service"

# 在 github 创建一个新的仓库并推送上去
# assuming you created it, add the remote origin
git remote add origin https://github.com/$user/helloworld.git

# 推送
git push origin master

# 设置环境为平台模式
micro env set platform

# 确保已经登陆到平台
micro login

# 现在可以运行了
micro run github.com/$user/helloworld

很简单的说

调用服务

检查服务在运行并调用该服务. 另外因为是从源码构建的, 可能需要几分钟才能启动 (后续我们会优化这个情况)

# 检查服务状态
micro status

# 检查服务注册情况
micro services

# 调用指定的服务
micro helloworld --name=Alice

注意调用服务的符号. Micro 支持动态的 CLI 命令, 这意味着你的命名空间下的任何东西都将成为一个子命令.

micro [service] [endpoint] [args]

在终结点被提交的地方, 我们假设它是服务名称 + “呼叫” 方法, 例如 helloworld 成为 Helloworld. call 。如果这是一个问候方法,我们将假设Helloworld. 问候与c在c.micro helloworld greet

我们假设有一个服务名称 + “Call” 的方法是一个终结点. 例如 helloworld 会是 Helloworld.Call. 如果是 Greet 方法我们会假设 Helloworld.Greet 对应的命令为 micro helloworld greet.

参数可以作为标志传递 --name 表示的就是 Name 字段参数.

如果你想要一个使用纯 json 和原始方法的更简单方式

micro call helloworld Helloworld.Call '{"name": "Alice"}'

这样也是可以的

外部访问

如果你想通过 API 查询, 请查看 “入门” 章节下的 “公共接口” 部分内容.

得得你个得得

curl -H "Micro-Namespace: $(micro user namespace)" https://api.m3o.com/helloworld

本文章首发在 LearnKu.com 网站上。

上一篇 下一篇
taadis
讨论数量: 0
发起讨论 只看当前版本


暂无话题~