开源大赛报名 #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
-
活动说明
开放原子开源基金会发起首届“开放原子开源大赛”,旨在联合开源组织、企事业单位、高等院校、中小学、科研院所、行业组织、投融资机构等多方资源,充分发挥产业链生态上下游的协同能力,基于开源共享、共建共治的原则共同举办。
大赛搭建面向全球开源领域的前沿技术竞争、优秀人才选拔、创新成果展示、商业转化引导和对接交流合作平台,广泛传播开源文化、普及开源知识、推广开源项目、提升开源技能,为推进开源生态繁荣和可持续发展提供动力和支撑。
活动链接: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