搞软件架构,是不是绕不开 Java ?

2020-07-22 13:58:49 +08:00
 maxxfire
如题。
单机和 App 架构就不说了,没什么深度。
多机、多服务、多并发这类系统,不会 java 都不好意思称自己是架构师吧?
Java 何以长成这样的大树
12388 次点击
所在节点    程序员
112 条回复
urnoob
2020-07-23 08:17:57 +08:00
@wysnylc 没必要贬损其他人的项目。做过类似的也做过订单支付类的。我真没觉得后者更有难度。前者要求的技术深度还更高。
opengps
2020-07-23 08:44:53 +08:00
@wysnylc 刚注意到你的回复。如果你要争论,那么你赢了。

至于业务算大算小我不在乎,我只在乎业务是否转的好(无论负载多少),我不在乎使用什么语言(但我会综合优缺点进行选择),百万连接我已经说了,说大不大说小不小,你觉得小就往小的方向理解即可,毕竟再大的项目归根揭底还是很简单的 crud 。

再大的项目都有个共同点:不去挑战单机极限,都在回避单点瓶颈。
janxin
2020-07-23 08:56:20 +08:00
@xiaomingVTEX 适合做和只能 Java 做是两回事情,这文章里面有其中一个观点说的很清楚,不要对自己设限,不要看不上 Java 也不要因为学了 Java 就看不起其他语言做架构。反倒后面作者和后续讨论的人都跑偏到语言之争上,远离了本文的宗旨之一,实在是令人遗憾。
wupher
2020-07-23 09:20:54 +08:00
架构与语言无关

很多公司并不像那家电商公司一样全都是 Java 的。比如企鹅,比如飞期布克。

架构是 App 与 App,Service 与 Service 之间的组成方式。
594duck
2020-07-23 09:29:30 +08:00
@opengps C# 和 JAVA 是一个级别的东西。 这要比得用 GO 或者 Python 或者这种天天上微信朋友圈的系统来和 JAVA 以及 C#对杠.
securityCoding
2020-07-23 09:43:01 +08:00
大数据 java 比较多 , 你要说 web 的话选择就多了去了,随便一个都能撑起业务的
tkl
2020-07-23 09:47:07 +08:00
插一句 如果要用全文搜索 貌似只有 ES ?
opengps
2020-07-23 09:52:47 +08:00
@594duck 咱不杠,只是中立的说事实(这样依然有人反对那就无所谓了,起码咱没褒贬之意)。
我想说的其实就一句话:架构跟语言无关。
我自从写过 socket 开发之后,认识到任何一门语言只要能收发 byte,就能构造出 webserver,同理也能构造出其他 server,只不过语言库的支持程度不一样,比如某些从来没用作 web 宏图的需要语言级别的底层封装
dongisking
2020-07-23 09:54:57 +08:00
@tkl 不是,只是基于 lucene 来讲 es 做的还不错,通用解决方案已经很成熟
wysnylc
2020-07-23 10:14:53 +08:00
@urnoob #80
@opengps #81 没有争论和贬低的意思,只是他这个业务确实没有并发争抢的点,用户之间除了公共数据都是隔离
北斗和 gps 为何能支持全世界的人进行定位呢?因为他只"推"不收没有并发,与这个如出一辙
讲技术也要讲情面的思想我觉得还是留着某些地域好
tkl
2020-07-23 10:25:48 +08:00
@dongisking 比如?
ldxy
2020-07-23 10:36:36 +08:00
@wysnylc 如果定位系统只在单向传输数据,他怎么知道对方是否定位成功呢?这定位的可靠性怎么保证?
index90
2020-07-23 11:05:57 +08:00
因为很多公司对架构师的要求不只是架构师,更是 TL 。
TL 要做什么?攻克技术难题。
那大部分公司都用什么技术? Java 。
wysnylc
2020-07-23 11:09:42 +08:00
@ldxy #91 单向传输是 GPS 或者北斗,他这个很像但不是完全一致只是做个类比
这种高并发但是无用户争抢的场景从业务或者架构层面来讲并不难,做好无状态一致性哈希动态负载均衡后剩下的就是无限加机器
gadsavesme
2020-07-23 11:32:20 +08:00
算是滚雪球吧,其实很多语言都能搞一个大型的应用,但是现在 java 的解决方案多啊,除了问题兜底容易啊。所以用的人就多,用的人多了好的方案就更多了,然后就循环了。
Rwing
2020-07-23 11:50:20 +08:00
国内避不开
dongisking
2020-07-23 11:55:30 +08:00
@tkl golang 的 RiotSearch (好像是非 lucene ),v 站还有个人搞了 kalaserach
Mithril
2020-07-23 12:01:33 +08:00
@wysnylc 不是只有互联网才需要架构师,也不是只有电商的场景才叫难。不同行业领域有不一样的需求和困难,电商的高并发一致性难点在其它领域里可能就不存在,其他领域的难点在电商也不一定有。
架构师主要的作用就是解决自身领域内的难点,设计适合自己场景的架构。
wysnylc
2020-07-23 12:06:49 +08:00
@Mithril #97 任何行业都有造摩天大厦的需求,别人已经用这个语言造成功了你再造就会很简单成本更低因为你知道这条路是可以成功的
你说的解决难点就是一句废话,任何的工作都要解决难点难题
Java 的魅力不在于他有多优秀,而是前人留下的经验可以帮企业剩下巨大成本
hatebugs
2020-07-23 12:25:10 +08:00

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

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

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

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

© 2021 V2EX