关于golang:推荐几个可以写到简历上的Go方向优质开源项目需花点心思研究

14次阅读

共计 4104 个字符,预计需要花费 11 分钟才能阅读完成。

原文链接:举荐几个能够写到简历上的 Go 方向优质开源我的项目(需花点心理钻研)

前言

哈喽,大家好,我是 asong。最近总有读者问我有没有Go 语言方向优质的开源我的项目,能够写在简历上那种,一时还真想不起来,花了两天工夫调研了一下,针对有无工作教训的别离举荐几个开源我的项目,上面咱们一起来看一下。

无工作教训

对于还在上学的敌人们,除了晓得必要的基础知识外,也要有 1 - 2 个拿的出手的我的项目,光有根底,没有实际,很难过来简历这一关,对于学生而言,简略的 crud 还是要熟练掌握的,接下来就举荐几个文档比拟齐全的 web 我的项目,入门后能够在此基础上深度开发。

bbs-go

bbs-go是一个应用 Go 语言搭建的开源社区零碎,后端应用技术栈:

  • iris (https://github.com/kataras/iris) Go 语言 mvc 框架
  • gorm (http://gorm.io/) Go 语言 orm 框架
  • Nuxt.js(https://nuxtjs.org/)基于 Vue.js 的服务端页面渲染框架,简略、好用、功能强大
  • resty (https://github.com/go-resty/resty) Go 语言好用的 http-client
  • cron (https://github.com/robfig/cron) 定时工作
  • goquery (https://github.com/PuerkitoBio/goquery) html dom 元素解析

还有配套的前端我的项目,基于 Vue 搭建的,性能还是比拟全面的,通过这个我的项目能够理解开发一个开源社区的设计思路,对于一个新手入门 web 开发还是很敌对的,然而这个我的项目须要付费能力观看搭建文档,不过代码是开源的,大家能够把源码下载下来本人钻研一下,代码内容不多且简洁,本人深耕几天应该能够把握。

我的项目地址:https://gitee.com/mlogclub/bb…

Gin-vue-admin

这个我的项目在 Go 语言畛域还是很闻名的,Gin-vue-admin是一个基于 vue 和 gin 开发的全栈前后端拆散的开发根底平台,集成 jwt 鉴权,动静路由,动静菜单,casbin 鉴权,表单生成器,代码生成器等性能,提供多种示例文件,还配有残缺的文档教程和视频教程。这个我的项目集体感觉是新手入门必看我的项目,跟着做一遍后根本的 crud 就都把握了,其中分片长传、代码生成器的性能还是挺有借鉴意义的,能够深刻理解一下。这个我的项目不须要介绍太多,文档比拟具体,能够达到手把手入门的水平。

我的项目地址:https://github.com/flipped-au…

rpcx

当初企业都是由单体利用向微服务架构转型,微服务的实际离不开 RPC 框架的利用,目前服务治理型的 RPC 框架有dubbo-gogo-zerogo-kit 等,跨语言调用型的 RPC 框架有 ThriftgRPCHessianFinaglerpcx 等,对于一个小白而言了解RPC 的原理比拟重要,所以能够先从 rpcx 框架动手,rpcx 是一个分布式的 Go 语言的 RPC 框架,反对 Zookepperetcdconsul 多种服务发现形式,多种服务路由形式,是目前性能最好的 RPC 框架之一,rpcx的文档比拟齐全,有专门的团队保护,是新手入门的不二抉择。

我的项目地址:https://github.com/smallnest/…

文档地址:https://doc.rpcx.io/

go-kit

大家能够关注一下 go-kit 这个微服务项目,基于 go-kit 能够疾速构建强壮、牢靠、可保护的微服务,go-kit 提供了对 consul、etcd、zookeeper、eureka 等注册核心的反对,有一位大佬开源了一份 go-kit 微服务实际教程:

  • 观看这个系列的博客:https://juejin.cn/post/684490…
  • 源码地址在这里:https://github.com/hwholiday/…
  • go-kit 主动生成代码的命令行工具:https://github.com/kujtimiiho…

我的项目地址:https://github.com/go-kit/kit

有工作教训

曾经有工作教训的敌人们就能够不必看一些根底的我的项目和原理了,能够更多的关注我的项目的架构设计、性能优化、服务治理等,更多的去思考如何保护好一个我的项目,这其实并不需要来看开源框架,更多关注本人我的项目团队的框架,从中找出优缺点去做优化,更加体现本人的价值。如果本人我的项目团队的框架比拟水的话,那么上面就举荐几个优良的开源我的项目供你学习借鉴。

zinx

zinx是一个基于 Go 语言开发的 TCP 长连贯服务器框架,其能够利用在游戏畛域或其余长连贯畛域;咱们能够学习 zinx 框架的设计思路,他有残缺的视频教程和文档,通过这个咱们能够齐全了解如何设计一个轻量级并发服务器,而后本人基于 zinx 本人写一个,并做一些优化,写在简历上岂不是能够吹一吹!!!

我的项目地址:https://github.com/aceld/zinx

文档地址:https://www.kancloud.cn/aceld…

视频地址:https://www.bilibili.com/vide…

go-zero

对于大多数敌人一进入公司就开始了 crud,应用的web 框架、rpc框架也都是企业曾经搭建好的,间接就拿来用了,很少有机会参加到如何设计一个 web 框架、rpc框架之中,然而面试中面试官还爱考查这些货色,所以就须要咱们平时多关注如何设计一款高性能的企业框架,go-zero就一款企业框架,咱们能够从中学习到值得借鉴的的设计;go-zero集成了 webrpc框架,是在 20 年由好将来开源的一款微服务框架,因为 go-zero 我的项目还是比拟大的,倡议大家带着目的性去学习,比方我想理解微服务注册与发现的原理实现、自适应负载平衡算法原理与实现,这样咱们就能够带着目的性去查阅源码,总结学习文档并把它摘要进去造成本人的货色,写在简历上吹吹水他不香嘛!!!

go-zero的文档体系还不是很欠缺,一些知识点的学习还须要大家本人去总结提炼。

我的项目地址:https://github.com/zeromicro/…

go-nsq

NSQ是一个基于 Go 语言的分布式实时音讯平台,可用于大规模零碎中的实时音讯服务,并且每天可能解决数亿级别的音讯,其设计指标是为在分布式环境下运行的去中心化服务提供一个弱小的基础架构。他的弱小就不用多说了,我举荐这个我的项目的起因是让大家去学习 nsq 是如何设计的,应用起来是简略的,然而如何设计才是重点,面试中如果让你设计一个高性能的实时音讯平台,你晓得该如何设计吗?

我的项目地址:https://github.com/nsqio/go-nsq

学习地址:https://cloud.tencent.com/dev…

Tidb

TidbNewSQL 行业中的代表性产品,由 PingCAP 公司自主设计、研发的开源分布式关系型数据库,兼容 MySQL 5.7 协定和 MySQL 生态等重要个性。目前很多公司都在应用 Tidb,解决了关系型数据库、弹性扩大以及寰球散布的问题。Tidb 采纳 Go 语言开发 SQL 层,下边的分布式存储引擎应用 rust 语言,应用 Tidb 具备以下劣势:

  • 反对弹性的扩缩容;
  • 反对 SQL,兼容大多数 MySQL 的语法,在大多数场景下能够间接替换 MySQL;
  • 默认反对高可用,主动进行数据修复和故障转移;
  • 反对 ACID 事务;

如果大家相熟 Tidb 的设计与实现,能够写到简历上,和面试官吹吹水!!!

我的项目地址:https://github.com/pingcap/tidb

文档地址:https://docs.pingcap.com/zh/t…

kubernetes

一提到云原生就提不开 kubernetes,当初各个企业都在上云原生,那么咱们每个人都要了解kubernetes,即便你是一名业务开发,不会一点kubernetes 都不太好意思进来面试,这是一个必备技能。Kubernetes 是一个可移植的、可扩大的开源平台,用于治理容器化的工作负载和服务,可促成申明式配置和自动化。Kubernetes 领有一个宏大且快速增长的生态系统;Kubernetes因为是 Go 语言编写,咱们能够从源码开始学习,配合着官网文档,认真专研一番,找个 kubernetes 相干的工作不久腾飞了,当初很多做 kubernetes 方向的敌人也都是由业务开发转去的,敌人们还不赶快学习来!!!

我的项目地址:https://github.com/kubernetes…

官网文档:https://kubernetes.io/docs/home/

中文文档:https://kubernetes.io/zh/docs…

举荐看英文文档,中文文档有些中央翻译过去有点难了解。

Prometheus

PrometheusCloud Native Computing Foundation 的一个我的项目,是一个零碎和服务监控零碎。它以给定的工夫距离从配置的指标收集指标,评估规定表达式,显示后果,并能够在察看到指定条件时触发警报。当初企业根本都应用Prometheus 做监控上报,然而你晓得他的工作原理是怎么的吗?曾经工作的敌人不要只停留在应用阶段了,其外围原理咱们还是要花点工夫钻研一下的,一样能够在面试中和面试官吹水。

我的项目地址:https://github.com/prometheus…

文档地址:https://prometheus.io/blog/

总结

本文咱们针对有无工作教训的敌人们举荐了几个优质的开源我的项目,有些我的项目曾经宽泛在企业中利用,其实现原理须要咱们深究,真正做到知其所以然,能力做到和面试官的娓娓而谈。

好啦,本文到这里就完结了,我是asong,咱们下期见。

创立了读者交换群,欢送各位大佬们踊跃入群,一起学习交换。入群形式:关注公众号获取。更多学习材料请到公众号支付。

欢送关注公众号:【Golang 梦工厂】

正文完
 0