这是我参与「第五届青训营 」笔记创作活动的第5天 课程讲解内容: 三件套:Gorm Kitex Hertz Gorm gorm是一个已经迭代了10年+的功能强大的ORM框架,在字节内部被广泛使用并且拥有丰富的开源扩展。 Kitex是字节内部的Golang微服 ,具有高性能,强扩展的主要特点,支持多协议并且拥有丰富的开源扩展 Hertz是字节内部的HTTP框架,参考了其他开源框架的优势,结合字节跳动内部的需求,具有高易用 ,高性能、高扩展性特点。 2.三件套的使用 GORM支持:MySQL,SQLServer,PostgreSQL,SQLite。 First:需注意查询不到数据会返回ErrRecordNotFound; Find查询多条数据,查询不到返回空数组 当使用结构体作为条件查询时,GORM只会查询非零值8 物理删除:硬删除就是直接从表中把记录移除了,这是一个硬删除,硬删除会直接删除表中的记录,在需要找回数据的时候很麻烦。 软删除:软删除不会从表中真正的删除记录,而是通过标识使得这条记录在系统逻辑层面上不可见 中间件:所谓中间件,是在实际处理用户业务逻辑的生命周期中,在对应的节点安插逻辑处理,可以在核心业务逻辑前或后,是剥离非业务逻辑的重要系统组件 中间件设计像是一个调用链,context在链中各节点传递,各节点进行各自的功能处理 事务:一个最小的不可再分的工作单元;通常一个事务对应一个完整的业务(例如银行账户转账业务,该业务就是一个最小的工作单元),同时这个完整的业务需要执行多次的。 还需阅读官方文档,感觉还了解不够