傲空间邀您一起开源之夏

383 阅读5分钟

目录

  • 傲空间社区介绍
  • 傲空间开源之夏任务介绍
    • 实现傲空间平台侧基础服务的 Java 语言 SDK
    • 实现傲空间平台侧基础服务的 golang 语言 SDK
    • 实现基于 MySQL、Redis 等常用中间件的分布式锁
    • GT server 与 GT client 开发 Web 管理功能
    • GT server 与 GT client 连接池增加支持 QUIC,与现有的的 TCP 协议实现兼容及实现智能切换策略
  • 参与方式

傲空间社区介绍

AO.space(傲空间)是一个以保护个人数据安全和隐私为核心的解决方案。通过端对端加密、基于设备认证等技术,确保用户完全掌控个人账号和数据。同时,采用平台透明转发、点对点加速、局域网直连等技术,让用户随时随地的极速访问个人数据。傲空间利用 PWA(Progressive Web App)和云原生技术,设计并打造前后端一体的应用生态。与其他解决方案中的平台不同,傲空间中的个人账号由个人设备上的服务端管理,数据只能在个人设备上解密,傲空间平台无法管理和解析个人的任何数据,实现用户的个人数据完全由用户掌控在个人设备上。

傲空间的项目任务覆盖面广,难易程度适中。傲空间团队成员来自中国科学院软件研究所,欢迎申请项目得到科研老师的指导。我们将为你提供丰富的学习资源和技术指导,通过与导师一起合作完成项目,你的技术能力将得到快速提升,成长为具有竞争力的技术人才。

傲空间现已在 GitHub、Gitee 上开源了 platfrom-base 项目gt 项目,傲空间服务端和客户端即将陆续开源,敬请期待。

傲空间社区主页

傲空间开源之夏任务介绍

实现傲空间平台侧基础服务的 Java 语言 SDK

  • 项目描述:熟悉已发布的开源项目 ,实现 Java 语言 SDK;编写相关的测试用例;撰写相关设计、使用文档。
  • 项目产出要求
    • 实现 ao-space/platform-base Java 语言 SDK ,要求支持已有平台侧功能
    • 编写相应的单元测试和集成测试
    • 编写相应的设计、使用文档
    • 代码符合规范: google.github.io/styleguide/…
  • 技术要求
    • 熟悉 Java 语言
    • 熟悉 Quarkus 框架 (加分项)
    • 熟悉 MySQL、Redis 等中间件(加分项)
    • 熟悉多线程编程
  • 项目导师:王智创 zhichuang@iscas.ac.cn
  • 项目主页: summer-ospp.ac.cn/org/prodeta…

实现傲空间平台侧基础服务的 golang 语言 SDK

  • 项目描述:为了方便对平台侧基础服务接口的调用,计划实现 ao-space/platform-base golang 语言版的 sdk 。
  • 项目产出要求
    • 实现 ao-space/platform-base golang 语言版的 sdk
    • 编写相应的单元测试和集成测试
    • 编写相应的设计、使用文档
    • 代码符合规范: google.github.io/styleguide/…
  • 技术要求
    • 熟悉 Golang
    • 熟悉 http 协议
  • 项目导师:余忠广 zhongguang@iscas.ac.cn
  • 项目主页: summer-ospp.ac.cn/org/prodeta…

实现基于 MySQL、Redis 等常用中间件的分布式锁

  • 项目描述:熟悉已发布的开源项目 ,模仿 RedisReentrantLock 实现基于 MySQL 的分布式锁、基于 MySQL、Redis 的分布式读写锁;编写相关的测试用例;撰写相关设计、使用文档。
  • 项目产出要求
    • 实现基于 MySQL 的分布式锁(互斥锁):具备可重入特性;具备锁失效机制,防止死锁;具备非阻塞锁特性
    • 实现基于 MySQL、Redis 的分布式读写锁:具备读锁可重入、写锁可重入特性;具备锁失效机制,防止死锁;具备非阻塞锁特性
    • 编写相应的单元测试和集成测试
    • 编写相应的设计、使用文档
    • 代码符合规范: google.github.io/styleguide/…
  • 技术要求
    • 熟悉 Java 语言
    • 熟悉 Quarkus 框架
    • 熟悉 MySQL、Redis 等中间件
    • 熟悉多线程编程
  • 项目导师: 郑祖岭 zuling@iscas.ac.cn
  • 项目主页: summer-ospp.ac.cn/org/prodeta…

GT server 与 GT client 开发 Web 管理功能

  • 项目描述:为了提高用户体验,计划分别为 GT server 和 GT client 增加 Web 管理功能,支持:管理员登录、连接状态查看,配置管理,pprof 等。
  • 项目产出要求
    • 设计并实现完善的 Web 管理功能:管理员登录、连接状态查看,配置管理,pprof 等
    • 编写相应的单元测试和集成测试
    • 编写相应的设计和使用文档
    • 注重页面用户体验、页面效果
    • 代码符合规范: google.github.io/styleguide/…google.github.io/styleguide/…
  • 技术要求
    • 熟悉 Golang、HTML5、Javascript、CSS3
    • 熟悉 vue3、element-ui 框架
    • 熟悉前端页面适配
  • 项目导师:谢德俊 dejun@iscas.ac.cn
  • 项目主页: summer-ospp.ac.cn/org/prodeta…

GT server 与 GT client 连接池增加支持 QUIC,与现有的的 TCP 协议实现兼容及实现智能切换策略

  • 项目描述:目前 GT server 与 GT client 之间的连接是基于 TCP 协议实现的,为了提高在远距离,高延迟,高丢包率场景下的传输的表现(主要是跨国场景),增加支持基于 QUIC 协议的连接方式,需要考虑支持 BBR 拥塞控制算法;并可以考虑增加一定的智能切换策略,提高用户体验。
  • 项目产出要求
    • 设计并实现增加支持基于 QUIC 协议的连接方式,需要支持 BBR 拥塞控制算法
    • 设计并实现多种连接方式在不同场景下,通过智能切换策略,提升传输效率
    • 编写相应的单元测试和集成测试
    • 编写相应的设计和使用文档
    • 代码符合规范: google.github.io/styleguide/…github.com/uber-go/gui…
  • 技术要求
    • 熟悉 Golang、C/C++
    • 熟悉 QUIC 协议
    • 熟悉 BBR 拥塞控制算法
    • 熟悉 TCP、UDP 协议
    • 熟悉使用多线程
    • 熟悉高并发传输场景下代码优化
  • 项目导师: 翁志艺 zhiyi@iscas.ac.cn
  • 项目主页: summer-ospp.ac.cn/org/prodeta…

参与方式

开源之夏目前正处于学生注册、沟通导师、提交项目申请阶段。

summer.png

可前往 开源之夏官网 了解更多社区和项目信息。

如对傲空间项目感兴趣,欢迎加入 slack 讨论组 与导师沟通交流。