Golang Go语言中如何说服公司新项目使用

发布于 1周前 作者 bupafengyu 来自 Go语言

Golang Go语言中如何说服公司新项目使用
公司新项目,项目性质导致后期可能要走微服务路线(因为要整合好几个现有项目模块)。现有项目主要以 Node.js 或 python 为主。有人提议保持 nodejs 或者使用 kotlin 作为服务端语言(),最大问题是公司里没有人用过 Go 语言,而且除了 Go 语言还有很多类似 Elixir,Rust 之类的优秀新近语言。

Go 语言是否在微服务有很大优势。有谁遇到过类似情形?

101 回复

go 天生就适合做微服务,上车就不会错

更多关于Golang Go语言中如何说服公司新项目使用的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html


“公司里没有人用过 Go 语言” ======> 最“好”的不一定是最“合适”的

你做 CTO,立刻说服。

最大问题是公司里没有人用过 Go 语言 === go 不适合你们公司

要么你是 cto,要么你个人能力很强(再大部分人不会 go 的情况下,也能通过一己之力完成 go 项目),否则就老老实实的跟着领导走,不然对你没有任何好处。

为了用而用不可取。

没人会,还是别用了

把现在的人都开了招一帮会 go 的来

没人会就不要强行上,就算出点小问题都要你去忙死忙活的

那你问问自己,用了 GO 之后公司业务会上一个台阶吗?公司发展会更好吗?
如果可以,那我觉得你不用说大家都自觉会去用,如果没有,那就该干啥就干啥

把现在的人都开了招一帮会 go 的来 +1

我也在想如何说服公司新项目用 Kotlin

公司写 python 项目用的 flask,想用 django 架构都不同意,说会增加维护成本。所以,没人会就不要考虑了

居然还有人想用 nodejs 做后端。。

不建议你这么做,吃力不讨好

golang 寫業務代碼需要造大把輪子,

你做 CTO

Go 都不行还 Node ?想上 Node 就让前端自己去擦屁股

Kotlin 要是你们之前都是 Java 倒是可以试试的

当你问这个问题的时候,你已经不能说服了

有一说一 Go 是真的好用 而且可以避免一堆 2 货写骚代码

不用说服,你自己先写一套跟公司现有一样功能的.
并且性能超出现有 直接替换就行

kotlin 不好?

公司里没有人用过 Go 语言 … 真改成 go 了后端兄弟怕是要被气死

不是不好,之前都是基于 node,属于轻量级,简单快速,但是选择 kotlin 无非就是走 java 的 spring 啥的。感觉突然整个项目会变很重,大量的配置和依赖,从一个极端突然到另一个极端。

写 go 费钱呀,月月坠机

居然还有用 kotlin 做服务端 的?

开公司当老板

Node 做后端也挺好

我也很奇怪,后来发现只是作为 java 的替代,框架,虚拟机用的基本都是 java 的。

你跟老板说‘我不要工资,但你要改用 go 来写业务’

其实确实没什么不好,开发快,简单,部署轻松,性能也还说得过去。但是当整个项目非常大了之后你会发现,你根本不知道这些函数在传递些什么,所以要加入大量类型定义的注释,而且有些问题只有到运行的时候才会发现也很致命。所以开发用 node 没问题,但是重构就不太推荐了。

把 node 切到 typescript

我倒是想把公司新东西用 elixir 重写,然而被老哥们一票否决

如果你是新项目负责人,你不需要说服公司,你只要保证能做出来。如果你不是负责人,你也不需要说服公司,你需要说服的是负责人。

另外纠正一点你的认识,微服务的“微”字,只表示单个组件“微”,不表示系统“微”——因为把原来的模块变成了子系统,整体系统反而更大了。

微服务和 Go 没有关系,Python 和 NodeJS 同样很优秀

不是…django 不比 flask 上手容易啊?

确实有你说的这个问题,事实上我们正在把几个项目中可以通用的模块分离出来,做成单个服务,剩下部分后续应该也要拆分,但是还没到那一步。

