获得徽章 1
- #青训营笔记创作活动#
2月5日 打卡day18
Hertz 通过使用中间件,为路由请求提供了 jwt 的校验功能。Hertz_jwt的设计逻辑像是一种聚合,把能够用到的鉴权相关操作、字段都放在了一起评论点赞 - #青训营笔记创作活动#
2月4日 打卡day17
在前后端分离的开发方式中,前端运行起来后会提供一个URL(统一资源定位符)供用户进行访问,前端会调用后台的api接口的URL进行数据处理,这两个URL都包含以下几个部分:
通信协议:如常见的http、tcp/ip
主机号:常说的host:如localhost(127.0.0.1),或者其他IP地址
端口号:服务监听的端口号,常用的8080或其他,
资源路径:端口号的内容即路径
当在一个页面发起一个新的请求,该请求的URL和原页面的URL中的通信协议、主机号、端口号中任意一个有不同,就称为跨域访问
如在前端的运行在8080端口,访问的首页是http://localhost:8080,在使用gin开发的api项目中,服务监听端口是http://localhost:8090,两个URL端口不同,便发生了跨域访问。展开评论点赞 - #青训营笔记创作活动#
2月3日 打卡day16
慢查询日志记录慢SQL
explain分析SQL的执行计划
profile 分析执行耗时
Optimizer Trace分析详情
确定问题并采用相应的措施展开评论点赞 - #青训营笔记创作活动#
2月2日 打卡day15
HTTP状态码用来表示响应结果的状态,其中200是正常响应,4xx是客户端错误,5xx是服务端错误。
客户端和服务端之间加入nginx,可以起到反向代理和负载均衡的作用,客户端只管向nginx请求数据,并不关心这个请求具体由哪个服务器来处理。
后端服务端应用如果发生崩溃,nginx在访问服务端时会收到服务端返回的RST报文,然后给客户端返回502报错。502并不是服务端应用发出的,而是nginx发出的。因此发生502时,后端服务端很可能没有没有相关的502日志,需要在nginx侧才能看到这条502日志。
如果发现502,优先通过监控排查服务端应用是否发生过崩溃重启,如果是的话,再看下是否留下过崩溃堆栈日志,如果没有日志,看下是否可能是oom或者是其他原因导致进程主动退出。如果进程也没崩溃过,去排查下nginx的日志,看下是否将请求打到了某个不知名IP端口上。展开评论点赞 - #青训营笔记创作活动#
1月30日 day14
更多的内容类似于设计模式,还有一些经验,收获颇多。这个“优秀的后端开发,应该保持优化性能的嗅觉。比如避免创建比必要的对象等等。”和“封装方法传参”属实是不知道如何细化控制。只能具体情况具体分析了。展开评论点赞 - #第五届青训营阅读打卡#
1月29日 打卡day13
最简单粗暴的方式就是用一条电缆将两台机器连接起来,通过电的物理特性电平,高电平和低电平两种电平分别代表0和1二进制数字,那么计算机的数据载体0和1就可以通过电信号的形式在电缆中传送。
所以计算机的接收端只需关注采样电平值,能够区分出高电平和低电平那么自然就可以实现了;而通过电的高低电平表示的01,在通信原理中实际上就是数字信号。展开评论点赞 - #青训营笔记创作活动#
1月28日 打卡day12
- Producer :生产者,负责将消息发送到 Broker
- Consumer :消费者,从 Broker 接收消息
- Consumer Group :消费者组,由 多个 Consumer 组成 。消费者组内每个消费者负责消费不同分区的数据, 一个分区只能由一个组内消费者消费 ;消费者组之间互不影响。所有的消费者都属于某个消费者组,即消费者组是逻辑上的一个订阅者。
- Broker :可以看做一个独立的 Kafka 服务节点或 Kafka 服务实例 。如果一台 服务器 上只部署了一个 Kafka 实例,那么我们也可以将 Broker 看做一台 Kafka 服务器。
- Topic :一个逻辑上的概念,包含很多 Partition, 同一个 Topic 下的 Partiton 的消息内容是不相同的 。
- Partition :为了实现扩展性,一个非常大的 topic 可以分布到多个 broker 上,一个 topic 可以分为多个 partition ,每个 partition 是一个有序的队列。
- Replica :副本, 同一分区的不同副本保存的是相同的消息 ,为保证集群中的某个节点发生故障时,该节点上的 partition 数据不丢失,且 kafka 仍然能够继续工作,kafka 提供了副本机制,一个 topic 的每个分区都有若干个副本,一个 leader 和若干个 follower。
- Leader :每个分区的多个副本中的"主副本", 生产者以及消费者只与 Leader 交互 。
- Follower :每个分区的多个副本中的"从副本", 负责实时从 Leader 中同步数据,保持和 Leader 数据的同步 。Leader 发生故障时,从 Follower 副本中重新选举新的 Leader 副本对外提供服务。展开评论点赞 - #青训营笔记创作活动#
1月26日 打卡day11
复习了一下HTTPS的七次握手,但是还有个疑问,即便是拿到了TLS四次握手的两个随机数和预主密钥,但是在不知道加密算法的情况下怎么进行解密的呢?评论点赞 - #青训营笔记创作活动#
1月25日 day10
好的代码格式应当遵守以下几点:
合适的空格
代码对齐,比如大括号要对齐
及时换行,一行不要写太多代码
好在现在开发工具支持一键格式化,可以帮助美化代码格式。展开评论点赞