同步操作将从 YoMo/yomo 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
YoMo 是一套开源的实时边缘计算网关、开发框架和微服务平台,通讯层基于QUIC协议,更好的释放了未来5G等低时延网络的价值;为流式处理(Streaming Computing)设计的编解码器yomo-codec
能大幅提升计算服务的吞吐量;基于插件的开发模式,5分钟即可上线您的物联网实时边缘计算处理系统。YoMo关注在工业互联网领域,目的是打造国产化自主可控的工业实时边缘计算体系。
官网: yomo.run.
创建一个叫yomotest
的目录:
mkdir yomotest
cd yomotest
初始化项目:
go mod init yomotest
引入yomo
go get -u github.com/yomorun/yomo
echo.go
package main
import (
"github.com/yomorun/yomo/pkg/yomo"
)
func main() {
//// 运行echo plugin并监控4241端口,数据将会从YoMo Edge推送过来
// yomo.Run(&EchoPlugin{}, "0.0.0.0:4241")
// 开发调试时运行该方法,处于联网状态时,程序会自动连接至 yomo.run 的开发服务器,连接成功后,
// 该Plugin会每2秒收到一条Observed()方法指定的Key的Value
yomo.RunDev(&EchoPlugin{}, "localhost:4241")
}
// EchoPlugin 是一个YoMo Plugin,会将接受到的数据转换成String形式,并再结尾添加内容,修改
// 后的数据将流向下一个Plugin
type EchoPlugin struct{}
// Handle 方法将会在数据流入时被执行,使用Observed()方法通知YoMo该Plugin要关注的key,参数value
// 即该Plugin要处理的内容
func (p *EchoPlugin) Handle(value interface{}) (interface{}, error) {
return value.(string) + "✅", nil
}
// Observed 返回一个string类型的值,该值是EchoPlugin插件关注的数据流中的Key,该数据流中Key对应
// 的Value将会以对象的形式被传递进Handle()方法中
func (p EchoPlugin) Observed() string {
return "name"
}
// Name 用于设置该Plugin的名称,方便Debug等操作
func (p *EchoPlugin) Name() string {
return "EchoPlugin"
}
// Mold 描述`Observed`的值的数据结构
func (p EchoPlugin) Mold() interface{} {
return ""
}
go run echo.go
,您将会看到:% go run a.go
[EchoPlugin:6031]2020/07/06 22:14:20 plugin service start... [localhost:4241]
name:yomo!✅
name:yomo!✅
name:yomo!✅
name:yomo!✅
name:yomo!✅
^Csignal: interrupt
恭喜!您的第一个YoMo应用已经完成!
小提示: 如果您使用复合数据结构(Complex Mold), 请参考:yomo-echo-plugin。
First off, thank you for considering making contributions. It's people like you that make YoMo better. There are many ways in which you can participate in the project, for example: 首先感谢您的contributions,是您这样的人让YoMo能变得越来越好!参与YoMo项目有很多种方式:
提交bug🐛,请务必记得描述您所运行的YoMo的版本、操作系统和复现bug的步骤。
建议新的功能
在贡献代码前,请先阅读Contributing Guidelines
当然我们也有 Code of Conduct
Email us at yomo@cel.la. Any feedback would be greatly appreciated!
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。