查看原文
其他

好未来开源第二波:Go服务开发解决方案正式开源!

好未来技术 好未来技术 2023-03-15

好未来是一家以智慧教育和开放平台为主体,以素质教育和课外辅导为载体,在全球范围内服务公办教育,助力民办教育,探索未来教育新模式的科技教育公司。

好未来内部坚持开源共享,通过“开放·共享·合力开发”的模式,推动开源文化氛围的形成与技术组织变革,同时通过开源文化的建设,促进整个教育生态技术共享,提升教育科技实力。

近期由“好未来”技术团队开源的高性能Go服务开发解决方案正式上线!该解决方案覆盖大部分开发场景,从框架到组件工具,极大提升了开发效率,有效的降低了开发风险,好未来内部目前超过50个团队项目在使用该解决方案!



好未来Go服务开发解决方案


前言


Go语言是编程语言设计的又一次尝试,是对类C语言的重大改进,它不但能让你访问底层操作系统,还提供了强大的网络编程和并发编程支持。Go语言的用途众多,可以进行网络编程、系统编程、并发编程、分布式编程。

Go语言的推出,旨在不损失应用程序性能的情况下降低代码的复杂性,具有“部署简单、并发性好、语言设计良好、执行性能好”等优势。

好未来Go服务开发解决方案也是传承了Go语言的设计精髓,一切面向简单编程,通过融合真实业务场景,研究用户使用习惯以及痛点,结合优秀的开源成果,对外输出了大量的开发提效类框架和组件工具。

好未来Go服务开发解决方案从2018年5月份至今已经迭代了两年半的时间,陆续输出4个框架,一个脚手架以及5个组件工具集合,覆盖了多个核心团队业务,同时通过一线业务的反馈和诉求,使我们的整个解决方案更加贴近一线业务开发。

好未来技术团队崇尚 脚踏实地、仰望星空的精神。

欢迎大家Star该项目,也欢迎大家提交PR以及社区共建。


设计方向


简单、聚焦

最初,我们只想统一框架和类库,我们从提高复用为切入点,把框架和类库做了统一,并且接入了公司各种中心平台,但是随着公司开发人员的扩张,越来越多的新伙伴对这些框架和组件的学习、使用以及培训成本变得非常高,很多伙伴需要花很久的时间搭建服务,做服务侧开发,所以我们深入思考了下,我们要做傻瓜式的框架和类库,让开发者更聚焦于他擅长的方向,服务管理,服务治理全部由框架和组件支持,并且代码管理,通用代码一键生成均可以自动化,这样开发者们可以把精力放在业务逻辑开发,不用再过多担心除业务功能以外的问题,极大的提高了开发效率,降低了学习成本,同时使门槛变得更低。

开放、包容

当我们解决了门槛问题后,我们发现有很多业务已经使用了其他组件类库,比如日志,有使用logrus,有使用zap,那我们我们怎么快速帮助业务去做统一接入,之后我们针对生态做了插件化支持,我们开放了插件开发模式,让不同的解决方案接入我们的方案更加简单,同时加强了我们的解决方案与主流技术方案的融合能力,我们提倡个性化开发,尽可能的保留开发者的所有技术想法,通过接入我们的方案,让开发变得越来越简单。


开源价值


● 安全稳定高性能

基于成熟开源框架二次开发,没有改动开源代码,背靠成熟社区

● 灵活易用配套全

拥有大量的配套类库以及工具组件,不出户足以自给自足

● 插件解决个性化

所有框架和大部分组件类库均支持插件开发,个性化定制

● 管理周到把心省

代码管理,服务管理,插件管理,进程核心代码均不用操心,一键搞定

● 业务聚焦提效高

通过大量的自动集成配置,让开发者花更多的时间聚焦于业务逻辑开发,高效赋能业务


功能介绍


好未来Go服务开发解决方案由4部分组成:

● 应用层框架

● 服务层框架

● 消息中间件框架

● 基础配套组件


性能压测


● Gaea框架压测

1.测试环境:

OS:virtualbox 虚拟机上 centos7

CPU:1

Memory:1G

2.测试结果:

● Odin性能压测

1.测试环境:

OS:CentOS Linux release 7.4.1708 (Core)

CPU:4

Memory:8G

2.测试结果:


Go服务开源项目作者


姓名

事业部

部门

吴国福

网校事业部

学服研发部

王龙飞

网校事业部

学服研发部

何海涛

网校事业部

学习研发部

武文科

网校事业部

学习研发部

郭雨田

网校事业部

学习研发部

李辉

网校事业部

学习研发部

谢华亮

网校事业部

学习研发部

田峰

网校事业部

学服研发部

陈雷

网校事业部

互联网研发部


共建规则


一切以简单为核心,聚焦业务开发效率。

共建流程:提交pr  - 设计审核 - 代码review - 测试验证 - 版本审核


项目源码与文档


项目介绍:

扫描左侧二维码

查看详细项目介绍

好未来Go服务开发套件核心:

● Web服务开发框架:

代码地址:https://github.com/tal-tech/gaea

文档地址:https://www.yuque.com/tal-tech/gaea

● 微服务开发框架:

代码地址:https://github.com/tal-tech/odin

文档地址:https://www.yuque.com/tal-tech/odin

 

社群交流


微信扫一扫,申请加入官方交流微信群



  1. 也许你还想看
  2. 教你一文读懂特征工程
  3. 好未来学而思网校如何实现1小时内发布一个新项目
  4. 好未来技术校招笔试tips,你想了解的都在这里

我就知道你“在看”

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存