Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

“SOFA 星球”闯关计划 —— Layotto飞船 #438

Closed
13 of 20 tasks
wangxingyu000 opened this issue Mar 23, 2022 · 52 comments
Closed
13 of 20 tasks

“SOFA 星球”闯关计划 —— Layotto飞船 #438

wangxingyu000 opened this issue Mar 23, 2022 · 52 comments

Comments

@wangxingyu000
Copy link

wangxingyu000 commented Mar 23, 2022

一、这是一个什么样的游戏

近年来,整个时代技术潮流走向开源与开放,中国开发者已经成为全球开源体系中的重要力量。

互联网企业都在积极拥抱开源,中国已逐渐生长出越来越亮眼的开源项目。SOFAStack 社区作为蚂蚁集团开源经验丰富的金融级分布式架构开源社区,还不快来搭上开源的列车。

二、这是一艘什么样的飞船

SOFA 星球中有众多开源项目,就像是一艘艘的飞船构建起了星球的生态,本次闯关活动中的 Layotto 飞船就是其中重要的一艘,提供了各种分布式的能力,比如状态管理、配置管理、事件发布订阅等能力,以简化应用的开发。 是一款使用 Golang 开发的应用运行时, 旨在帮助开发人员快速构建云原生应用,帮助应用和基础设施解耦。

徘徊在开源门口的技术爱好者,你还在犹豫什么?

和社区共同成长,不再做开源旁观者!

第一关:先立一个小 flag

一、测试相关

二、翻译相关

三、开发相关

  • 优化 lock api demo,让所有 lock 组件公用一个 demo
  • 优化 sequencer api demo,让所有 sequencer 组件公用一个 demo
  • 优化 pubsub api demo,让所有 pubsub 组件公用一个 demo

第二关:来实现一些很酷的 feature 吧!

一、组件开发

  • 用 mysql 或 postgresql 实现分布式自增id 组件(已领)

二、 WASM 相关(已领完)

  • 升级由 Rust 开发的 Wasm demo. #255
  • 升级由 AssemblyScript 开发的 wasm demo. #256

三、工程化相关(已领完)

  • 自动化检查 code style。 我们可以在 github workflow 中使用go lint自动检查代码风格,检查的细节比如:
    代码里不能有中文;
    go xxx()起新协程的地方,必须有 recover;
    当然这几个例子实现不了也不要紧,只要有有价值的自动化检查就行

目前 ci/cd 使用 github actions,配置文件在这里 可以参考一些 github actions 优质教程:

1.https://www.ruanyifeng.com/blog/2019/09/getting-started-with-github-actions.html

2.http://www.ruanyifeng.com/blog/2019/12/github_actions.html(.http://www.ruanyifeng.com/blog/2019/12/github_actions.html)

  • 发布新版本时自动化构建: 修改 workflow,每次发布新版本时自动交叉编译出多平台的二进制文件(linux/mac下的二进制文件)、压缩(把二进制文件压缩),以便在发版报告中提供二进制文件或压缩文件。需要调研一下方案,看看是自己写一个构建脚本、用go的交叉编译功能,还是有现成的平台帮忙做构建。

第三关:我要成为中间件大师!

一、可观测性(已领)

集成 Jaeger 等系统
目前 Layotto 支持了 trace 能力,希望能够和 Skywalking,Jaeger 等可观测性相关平台做集成

  • 集成 Jaeger
  • 集成 zipkin
  • Some other tracing platform...

二、集成 istio 1.10(已领)

  • 让 layotto 的 invokeService API 能够复用 istio 的流量治理能力

三、WASM Lab

  • (已领)让 Layotto 支持通过接口调用的方式动态加载 wasm,以支持 FaaS 场景动态调度.#191

四、Layotto API

  • 设计实现 Redis API
  • 设计实现 Kafka API
    有了这个API后,我们可以用阿里云 SLS 组件来实现这个 API
  • 设计实现事务消息 API
  • 设计实现延迟消息 API

如何获取获任务能量:

1.通过第一关即可成为 Contributor ,获得电子和实体版证书,且收集一颗能量值。

2.通过第二关即可成为 member,且收集四颗能量值。

2.通过第三关即可成为 Reviewer,且收集十颗能量值。

打通所有关可受邀成为“ Layotto 飞船驾驶员”(活动 Reviewer),查看更多人的闯关 PR,认识更多对开源开兴趣志同道合的朋友,帮助更多人登陆 SOFA 星球啦~

能量兑换:

完成任意任务即可获得相应的能量值,累计能量可随时兑换礼品奖励。

● 一颗能量值- SOFA 创意贴纸、钥匙链

● 四颗能量值- Layotto 专属杯子

● 十颗能量值- SOFA 宇宙抱枕

● 十五颗能量值- SOFA 社区大礼包

四、活动流程

1.参与者登陆自己的 GitHub 账号,在活动页面查闯关任务

2.挑选出自己想要完成的任务,在本文下留言自己选择的任务, Layotto 飞船驾驶员”(项目 Reviewer )会将任务分发给您

3.在完成任务后提交 PR 给“ Layotto 飞船驾驶员”(项目 Reviewer )@seeflood

