day3学习笔记

1.DDIA序列化和反序列化的作用

把基于内存的数据结构变成适合存储的格式,具体的有比如存储到数据库时,发送给其他进程时。

2.在数据库中向前兼容和向后兼容的必要性

向后兼容使得,一个进程能读自己先前写入的数据,向后兼容在滚动升级,部分进程使用新代码,部分进程使用旧代码时允许运行旧代码的进程读新进程写的数据。

基于数据流的模式中有基于数据库的、基于RPC远程调用和异步消息通信的,在这些地方都会用到编码和解码,模式的意义在于减少了需要存储的字段信息。

比如一个节点存储的都是一个模式的数据,则只需要在开始存储模式信息,另外一种方法是使用版本号来标记使用的是什么模式,在远程过程调用中可以在通信开始沟通双方使用的模式。

3.大模型api的使用

在使用大模型完成任务时,可以使用few shots的方法,即用少量的例子、要解决的问题和需求来作为prompt去生成我们想要的结果;除此之外大模型本质上是一个文本续写,可以使用QA的格式来让大模型回答我们的问题,这种给人的感觉就好像是claude去约束模型做事情的规范。

4.推荐系统的用户画像

用户画像不是形象上的一个很像人的画像,而是描绘人的一些特性,比如身高年龄兴趣爱好等等,在推荐系统中构建用户画像才能在此基础上去做推荐。

推荐系统中从文本到用户画像,这里涉及的文本有用户文本,有用户交互的物品的文本。

涉及两个问题分别是从非结构化的文本中提取出结构化的文本和把物品的文本信息传递给用户。

非结构化文本提取结构化信息的方法有很多,比如根据embedding等等。

5.分布式系统的复制和分片

复制和分片的含义在于,多节点能够提高吞吐量,使用多个节点进行读写;多节点冗余能预防因故障而导致服务不可用,增加容错;多节点可以使得就近访问而不用去访问远端的服务器。

复制和分片的区别是复制是冗余相同的数据多份,分片是把一份数据的不同部分存储在不同的节点。

在系统中,水平扩展和垂直扩展是不同 方向的扩展,垂直是指通过提升机器性能,比如增加cpu核数、增加磁盘大小、增加内存大小来提升性能,但是性能的增加是有限的,因为后期成本需要过多,而水平扩展需要的成本相对较少但是在复杂度上有一定的投入。

6.claude的使用

claude可以通过在当前项目目录配置.claude文件夹和Claude.md文件来约束模型的行为,这样和上下文的弱约束不同有一定的限制。

最近学到一个关于应该学习什么样的知识的思考,就是学习能为公司提供价值的技术。比如对于一名程序员来说,编译原理确实很有知识,但是不能直接作用于帮助公司开发,提升效率,所以对于公司的绩效,对于长期的升值效果就没有那么明显,最应该学习的是那些能直接知行合一,在工作中能用到的。

虽然这种方法可能有目的性的嫌疑,但是人生就是需要带着一点目的性,才能进步更快。对于同样的初级工程师,可能学习并发编程、网络编程就比编译原理有用的。

针对学习时间碎片化,个人的做法应该是在碎片化的时间学习系统化的知识,时间是碎片化的,但知识应该系统的,比如找一本书,找一门课一点一点的学,如果东看一篇文章西看一篇可能就会不知全貌。

相关推荐
Go Work7 小时前
两个等值条件摆着,MySQL 偏要全表扫
经验分享·笔记
Oll Correct7 小时前
Adobe illustrator 案例十四:花元素标志草图绘制
笔记·ui·adobe·illustrator
北京云帆互联科技9 小时前
云帆培训考试系统更新说明:v9.3.0
java·学习
sxlishaobin11 小时前
Maven Setting详解
java·学习·maven
每月一号准时摆烂11 小时前
服务器运维笔记(一)——使用shell编写实时查看BMC功率的脚本
运维·服务器·笔记
柳鲲鹏1 天前
内斗学概论:43、平级内斗
笔记
星恒随风1 天前
MySQL 从零入门(四):表的增删改查与基础查询详解
linux·服务器·数据库·笔记·mysql
li星野1 天前
相位补偿学习记录:把被颅骨“打乱“的声波重新对齐
学习
Z21-X1 天前
云原生运维学习笔记:ECShop全链路容器化部署与Docker底层资源隔离深度剖析
运维·笔记·学习·云原生
red_redemption1 天前
自由学习记录(230)
学习