V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  lesismal  ›  全部回复第 8 页 / 共 55 页
回复总数  1087
1 ... 4  5  6  7  8  9  10  11  12  13 ... 55  
@beneo
也不算吧,小公司一样搞啊,别用什么奇葩姿势、别用那些对工程不友好的库(例如 orm 相关的)就可以呀。

关键是很多人,他们本来熟悉了 java 那套,然后刚刚转到 go 没多久,还非要按照 java 的习惯去找 go 对应的轮子,go 没有就说 go 不行,这是开箱使用姿势不对啊:因为本质上你是做业务实现需求,本质上你应该寻找 go 的能实现需求的轮子,而不是非要找 go 生态里的像 java 的轮子。

抛开基础设施领域的 A 有 B 没有,对于业务而言,http 足够好用的框架大家都有,堆栈你如果用 gin 、echo 那些加上中间件就可以,logger 挑个三方成熟的就可以,标准库 sql 你写 raw sql 也没问题,但是非要找 go 的 orm 去用然后说 go 不行,这。。。

还有一类其他语言转 go 的,例如 javaer 、phper 转 go 然后搞一套类似 java 、php 的框架,虽然臃肿了点我个人比较抵触,但是对于原本的 javaer 、phper 确实也方便一点。但是他们的框架可能也依赖了 golang 的一些不好的库比如 orm ,但也不是必须使用它才行,也可以自己 raw sql 的。而且不管怎么说,这些框架它不是 go 本身,也不能因为它不行就说 go 不行吧。毕竟标准库、gin 、echo 也都足够用

基础姿势没搞明白,然后去使用不好的方案,然后说 go 不行。对不起,这个锅 go 不背

如果都是初学者,不带着 java 、php 的经验和偏见来学 go 的 gopher ,我还没见过几个喷 go 的,反倒都说 go 容易上手、也不需要依赖太多轮子就能把项目搞得很好
@wanqiangcrack #167 忘记 at 了

> 脱离你的业务场景去谈我要用什么语言是很无聊的, 除非你是架构师,架构你说算了,或你是技术总监, 技术路线你说了算

啊这样子啊,那好像没毛病,我们团队技术是我说了算的,而且我确实把旧的 java 项目都用 go 重构了,没了 java 以后,开发和运维大家都很开心,软硬件成本也降了、老板也开心 🤗
> 脱离你的业务场景去谈我要用什么语言是很无聊的, 除非你是架构师,架构你说算了,或你是技术总监, 技术路线你说了算

啊这样子啊,那好像没毛病,我们团队技术是我说了算的,而且我确实把旧的 java 项目都用 go 重构了,没了 java 以后,开发和运维大家都很开心,软硬件成本也降了、老板也开心 🤗
@diagnostics 淡定下来,咱们不搞语言之争了,各自能解决业务问题就行。

> 天天秒天秒地,就拿 gRPC 来说,Java 的差距很大吗? https://github.com/LesnyRumcajs/grpc_bench/wiki/2022-04-23-bench-results

gRPC 本来我也是不支持的,所以我用我自己的 arpc ,易用性、可以支持的业务类型比 gRPC 丰富的多,至于性能,因为 gRPC 非要 HTTP2.0 ,但绝大多数 RPC 都是内网服务之间的调用,所以相比于直接 TCP 的框架,gRPC 性能是比较差的,这里有三方鸟窝老师的对比,可以看下我的 arpc 的数据,还可以,但是当然,go 实现的怎么也干不过 c/cpp/rust 这些的性能,我自己如果写 c/cpp 的版本肯定也能随便灭 go 版本的性能:
https://colobu.com/2022/07/31/2022-rpc-frameworks-benchmarks/

> 我自己写 Java 也写 Scala ,只不过混了个开源基金会的 Committer

只要能被合并,至少都是符合了大项目很多规范的,所以 Committer 挺不错的。但抛开规范之外的技术含量本身,还是要看实际 PR 内容的技术难度,所以也没太大必要拿 Committer 说事,我其他号也给 apache PR 过也合并过的,但不是特别重要的内容,所以我对 apache 贡献也几乎可以忽略。身边也有其他项目的 Commiter 比如 Netty 的,但也是非核心功能