4.“ Layotto 飞船驾驶员”(活动 Reviewer )对提交的 PR 进行 Review

5.PR 审核通过后,由 “ Layotto 飞船驾驶员”合并到项目主干中

6.即通过本关

7.重复以上流程依次,通过接下来的关卡,直至完全通关

8.成为飞船驾驶员,询问是否愿意成为成为“ Layotto 飞船驾驶员”(帮助 Review 闯关 PR)

五、通关直通车

如果在活动任务中有中意的任务,或只想做某一高阶任务怎么办?

可以直接选择该任务,进行提交,PR 审核通过后,依旧能获取相应的通关能量获取奖品。

祝你闯关顺利!

有任何问题可以微信添加 SOFAGirl180419,备注飞船任务

@seeflood
Copy link
Member

感谢毛毛 !!!

● 自动化检查 Pull request 标题,必须满足类型(scope)主题的格式,以便让 commit history 可读性更好。#243

这个 @ZLBer 在搞

自动化构建: 自动化编译出多平台的二进制文件(linux/mac 下的二进制文件)、压缩(把二进制文件压缩)、构建 docker 镜像

这个先hold,等 @Xunzhuo @zhenjunMa 做前置准备

作为替代,我再录入些新任务哈

@GimmeCyy
Copy link
Contributor

你好@seeflood,我想要尝试为 state API 相关代码添加注释

@seeflood
Copy link
Member

@2019030007547 好呀欢迎~ 我在 issue #112 (comment) 里把这个任务 assign 给你

参考资料:
新手攻略:从零开始成为 Layotto 贡献者
可以参照quickstart demo把hello world跑起来,先了解项目是干啥的

使用State API进行状态管理的demo

代码在:

pkg/grpc/default_api/api_state.go
pkg/grpc/dapr/dapr_api_state.go
pkg/runtime/state

@nanjingboy
Copy link
Contributor

@seeflood 可以直接做这个吗?升级由 Rust 开发的 Wasm demo. #255

@seeflood
Copy link
Member

seeflood commented Apr 7, 2022

@nanjingboy 当然可以,欢迎!我assign 给你哈
遇到问题可以找我,群聊或者github都行

@nanjingboy
Copy link
Contributor

@nanjingboy 当然可以,欢迎!我assign 给你哈 遇到问题可以找我,群聊或者github都行

OK,BTW,群聊指的是?还有二维码?

@seeflood
Copy link
Member

seeflood commented Apr 8, 2022

@GimmeCyy @nanjingboy hi, 我们拉了个微信群,可以微信添加 SOFAGirl180419 备注飞船任务,拉您进群哈~

@LXPWing
Copy link
Member

LXPWing commented Apr 12, 2022

@seeflood 我试下” 提供一个 Layotto 集成 Prometheus 的示例 Demo“这个feature

@seeflood
Copy link
Member

@LXPWing 好呀好呀,我建了个issue assign给你
#466

@Holdonbei
Copy link
Contributor

hello,我申请一个为 actuator 相关代码添加注释的任务

@seeflood
Copy link
Member

seeflood commented Apr 13, 2022

@Holdonbei 好呀欢迎!我 assign 给你哈,见 #112 (comment)

@Holdonbei
Copy link
Contributor

Holdonbei commented Apr 13, 2022 via email

@wangxingyu000
Copy link
Author

hello,我申请一个为 actuator 相关代码添加注释的任务

hello 辛苦微信添加 SOFAGirl180419,备注飞船任务,反馈下任务困难和进度🌹

@GimmeCyy
Copy link
Contributor

@seeflood 我想尝试用 mysql 实现分布式自增id 组件

@seeflood
Copy link
Member

seeflood commented Apr 20, 2022

