
获得徽章 0
- #青训营笔记创作活动#
2/12 day23
今日学习:
redis避免数据丢失的两种方法,第一种方法是AOF,append only file,在完成命令之后讲命令写入日志,*3表示命令有三个部分,$3表示这一个操作占用3个字节;
AOF写入的时间可以通过修改选项appendfsync,如果选项是everysec表示每秒写一次日志,如果是No表示按照操作系统来写入日志,如果是always表示一次命令写入一次;如果追求高可靠可以使用always,追求高性能可以使用No,权衡可以使用everysec;
AOF重写用来避免AOF日志文件过大,导致性能下降,主线程阻塞等问题。重写的时候将之前的多条命令变成一条命令,重写的时候主线程会fork一个子线程,同时开一个重写缓存,新建一个重写日志,写完重写日志之后将重写缓存中的新命令写入重写日志,从此可以替换旧的日志;
快照RDB是对数据做一次存储,而不是存储命令;快照生成有两种方式save和bgsave,bgsave开辟子线程,不影响主线程运行,如果主线程只读不写,那么不会冲突;如果主线程需要修改数据,那么会新建副本,在副本中修改(写时复制);缺点,快照频繁产生,效率低下,可能有快照生成的恶性循环(前一个还未生成完毕,后一个开始生成;redis不允许bgsave fork两个子线程生成快照)
Redis 4.0之后支持AOF和RDB混合使用,AOF只记录两次快照之间的操作,而RDB执行频率降低展开评论点赞 - #青训营笔记创作活动#
2/11 day21
今日学习:机器学习中常见的算法:KNN算法,SVM算法,K-means算法;K-means算法用来做聚类分析,参数k是聚类中心的数量;KNN算法和SVM算法是分类算法,是有监督学习,聚类算法是无监督学习展开评论点赞 - #青训营笔记创作活动#
2/10 day21
今日学习:Docker是什么,Docker的基本原理,以及Docker的相关基本命令;Docker的性能比虚拟机好,可以做到封装一次,处处执行评论点赞 - #青训营笔记创作活动#
2/9 day20
今日学习:ChatGPT是GPT系列的产物,未来还会有GPT-4.0,参数数量是目前的五百倍,达到了100万亿个参数,目前的ChatGPT参数数量是1750亿个左右;ChatGPT可以放在特定的领域中改造使用,便于其他领域使用AI;ChatGPT也加速了AI的开发,对于ChatBot的研发有加速效果展开评论点赞 - #青训营笔记创作活动#
2/4 day19
今日学习:设计模式中的状态模式,客户端定义不同的状态,不同的状态实现不同的操作,让用户在不同的状态下可以完成不同的行为,做到用户的结果和用户的状态相关;状态改变结果改变。赞过评论1 - #青训营笔记创作活动#
2/3 day18
今日学习:java的核心竞争力在以前是完整的框架,让开发变得更加简单;微服务的概念提出之后,对框架概念提出了冲击,Go的轻量级让Go成为大部分微服务的单服务的实现语言;很多微服务相关的工具,底层使用Go来实现,这是Go的好处;展开评论点赞 - #青训营笔记创作活动#
2/2 day17
今日学习:Rust语言的前景以及Rust和Go的对比,Rust比较适合高性能高稳定性,可以牺牲一部分开发速度的项目使用,对于要求迭代较快,性能要求不严格,稳定性要求不严格的项目可以使用Go语言;Volo框架是Rust RPC框架,在字节内部使用并已经落地某些业务展开评论点赞 - #青训营笔记创作活动#
2/1 day16
今日学习:GO语言用channel实现互斥锁,轮询互斥锁,定时的轮询互斥锁;评论点赞 - #青训营笔记创作活动#
1/30 day15
今日学习:MD5加密算法具有单向性,加密之后的数据不能解密还原成原始数据;MD5还具有其他的一些性质,并且MD5是可能重复的;MD5由32位16进制的数字表示
对称加密:加密和解密使用同一种钥匙
非对称加密:公钥加密,私钥解密展开评论点赞 - #青训营笔记创作活动#
1/29 day14
今日学习:索引什么时候会失效;索引有哪些类型;为什么索引使用B+树而不是二叉树;hash树和B+树在建立索引时的区别;聚集索引和非聚集索引在不同的存储引擎上的区别,MyISM没有聚集索引,叶子节点存储一个地址指向数据展开评论点赞