如果你是个有责任心的人,那证明你已经对 go 已经有了深入的认识和了解,你才会如此地坚持。
你可以给其他员工做 go 语言的培训和指导,让他们实际感受到 go 语言的优秀,我想没人会拒绝吧。

nodejs 微服务也不错呢…如果你一个项目只有一个 git 仓库.写一坨代码那就浪费 nodejs 了.
现在云都推无服务函数…对于低频率还是很省钱呢…有高压接口再用 java 写咯…
kotlin+java11 还是可以的…不一定非要用 spirng.因为还是很多生态基于 java 的…你内部转接口出来给 api 调用就好.
目前 go 生态没那么厉害.go 公司没有大牛.还要上 go + 微服务…k8s.等等 .还是不要接触了.出了事你自己解决不了…背锅就是自己了.等着被人割肉

不是…我不是故意学巨婴说话的

java 有的是轻量的框架,大部分都比较冷门罢了,因为轻量说难听点就是残缺,啥都没有,全都自己造

非紧急项目可以尝试的,现在就是老项目维护用 c++,正在做的和未来项目都上 go 了。写得好爽

这个得领导来推,我们组本身是 java 的,其他组老大代管几个月换了 go,代管结束以后他们又转回 java 了。
现在我这个组在用 springboot 做微服务,你敢信?

flask 比 django 更适合微服务,更符合现在的趋势,为啥要换成 django ?

https://github.com/Wizzercn/NutzWk java 后台
https://github.com/Wizzercn/NodeWk node 后台

我写的,,写的不好多多指教

看我回蓝

楼主担不起责任就别乱提议

没有最好,只有最合适

如果你有 100 台 别问 问就 k8s. 如果 10 台,带宽把大头一占,性能提升 50%能省多少钱。时间成本又是个大窟窿,🙄️。

一切推行增加成本的技术选型都是困难的,招新或培训老人都是

而且这种事不是少数服从多数,而是要有一个强势的 cto,对上负责能够承担意外和风险,对下能

先上 kong or 其他网关,后面调用走 rpc/restful,后台怎么运作和前端有关系?

如果是写业务 Java 一把梭,相关框架成熟可靠,别搞些有的没的 ,go 不太适合 crud,轮子没有 Java 的成熟,而且 go 在微服务领域也没啥优势,估计是 docker 让大家把 go 跟微服务划上一个等号的

大厂的微服务解决方案多数都是自研 rpc

可以不用 go,但是千万不要用 node

你们公司后端主要会什么?
建议选择静态类型语言,node 和 python 都不太建议。

那你用老技术?。。。说服的了就用 go,技术栈这种东西在公司本来就一刀切,说服不了从大流 JAVA 不错的

你是想把公司里面不会 GO 的全开了么?

不要用 node.js 、python,这种动态语言,又那么灵活,一帮人写,后面维护起是个灾难呀。建议用来写单个项目、爬虫、数据分析、工具性质项目比较好。
go 是可以做微服务和写大的项目,但是你得有 GO 的开发人员和一些有用 GO 做大型开发经验的人。
java 开源方案成熟,框架很多,人员也多,建议用这个。

一般场景下,node,py 都是可以满足需求的。没必要为了技术而技术

成为公司的技术负责人,想用啥都行。

强行上车不可取……

这个无所谓吧,kotlin 不错的

选团队最熟悉的技术

goland=够烂的

jetbrains 的评价不会错

Go 没人会,Rust 没人会,干脆上 Rust 吧

公司都不会,出来的成品质量你负责吗?确定能比原来的好?

node 和 python 在后端都是小打小闹。现在来看,要么 java 要么 go,已抛弃 java 转 go,真香

Go 有其他 c 系语言基础,很容易上手。Rust,上手更困难一些。

换家用 Go 的公司……

没有 go 的人就不要折腾 go,如果遇到解决不了的问题,项目无法推进,一群人 996,杀谁去祭天你先想好了。

没人会就别上了

就你一个人会?你当老板傻吗?

当前以 node 和 py 为主,那选 node + typescript,python 太动态了人多不好维护