> 不敢不敢,我没能力,说出来的话,感觉丢其他的脸,拿这个东西来比。

这个确实没必要,尤其我那个个人小项目,主要都是自己写、图自己方便,项目规范也没搞那么多,连注释文档我都没空好好整理详细,主要精力优先放在保证功能良好稳定和各种兼容上了、尽量让用户用着舒服

> 哥们,求求你了,去把 Flink 重写,中国开源第一人应该就是你了。你知道大数据用多少台机器,都跑在 JVM 下吗?我记得前几年阿里宣传 Fink 的案例好像都是千台服务,你用 Go 重写应该能降到 500 台以下吧?别的不说,达摩院院长你来当

平常心平常心,咱别说气话。
讲真,术业有专攻,大数据基础设施我目前只是用户,没有自己造过。而且大项目耗时费力的,个人用爱发电不划算。但如果兄台有认识的团队想试试搞这些项目优化 java 版本的开销和性能,可以来找我,价钱给到位,个人水平有限不是一定能搞定,但还是可以搞搞试试看的
@beneo 跟站长要了封禁,解封后才来回复。如果是自己的代码,自己的日志带文件行号就可以了。如果是三方库,这个没办法直接获取三方 error 堆栈,如果不是本地开发环境只能根据 error 去源码里搜之类的,如果是开发期间 debug 可以调试进去看。
通常库里不应该抛出异常,因为如果业务层没有 recover 这会导致业务宕机。
致于 error 堆栈,库自己多 wrap 上堆栈信息的话会性能下降,而且 golang error 也是历史原因了,我前阵子也在琢磨,要不要把自己库里加个配置项、允许用户设置 error wrapper ,然后库里返回的地方都用用户的 wrapper 包装后再返回,这样如果用户想要堆栈、可以自己设置 error wrapper 。但这个改动的工作量也挺大的,而且即使默认只是空的 error wrapper 也会略影响性能,所以我还是倾向于不加这个,尽量保障框架自己稳定、不给用户添麻烦或者不需要用户那么麻烦必须深入到框架内不才能解决。

golang 的 orm 没有好用的,如果有兴趣,欢迎试试我的 rawsql 方案:
https://github.com/lesismal/sqlw
@diagnostics

> 你见过哪个 Java 爱好者天天去碰瓷别人的?

兄弟,碰辞这个词用得不对了吧?

你看你自己原话都说了是批判的啊:“谈到编程就喜欢把 Java 批判一番”

怎么逻辑都不讲了呢。。

@Livid 我怕自己忍不住继续陷到语言之争里,求站长大大把我禁言几天。。。
我对 java 的评价一直很差,以上言论虽然是实话实说但对于一些同行来说可能有些刺激,如果管理员要处罚我,我认罚、以后本论坛里我尽量少喷 java 。
@byte10 所以对我而言,java 这种没有系统编程能力、性能有限、臃肿直到宇宙尽头、非常浪费硬件的“垃圾”,根本不值得我去浪费时间深入了解它,所以我并不那么了解它。这道理就像是,路上看到一坨狗屎,大家得躲着走,总不能要求别人上去尝一口然后才有资格说它臭吧。。。
@byte10 Hi 好久不见!
当年 golang 还没成熟的时候,我写 c/cpp 觉得有点累,于是手撸 NIO 被 java 的臃肿恶心到了,然后想想还是继续撸 c/c++算了,golang 成熟了我就撸 golang 了。
性能这个,同样的看我前面楼层,别说语言指令这种,要用大家常用的对比。可能跟老 php py 这些比是要强些,跟 nodejs 、go 比应该都是被吊打。剩下的也只有所谓的生态优势,但对于 curder 来说其实主要是行业技术栈优势,例如电商、企业级已经有那么多 java 那没必要重新造一遍,但这并不是别的语言不能搞、而是它还算稳定所以没必要重新搞,它占领市场早所以岗位多罢了。但是新生领域或者说需求变化快的领域,它也并不具备优势,所以直接头条 b 栈猎豹移动七牛各种新兴势力倾向 golang 。抛开这些行业选择它的历史优势,很多 java 不适合的,例如云原生。还有一些虽然用了 java 实现的基础设施、但其实如果用其他语言会比它效果更好,同样也是历史原因罢了。

