day3学习笔记

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

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

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

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

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

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

3.大模型api的使用

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

4.推荐系统的用户画像

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

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

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

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

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

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

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

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

6.claude的使用

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

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

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

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

相关推荐
red_redemption3 小时前
自由学习记录(143)
学习
楼田莉子4 小时前
MySQL数据库:MySQL的数据类型
数据库·学习·mysql
小陈phd4 小时前
系统架构师学习笔记(三)——计算机体系结构之存储系统
笔记·学习·系统架构
Rsun045515 小时前
AI智能体学习路线
人工智能·学习
feasibility.5 小时前
SSH Agent Forwarding 与 tmux 排障笔记
linux·运维·服务器·经验分享·笔记·ssh
charlie1145141915 小时前
通用GUI编程技术——Win32 原生编程实战(十六)——Visual Studio 资源编辑器使用指南
开发语言·c++·ide·学习·gui·visual studio·win32
知识分享小能手6 小时前
MongoDB入门学习教程,从入门到精通,MongoDB查询(4)
数据库·学习·mongodb
weixin_409383126 小时前
godot等轴视角tilemaplayer的学习 isocheric的素材xy大小怎么调
学习·游戏引擎·godot
2201_754864786 小时前
学习日记(2026年3月23日)
学习