有人像我一样讨厌本地无法运行起来的项目的吗?

2024-03-08 16:24:10 +08:00
 RedisMasterNode

交接过来的项目本地运行不了,看代码能上手但是调试效率很低,不知道每个接口运行进来是怎么走的,每个方法返回了什么数据,最终如何形成整体的大响应 Body 。

最搞笑的是并不是因为又什么历史包袱,而是说,测试环境跑也可以,本地写点单测。

什么鬼逻辑...合着报问题了直接本地跑一下看看执行路径不香?测试环境找不到问题的时候反复加 log 部署调试很好玩?

球球了做个人吧,是真的有人觉得线上看日志调试比本地 Debug 快吗?

PS:防杠叠保护甲,并不是那种一两个接口,逻辑究极简单的项目。不说多复杂,起码也是个正常规模复杂度的项目:

10659 次点击
所在节点    程序员
68 条回复
Nazz
2024-03-08 16:25:07 +08:00
我讨厌 CGO
silencil
2024-03-08 16:25:53 +08:00
本地跑不起来的项目我直接跑路,没开玩笑,去了一个 sass 公司,项目架构应该 ssm 都不算,我看了一上午的代码就不想干了,第二天就没去。
RedisMasterNode
2024-03-08 16:27:48 +08:00
@silencil +1 没开玩笑。

老项目堆很久了我能理解,以前也接过,历史上很多人经手,大家都不容易,还能有点同情分。

新项目就 1 、2 个人开发过的,交接过来本地不能跑,不知道图什么,图方便吧大概。
jsrunner
2024-03-08 16:28:11 +08:00
一样。微服务的尤其讨厌。尤其还依赖非服务之间的接口
umaker
2024-03-08 16:30:12 +08:00
前端吗?可以尝试将测试环境(甚至线上环境)的请求转发到本地 dev-server ,大部分项目都可以这么处理,甚至包括微前端。
本地 Mock 容易带来跟不上迭代的脏数据,长期不更新会出现破窗效应。
815979670
2024-03-08 16:32:20 +08:00
我在对接这个接口的时候有个习惯,把对方返回的数据格式 保存一个样例到注释里,这样阅读代码排查问题会方便很多
zhenwang
2024-03-08 16:32:39 +08:00
个人最不喜欢的就是一个项目会有 N 多个补丁式的脚本运行后才能进行开发、构建,而且没有文档来说明这些脚本究竟的作用是什么。
skyemin
2024-03-08 16:35:06 +08:00
大厂好多都这样,本地依赖太多起不来,都是远程 debug
Curiosity777
2024-03-08 16:38:50 +08:00
@chenzhq2 请教下,这个转发如何实现,使用什么工具?
kkbear
2024-03-08 16:42:39 +08:00
大部分是项目解耦做的不好
F7TsdQL45E0jmoiG
2024-03-08 16:44:56 +08:00
“微”服务体系里一个好的 api 网关就至关重要,请求镜像能解决很多调试的问题
Makabaka01
2024-03-08 17:13:22 +08:00
一般主流语言的 debug 都有远程断点能力,比如 go 的 dlv 就可以远程断点,goland 也支持接入,楼主可以研究一下。
xiaolongorigino
2024-03-08 17:15:18 +08:00
很多项目都有测试环境的 debug 工具啊,非要本地跑起来干啥。。。
ZZ74
2024-03-08 17:16:42 +08:00
我也不喜欢,但是有一种云 k8s 沙盒服务,你自己的代码写好,本地推上去,就有一整套环境了,然后你们远程调试就行 也还不错
Martens
2024-03-08 17:31:08 +08:00
试试远程调试/开发
RedisMasterNode
2024-03-08 17:43:23 +08:00
我要补充一点防杠,也是主楼没有说清楚。

这里不能本地构建可以再拓展一下,泛指没有本地调试方法的项目。远程开发,dlv ,或者任何的调试工具,只要能本地调试(不要求本地允许)都是可以的。

主楼说的不能跑,应该修改为不能本地 debug ,比如有网络隔离,不能直接访问 test 环境,导致只能通过 log 等手段反复部署调试的 ''垃圾服务''(当然也包括各种依赖问题导致无法运行的服务)
RedisMasterNode
2024-03-08 17:46:07 +08:00
不管是本地跑,还是开发机器远程跑,能调试都是好的。

不能调试是指本地不能跑,要跑就要通过 cicd 部署上隔离的环境,以及类推更多的 case ,最终无法在 ide 上调试。

谢谢楼上的远程调试的同学手下留情,不要错杀好人....
wu67
2024-03-08 18:24:30 +08:00
在上家遇到过,测试环境接口配错了没法跨域,本地根本没法配置跨域的那种,改动全盲改然后推 dev ,每次构建还要几分钟
abigeater
2024-03-08 18:55:47 +08:00
+1 不能在本地进行调测的项目 虽然还是得去做 但没有开发热情可能写一点就摸鱼再继续写
GeruzoniAnsasu
2024-03-08 18:59:56 +08:00
打 . 日 . 志 . 不 . 叫 . debug !!

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

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

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

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

© 2021 V2EX