另外,javaer 遇到“复杂”点的问题容易懵逼,例如系统知识,怎么排查网络、数据库各种。我不是说所有 javaer 都不懂,而是相比于 c/cpp/go 这些,javaer 不懂的人的比例有点多。言必称希腊,聊技术就是框架、全家桶、八股文。当然,我不是针对 java ,脚本语言的人绝大多数也基本都这样。并不是怪这些开发者不求上进,而是因为 java 社区就流行这种氛围,见过太多八股文选手,背了一大堆,侃知识点说的头头是道,离开八股文范畴面试问他点深入的就容易 game over 。
我也看到过很多 javaer 自己总结:背会了很多八股,但结合实际了却不知道怎么应用。

再说下 java 性能不错,比如 2018 年那会我门一些兄弟部门业务重构由 java 切到 go ,切换后对比了下,业务量还是原来那么多,他们对比了重构前后的消耗,以前 java 的内存消耗大概是 go 的 2-3 倍,cpu 消耗是 go 的 1.5-3 倍,响应时间 go 略好但整体上倒是没差太多基本可以忽略,因为并不是把服务硬件指标跑满、主要时间都是花在数据库上。别人喜欢用重构后消耗降低了多少百分比,但百分比看上去就好像是节省了一个比例罢了,反过来看,假设以前是 go 、切换到 java ,硬件成本直接翻 2-3 倍,这个情景就比下降的百分比更明显了
@yazinnnn0
也可能是 java boy 技术还不够深入、经验还不够丰富的阶段、get 不到 java 有多差
golang 虽好但毕竟性能还是达不到极致,java 的香,用郭德纲的话说,全靠同行衬托
@lsk569937453
#1 单比较语言指令 cpu 消耗那些,不同测试项的确是各有千秋总体差不多。但是 java 离不开社区全家桶,当 java 都用这些东西的时候,实际生产项目的性能确实挺差的

#11 也不算上升到品味,也不是饭圈。而是实事求是、确实是品味有问题
挺好,小号以前就 star 过了,大号再 star 一遍。
PS:这个奖配不上这个库。
125 天前
回复了 OnePenguin 创建的主题 程序员 [质量内建] 测试之“以器护道”
@LeeReamond 你说的有道理,我反思,我应该学习一下
125 天前
回复了 OnePenguin 创建的主题 程序员 [质量内建] 测试之“以器护道”
科学工程就数理化科学方法上整,少往玄学的词汇上靠
甭管内容是否科学,看标题大概就整得跟个神棍似的、太渣
哦哦,才看到,#2 楼说各种安全启动都试过了啊。。
联想的笔记本一般是需要改 Secure Boot -> Disable 的,PC 也试试看吧

related:
https://product.pconline.com.cn/itbk/software/dnyw/1492/14928978.html
公司里用,RAID 也不稳,还是多搞一组、一个常用另一个定期备份下好些

看样子我买的几块二手企业级还是很划算的。。
有故障现象就拿去售后,人家没说你用户自己检测不报错就不能售后吧?
135 天前
回复了 tool2d 创建的主题 职场话题 感觉学前端技术,很难升职加薪。
如果不考虑润、不考虑自己做产品,只从打工的角度考虑,后端研究得精深些,不是特别容易 35 被裁,我不少要好的 35+,甚至 40+的,都还大厂中坚力量,后端需要内里浑厚些,很多问题要靠这些多年深耕的选手、不是三五年的人能替代得了的。但精深也不是特别容易,知识也得一口一口啃,经验也得一天一天涨
没搞懂,gpt plus 好像是 20 刀/月吧,print(2180/12/20)=9.08 ,人民币已经贬值这么多了吗。。
1 ... 4  5  6  7  8  9  10  11  12  13 ... 55  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1292 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 27ms · UTC 17:43 · PVG 01:43 · LAX 10:43 · JFK 13:43
Developed with CodeLauncher
♥ Do have faith in what you're doing.