cpp选手备战秋招学习笔记day17

一、场景题

1.优化和使用limit语句

有limit10 和limit 10000,10的用法

select * from User where id>10 limit 10

select *from User where id>10 limit 10000,10

直接用第二种会扫描10000+10的结果

可以的优化是使用 offset 10000、使用覆盖索引避免回表查询一些内容、使用游标的分页、使用子查询

2.slow_query_log的意义

分析性能瓶颈、分析慢查询的日志、检查没有被用到的索引、优化索引查询的设计

二、Redis实战相关

1.CPU阻塞的操作

从四个角度去看Redis的操作,和客户端的互动,包括网络IO和增删改查,后者会阻塞;和磁盘的互动,包括写AOF日志和RDB存储,同步写AOF会阻塞;主从实例的传送,从库清空数据库重写;切片集群沟通哈希槽,信息沟通。

非关键操作:某些操作可以不必等待执行结束,可以返回,比如删除操作、清空数据库操作;而对于读和同步写是关键操作。

解决阻塞的方式是对于非关键操作(不需要把结果反馈给调用方)可以让子进程去操作,然后先返回,比如删除操作,对于读取操作必须阻塞。

2.Redis和CPU之间的影响

不只是cpu快redis就快,对于多核cpu,如果每次redis实例都是在不同的核,因为不同的核不共享l1、l2缓存,所以要重新读取,命中率低,因此有redis和物理核绑定的问题。

三、agent相关内容

1.多模态的agent分成多种,第一种是解耦的单独的比如图片模型去处理,然后输出给文字模型;最近的gemini是直接在训练的时候使用的是多模态的数据。

2.无论模型的上下文窗口增长的多大,仍然会有注意力稀释的问题,这一点和人是一样的,虽然可以关注很多东西,但是如果想要产生真知灼见就需要定位在真正重要的事情上。

昨日回顾:

1.多agent的必要性:解决上下文稀释,避免塞入过多内容;解决角色分离,更专业;解决角色和思维模式的冲突,避免出现既作为选手又当裁判的对抗。

2.agent的三要素,角色、协议和拓扑。

协议包括自然语言的自我思考的语言和与其他agent沟通的schema的结构化的语言,agent之间通信的协议存在的有A2A。

3.编译的过程

预处理、编译、汇编、链接

链接静态链接是在编译期间把库代码编译,链接,而动态链接是运行时加载,更小更可扩展。

4.两种map、unordered_map的区别是后者才是O(1)的

总结:Redis的相关的内容是从不影响可用性的角度提高性能,然后对于多核的cpu也是因为切换会影响性能。

agent相关的主要就是通信协议这个很有印象,想到了在学计网的时候比喻协议就好像人和人之间的语言。

相关推荐
日拱一卒的小田9 小时前
ZYNQ学习笔记4-ZYNQ的SD卡控制器1
笔记·学习
商业白皮书11 小时前
VC 机构 Portfolio 内 AI 初创企业占比较高,可优先选择哪些具备 AI 技术与算力能力的云平台?
笔记
Fico fly11 小时前
SAP使用HTTP请求网络放行
笔记
拼图20912 小时前
Git常用语法
分布式·git·学习
钓鱼的肝12 小时前
梳理(1-5)
c++·经验分享·笔记·算法·青少年编程
Vcaker13 小时前
Linux学习29-kubernetes网络
学习
江湖人称菠萝包15 小时前
【Qt】《Qt 5.9 C++开发指南》笔记-Chapter2-GUI应用程序设计基础
笔记·qt·qt5
职豚求职小程序15 小时前
中华财险27届校招笔试[特殊字符]考情速览攻略
笔记
钓鱼的肝15 小时前
csp-j-s总结(2)
c++·经验分享·笔记·算法·青少年编程
dadaobusi16 小时前
学习:奈奎斯特
学习