V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  nobject  ›  全部回复第 1 页 / 共 4 页
回复总数  74
1  2  3  4  
5 天前
回复了 nobject 创建的主题 Go 编程语言 golang 日志记录
@zzhaolei 对于三层架构,我并不觉得这是多过度优化,过度优化的是复杂的设计模式,依赖注入控制反转那些。三层架构在写业务代码的时候是有优势的,我觉得这无关语言。而且这也不是我想探讨的主题
5 天前
回复了 nobject 创建的主题 Go 编程语言 golang 日志记录
@zzhaolei 不太懂怎么按代码量来分层的,如果是按代码量,我宁愿不分层,多建个文件写业务就行了。如果我一个业务,写着写着本来只有 1000 行,我再加个接口就变 1200 行了,我就开始分层了?那这个分层过程还要做抽离呢,还是仅仅把新增的接口业务放在另一层?
5 天前
回复了 nobject 创建的主题 Go 编程语言 golang 日志记录
@yuhuai 事实上,现在其他语言任何的成熟的框架都很少把业务逻辑层与数据访问层放在同一层或只整合成一层,这不仅仅是 java,php,c#主流的框架也一样,这是写业务代码,不是写中间件或一些基础组件啊。ps:我以前是写 php 的,并不写 java 的
5 天前
回复了 nobject 创建的主题 Go 编程语言 golang 日志记录
@zzhaolei 这和 java 有啥关系呢,即使 php 古早的框架也有 controller 与 model 层呢。为啥重点放这里,难道你们代码都不需要分层?无论是 controller ,service 还是 repo ,model ,这只是个分层的名词而已。如果你们一点也不分层当我没说咯
5 天前
回复了 nobject 创建的主题 Go 编程语言 golang 日志记录
@kuanat 非常感谢,感觉给我了很大的启发。特别是使用 ctx 的方式去记录复杂的一些数据结构,感觉是个不错的思路
5 天前
回复了 nobject 创建的主题 Go 编程语言 golang 日志记录
@dreampuf 嗯,谢谢了,我看看第二个库满足不满足我的需求。我也觉得记录 fmt.Errorf 这种逻辑栈记录下来好像也够了
5 天前
回复了 nobject 创建的主题 Go 编程语言 golang 日志记录
@hailaz 谢谢啦,一会去看看
5 天前
回复了 nobject 创建的主题 Go 编程语言 golang 日志记录
@me1onsoda 这跟 java 与 go 好像没任何关系吧?你在业务处理的时候不记日志?既然记了日志,就会有碰到相关问题吧,函数调用链长,我的 err 的日志记在哪里合适
之前公司的前端是对参数做 aes 加密,后端解密,只是相对破解门槛较高而已。还有密码应该要加密也不会用 md5 这种不可逆的方式吧,不然密码规则后端怎么校验
1. 接口原子性没太明白,如果是数据库操作的原子性的话,就是开启事务。如果是接口的,那加个分布式锁?
2. tx 一般在 service 层有个接口实现在 ctx 中注入 orm ,接口的实现在 repo 层,一般就如下使用方式:
```
type Transaction interface {
TX(ctx context.Context, fn func(ctx context.Context) error) error
}

func (d *Repo) TX(ctx context.Context, fn func(ctx context.Context) error) error {
return d.db.Transaction(func(tx *gorm.DB) (err error) {
defer func() {
if e := recover(); e != nil {
err = fmt.Errorf("%#v", e)
// log
}
}()
ctx = context.WithValue(ctx, contextTxKey{}, tx)
err = fn(ctx)
return err
})
}

```
service 层调用各 repo:
```

s.tm.TX(ctx, func(ctx context.Context) error {
if err := s.Repo1.Create(ctx, ...); err != nil{
return err
}
return nil
})
```
3. 个人会封装一层,用于常规的 curd 实现,然后各个 dao 不通用的部分单独写
73 天前
回复了 cnhh 创建的主题 OpenAI 低价的 GPT-4-turbo 模型 API 来了
用户名:github_8621
联通畅游卡,29 元 135G+100 分钟通话
8 元流量王套餐用于保号,好像是 30 分钟通话+200M 流量
之前是 5 元的保号套餐,小天神卡。
@Zys2017 直接找客服转,打电话或者 app 或者公众号人工客服,都可以转的
联通畅游卡,29 块钱,135G + 100 分钟通话,联通官方有这个套餐,如果是浙江省内卡还可以老用户直接转。但有合约,2 年合约,合约结束不取消会自动享受优惠
有房有车,还有现金流 300W ,难道躺平不够么?还有啥好焦虑的,光 300W 存余额宝,一年也可以 6-7w 吧,更何况现在工作又没丢
大多数考核都是看领导的喜好,上面跟谁关系好就给谁打高分。
而且每个人做的业务不一样,有的业务产出明显,有的业务重调研,产出效果一般。
每个人职级与工资不一样,这是一个重要的维度其实,但好多可能都放在一起去考核。
所以有这么多不确定因素在,这绩效大多数还是形同虚设,最后还是变成领导喜好去打
83 天前
回复了 ChiuLam 创建的主题 职场话题 大龄失业如何自救
红利也不是每个人都能吃到,在红利期间,没多跳,就吃不到。还有买房,没有格局的也没吃到。每个人都以为时间倒退多少年,就能吃尽那个时代的红利,但有没有想过,你是在知道结果的时候去回看的,不是身处在那个时代的人。如果你和马云马化腾一个时代,你就能和他们达到一样的成就么?
96 天前
回复了 pianjiao 创建的主题 职场话题 还在上班的举手🙋‍♂️
最后一天
172 天前
回复了 BeyondBouds 创建的主题 生活 对于 PDD,不屑---理解---加入---真香
所以这种小件是有相关的旗舰店还是啥,怎么筛选靠谱的店? 去年疫情放开,在 pdd 上买了温度计,结果温度计都上不了 36 度...坑得很
如果要使用 markdown ,把 confluence 给排除了,那个 markdown 插件很难用,而且样式很难看
1  2  3  4  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3605 人在线   最高记录 6547   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 28ms · UTC 04:48 · PVG 12:48 · LAX 21:48 · JFK 00:48
Developed with CodeLauncher
♥ Do have faith in what you're doing.