开源大赛报名 #1734
luky116
announced in
Announcements
开源大赛报名
#1734
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
活动说明
开放原子开源基金会发起首届“开放原子开源大赛”,旨在联合开源组织、企事业单位、高等院校、中小学、科研院所、行业组织、投融资机构等多方资源,充分发挥产业链生态上下游的协同能力,基于开源共享、共建共治的原则共同举办。
大赛搭建面向全球开源领域的前沿技术竞争、优秀人才选拔、创新成果展示、商业转化引导和对接交流合作平台,广泛传播开源文化、普及开源知识、推广开源项目、提升开源技能,为推进开源生态繁荣和可持续发展提供动力和支撑。
活动链接:https://competition.atomgit.com/
任务说明
Serverless 架构是云原生架构最新的发展趋势。Serverless 架构可以将应用程序的开发周期缩到最短,它可以自动管理应用程序的部署和运行,从而减少了开发人员需要管理的基础架构和服务器的数量。同时,Serverless 架构可以根据应用程序的需求动态地分配和释放资源,从而实现更高的可伸缩性,使应用程序可以在高峰期自动扩展,在低峰期自动缩减资源,从而提高资源利用率,并保障了服务在任何时刻的高可用性。
Pika 社区一直致力于为开发者提供更加高效、可靠的数据存储和管理解决方案,所以我们一直在 Serverless 领域进行探索,希望能将 Pika 和 Serverless 技术结合起来,给用户带来更好的使用体验。
国内外开源的 KV 数据库,比如 RiakKV、Tigris、TiKV、Todis 等,都在 serverless 领域进行了探索,比如存算分离、云化存储、弹性伸缩、故障自愈等。但是,业界在这些领域的探索都还有很大改进的空间,比如,如何在云化存储时保证程序的性能等问题。所以说,Pika 规划的 serverless 架构在业界属于是前沿水平,也是一次在业界的冒险行动。附:国内外常用的开源的 KV 数据库竞品如下:
为了达成 Serverless 的能力,Pika 社区需要做一系列的开发工作,技术挑战赛题目参考方向如下:![img]

(一) 分布式
1、 高性能流量转发:设计和实现高性能的流量转发功能,能够有效处理大量的流量请求。
2、 负载均衡:实现流量的负载均衡,确保每个服务端点的负载均衡和性能优化。
3、 多租户隔离:实现多租户隔离功能,确保每个租户只能访问其拥有的资源,并提供相应的鉴权机制。
4、 资源管控:具备资源管控能力,监控和管理系统中的资源使用情况,实现有效的资源分配和管理。
(二) 云原生
1、 故障自愈:实现故障自愈功能,自动检测并采取相应措施进行恢复,确保系统的可靠性和稳定性。
2、 弹性伸缩:支持水平弹性伸缩,根据实际需求自动增加或减少计算资源,以满足不同流量负载的需求。
3、 云化存储:实现云化存储功能,利用云资源提供高效的共享存储方式,使多个服务实例能够共享和访问相同的存储资源,实现数据的共享和协作。
(三) Pika 核心功能
1、 存算分离:实现计算和存储的分离,使得所有计算节点可以共享存储资源,扩展计算节点时无需调整存储资源的分配。
2、 Raft 共识算法:引入Raft共识算法来改进Pika的主从同步方案,确保强一致性,并提高故障恢复的能力。
3、 无侵入观测:无侵入性且更细粒度地监控观测 Pika 的关键参数和指标,以便对Pika或RocksDB进行有效的监测和问题的追踪。
4、 事务:支持以原子方式批量执行多个Pika命令,确保数据的一致性和完整性。
5、 共享存储:在单个Pika节点上存储多个用户的数据,同时确保不同租户之间的性能隔离。
6、 数据流:实现类似消息队列的功能,通过类似Redis Stream的方式实现数据的传输和处理。
7、 访问控制:提供租户概念,并支持为不同用户分配不同的权限和访问控制。
8、 硬件加速:通过定制化硬件设计,提供针对Pika功能的硬件加速,以提升系统性能。
(四) 生态工具
1、 LUA脚本:引入Lua支持并整合LuaJIT解释器,提高执行Lua脚本的性能,增强Pika的灵活性和适用性。
2、 第三方扩展:提供开放的第三方接口规范,使用户能够编写自定义代码来扩展Pika的功能。
(五) 质量工程
1、 混沌测试:引入混沌测试工具,对Pika进行混沌测试,通过模拟大规模分布式系统中的异常情况,测试系统的稳定性和鲁棒性,并进行相应的故障处理和恢复。
参与形式
1、初赛阶段,参赛队伍或是个人可以挑选多个题目,并提交每个题目的技术设计方案,要求写清楚技术设计的思路和细节,初赛根据技术方案来确定是否入选;
2、代码提交至 Pika仓库:https://atomgit.com/OpenAtomFoundation/pika;
3、复赛阶段会对开发成果进行中期检验,要求开发团队提供当前进展的文档和代码,和主办方进行沟通;
4、决赛对初赛入围队伍进行排名,决赛需要对方案线上答辩,评审;
5、Pika 社区评选出获奖名单,由开放原子基金会发放奖金。
备注:目前 Pika 社区已经向开放原子基金会组织报名,正在审核中。大家对活动感兴趣,可以联系加微信:lycdream 进行报名。
Beta Was this translation helpful? Give feedback.
All reactions