其实 lz 以前是 python 和 node,用 go 做后端总比这两个强,但没大牛带头真的坑多,当年想从 java 转 go 写业务把我给恶心到了,到现在 go 的依赖管理都还是不行,更不要说其他生态了。除非是很基础的服务,不然要是重 curd 的还不如转 java,并不是语言越新就越好,而且 spring boot 那套写 curd 既不慢上手也不难。

只是举个例子,是另一个项目,不是微服务

没有人力、生态架构基础还是不要作死了。

为啥这么多人黑 node,是真无脑黑,还是真的亲生经历了不好的地方。微服务说明已经拆分开了,node 开发很方便啊,同时可以上一上 typescript。

如果你技术能扛把子,并且打算在这家公司呆个十年八年的你可以提议,否则你就是来挖坑的,到时候项目写到一半人跑了,公司可能就黄了。前些年 python 搞死不少公司,一些人半桶水非要上 python,刚开始很爽,后面业务量上来了,各种问题解决不了,开发顾自己跑路了,公司直接傻眼。

go 不说别的 完美覆盖了你说的业务需求

node.js 。。。这东西还是算了吧 kotlin 没用过不评价

当然了这语言很成熟也要看贵司程序员的接受程度 如果之前有过 C 语言开发的经验 上手还是很快的

无责任投 Elixir 一票,🐶

这语言的语法反人性

没人用过就别想了,能不能说服 看你在公司是什么角色.

如果项目是你负责的,而且能接受其它人不会得这种情况,完全可以用.

否则放弃,不用着急这一时

Go 语言是否在微服务有很大优势。有谁遇到过类似情形?

这句话决定了你不应该说服,你自己都拎不清楚,还要拉别人一起进来?凭什么?

其实没那么难,我们公司原来写 python 的,只是业务之余重构了一个小服务,那种 cpu 内存监控的曲线,还有并发量级,哪怕就按照 python 的方式写,提升也是直接超越一个数量级。你们原来是 java 我肯定不说啥,node python 还有什么好担心的

你一个人把项目包了,爱咋写咋写(滑稽

不懂为啥就微服务了

每隔一段时间就会看到一个类似的问题

如果项目开发遇到问题,你是挨刀的,跑不了

老板是在开公司,不是在开实验室

收购你们公司

公司项目还是要贴合实际,我上家公司 CTO 就很喜欢 Go,但是公司微服务后端语言还是以 Java,PHP 为主,少量 Node.js 。Go 的话,也就他自己写东西的时候用,偶尔我碰到 Go 的问题会去跟他交流交流。其实如果是微服务的话,引入 Go 在非核心服务试试水也行,不一定要整体替换后端语言。前提是你得另外找一个会用 Go 的,以免出问题了只能找你擦屁股。

还是说服自己把

你喜欢 GO 没问题,但是公司都没人用过,说真的,你说服不了。

真是一粉顶十黑……

。。你是 CTO 你直接说就好了。。。如果不是的话别作死。。。

要说服公司在新项目中使用Golang(Go语言),可以从以下几个方面进行阐述:

一、高效与简洁

Go语言以其简洁的语法和高效的编译执行速度著称,能显著提升开发效率和代码质量。对于新项目而言,这意味着更快的开发速度和更低的维护成本。

二、强大的并发处理能力

Go语言拥有出色的并发处理机制,通过goroutine和channel等特性,能够轻松应对高并发场景。这对于需要处理大量用户请求或实时数据的项目尤为重要。

三、丰富的生态系统

尽管Go语言相对较新,但其生态系统已经相当丰富,拥有活跃的社区和大量的第三方库。这有助于快速构建功能完善的应用程序,并降低开发难度。

四、成本效益

采用Go语言可以降低长期维护成本,因为Go语言编写的代码易于理解和维护。同时,由于Go语言的编译速度快,可以加快项目的迭代速度,从而更快地响应市场变化。

综上所述,Go语言在新项目中的应用具有诸多优势,包括高效简洁的语法、强大的并发处理能力、丰富的生态系统以及良好的成本效益。这些优势将有助于提升项目的开发效率和质量,降低维护成本,并加速产品的市场响应速度。

回到顶部