@GimmeCyy 感谢帮助!
你可以发个"用 mysql 实现分布式自增id 组件"的 issue (比如像#150 这样) 然后我们把 issue assign 给你~

参考资料:
组件开发指南
快速开始:使用Sequencer API生成分布式唯一、自增id
Sequencer API设计文档
组件配置说明

@azhsmesos
Copy link
Contributor

你好 ,我希望可以用 mysql 或 postgresql 实现分布式自增id 组件,想参与该任务

@seeflood
Copy link
Member

seeflood commented May 10, 2022

@azhsmesos 欢迎加入! “用 mysql 实现分布式自增 id组件” 这个事情 @GimmeCyy 已经在做了,你可以认领“用 postgresql 实现分布式自增id 组件” 哈
你可以发个"用 postgresql 实现分布式自增id 组件"的 issue (比如像 #489 这样) 然后我们把 issue assign 给你~

参考资料:
组件开发指南
快速开始:使用Sequencer API生成分布式唯一、自增id
Sequencer API设计文档
组件配置说明

@Holdonbei
Copy link
Contributor

Holdonbei commented May 10, 2022 via email

@azhsmesos
Copy link
Contributor

@azhsmesos 欢迎加入! “用 mysql 实现分布式自增 id组件” 这个事情 @GimmeCyy 已经在做了,你可以认领“用 postgresql 实现分布式自增id 组件” 哈 你可以发个"用 postgresql 实现分布式自增id 组件"的 issue (比如像 #489 这样) 然后我们把 issue assign 给你~

参考资料: 组件开发指南 快速开始:使用Sequencer API生成分布式唯一、自增id Sequencer API设计文档 组件配置说明

您好,已经提issue了,issue序号544

@codedededi
Copy link
Contributor

@seeflood 想了解下第一关是只剩下 #415 吗,还是说其他也可选?

@wangxingyu000
Copy link
Author

@seeflood 想了解下第一关是只剩下 #415 吗,还是说其他也可选?

文档相关合测试相关的都可以领取的
还有为 tcpdump 相关代码添加注释

@codedededi
Copy link
Contributor

@wangxingyu000 3Q,我先对比一下再选择任务

@wangxingyu000
Copy link
Author

@wangxingyu000 3Q,我先对比一下再选择任务

我们的第一关任务都更新了哟,可以看下。有任何问题可以微信添加 SOFAGirl180419,备注飞船任务

@GimmeCyy
Copy link
Contributor

@seeflood 我想尝试”优化 sequencer api demo,让所有 sequencer 组件公用一个 demo“任务

@codedededi
Copy link
Contributor

@seeflood 想确定下怎么理解,【所有 xx 组件公用一个 demo】类型的任务,是指不同类型的demo共用一套流程吗?通过参数或者配置区分类型

@NTH19
Copy link
Contributor

NTH19 commented May 19, 2022

@seeflood 我想尝试 #545

@seeflood
Copy link
Member

seeflood commented May 19, 2022

@seeflood 我想尝试 #545

@NTH19 感谢!可以在 #545 下面留言,我们assign 给您

@github-actions
Copy link

This issue has been automatically marked as stale because it has not had recent activity in the last 30 days. It will be closed in the next 7 days unless it is tagged (pinned, good first issue or help wanted) or other activity occurs. Thank you for your contributions.

@github-actions github-actions bot added the stale label Sep 15, 2022
@Holdonbei
Copy link
Contributor

Holdonbei commented Sep 15, 2022 via email

@github-actions github-actions bot removed the stale label Sep 16, 2022
@Holdonbei
Copy link
Contributor

Holdonbei commented Oct 11, 2022 via email

@github-actions
Copy link

This issue has been automatically marked as stale because it has not had recent activity in the last 30 days. It will be closed in the next 7 days unless it is tagged (pinned, good first issue or help wanted) or other activity occurs. Thank you for your contributions.

@github-actions github-actions bot added the stale label Nov 11, 2022
@Holdonbei
Copy link
Contributor

Holdonbei commented Nov 11, 2022 via email

@github-actions github-actions bot removed the stale label Nov 12, 2022
@github-actions
Copy link

This issue has been automatically marked as stale because it has not had recent activity in the last 30 days. It will be closed in the next 7 days unless it is tagged (pinned, good first issue or help wanted) or other activity occurs. Thank you for your contributions.

@github-actions github-actions bot added the stale label Dec 13, 2022
@Holdonbei
Copy link
Contributor

Holdonbei commented Dec 13, 2022 via email

@github-actions github-actions bot removed the stale label Dec 14, 2022
@github-actions
Copy link

This issue has been automatically marked as stale because it has not had recent activity in the last 30 days. It will be closed in the next 7 days unless it is tagged (pinned, good first issue or help wanted) or other activity occurs. Thank you for your contributions.

@github-actions github-actions bot added the stale label Jan 14, 2023
@Holdonbei
Copy link
Contributor

Holdonbei commented Jan 14, 2023 via email

@github-actions github-actions bot removed the stale label Jan 15, 2023
@github-actions
Copy link

This issue has been automatically marked as stale because it has not had recent activity in the last 30 days. It will be closed in the next 7 days unless it is tagged (pinned, good first issue or help wanted) or other activity occurs. Thank you for your contributions.

@github-actions github-actions bot added the stale label Feb 14, 2023
@Holdonbei
Copy link
Contributor

Holdonbei commented Feb 14, 2023 via email

@github-actions github-actions bot removed the stale label Feb 15, 2023
@github-actions
Copy link

This issue has been automatically marked as stale because it has not had recent activity in the last 30 days. It will be closed in the next 7 days unless it is tagged (pinned, good first issue or help wanted) or other activity occurs. Thank you for your contributions.

@github-actions github-actions bot added the stale label Mar 18, 2023
@Xunzhuo
Copy link
Member

Xunzhuo commented Mar 18, 2023

/area community

@github-actions
Copy link

This issue has been automatically marked as stale because it has not had recent activity in the last 30 days. It will be closed in the next 7 days unless it is tagged (pinned, good first issue or help wanted) or other activity occurs. Thank you for your contributions.

@github-actions github-actions bot added the stale label Apr 19, 2023
@github-actions
Copy link

This issue has been automatically closed because it has not had activity in the last 37 days. If this issue is still valid, please ping a maintainer and ask them to label it as pinned, good first issue or help wanted. Thank you for your contributions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

10 participants