[讨论] 大家来聊聊,不实用 Java 实现的微服务

2019-08-09 09:47:30 +08:00
 itskingname

但凡你在 Google 上一搜索微服务,你就会发现全都是使用 Spring 全家桶来实现的。

微服务架构本来应该是语言无关的,但是被这群使用 Java 的人搞得就像是专门为 Java 定制的一样。

欢迎各位在这里讨论一下,在你们的项目中,有项目使用了微服务架构,但是没有任何一个地方使用 Java 技术栈吗?具体是怎么做的?用的是什么语言?

7880 次点击
所在节点    程序员
99 条回复
ResidualWind
2019-08-09 10:51:45 +08:00
楼主是故意的吧!
itskingname
2019-08-09 10:51:50 +08:00
@chocotan 这本书我有。
janxin
2019-08-09 10:52:27 +08:00
你只是讨厌 Java ?

我搜索了一下第一页基本都是介绍概念的啊
itskingname
2019-08-09 10:52:55 +08:00
@ResidualWind 不是。我只想认真讨论不使用 Java 技术栈的情况下如何实现全套微服务。
Raymon111111
2019-08-09 10:53:11 +08:00
所以搞 java 的人阻止你用别的语言了?
th00000
2019-08-09 10:55:12 +08:00
服务治理是一种思想 你用汇编都能做
notreami
2019-08-09 10:59:31 +08:00
楼主的结论就是 "Java 真讨厌"
ghos
2019-08-09 11:02:24 +08:00
golang 不也有很多吗 一搜一大把
itskingname
2019-08-09 11:02:31 +08:00
@th00000 但是,如果很多很多人都用 Java 来做的话,情况就坏了,这种思想就会逐渐被这种语言绑定。

语言决定思维方式。
zhazi
2019-08-09 11:02:42 +08:00
@wineway 如何得到这个结论的
zhazi
2019-08-09 11:02:54 +08:00
@wineway 你是如何得出这个结论的
chanchan
2019-08-09 11:05:30 +08:00
翻译一下,我谷歌搜不到用别的语言实现微服务.都怪这群搞 java 的
lihongjie0209
2019-08-09 11:08:13 +08:00
[讨论] 大家来聊聊,不实用 Java 实现的设计模式
littleghosty
2019-08-09 11:10:34 +08:00
使用 java 是我的错咯?
th00000
2019-08-09 11:10:39 +08:00
@itskingname 语言怎么会绑定你的思想 思想是思想 语言是工具
另外你说的全都是 Spring 全家桶来实现的 不敢苟同
即使是用 Java 可选的工具也是一堆一堆的
中间件都是所有语言共用的 跟 Java 没有必然关系
你会有这种疑问 完全是因为你没有深入下去 没有真正搞懂什么叫 **微服务!**
snappyone
2019-08-09 11:10:41 +08:00
用 k8s 啊
Sendya
2019-08-09 11:12:11 +08:00
用 Go 做了套 微服务概念的 程序 算不算?
当然我这种 CRUD boy 是根本不可能做到开发微服务的基础组件(注册中心,熔断,等) 当然是用现成的。

另外,我是作 Java 开发的。楼主这提问方式有点骚

![image.png]( https://i.loli.net/2019/08/09/sH1k5rlzWULfgbF.png)
helloworldgo
2019-08-09 11:13:46 +08:00
看帖子是真想骂人
gramyang
2019-08-09 11:19:26 +08:00
用 gomicro 啊,到现在为止没有发现 go 不如 java 的地方,几乎所有的写法都比 java 更简洁
silverfox
2019-08-09 11:22:53 +08:00
我这边做的是微服务架构,大部分业务服务是基于 ASP.Net Core 开发,还有一部分使用的是 Apache CXF 实现 SOAP 服务(因为目前 .Net Core 没有 WCF Services Host 成熟实现),一部分服务使用 Node.js 实现。

我不太理解为什么要规避 Java 技术栈,根据不同的业务场景和当前开发资源的情况,选择合适的编程语言是微服务的一大优势。

另外 Java 与 Spring Cloud 并不等价,至于如何实现微服务的功能取决于你的基础设施。比如是基于 Kubernetes 的,那么服务发现可以使用 Kubernetes Service,网关可以用 Ingress Controller,熔断模式根据不同的编程语言可以使用不同的类库(比如 Polly ),调用链追踪继续使用 Jaeger。

只是这些技术可能不是开箱即可用的,需要花费时间与资源构造与磨合。如何进行技术选型取决于当时的情景,不能一概而论。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/590356

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX