自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

我在深圳的这些日子的博客

记录深圳的工作和生活

  • 博客(298)
  • 收藏
  • 关注

原创 阿里云ECS服务器安装docker

ECS 安装docker。详细步骤

2024-04-19 14:19:36 28

原创 ollama大语言模型

【代码】ollama大语言模型。

2024-04-18 21:30:36 187

原创 权限认证和 设计模式

使用非对称加密(或对称加密),给前端一个公钥让他把数据加密后传到后台,后台负责解密后处理数据。1 文件很大建议使用对称加密,不过不能保存敏感信息。2. 文件较小,要求安全性高,建议使用非堆成加密。RBAC权限模型5张表的关系(用户、角色、权限)一. 上传数据的安全性怎么控制?组长审批,主管审批,副总裁,总裁。检验参数,填充订单,算价,落库。二. 权限认证是如何实现的?用户与角色的表,一对多的关系。角色与权限的表,一对多的关系。内容审核(视频,文章,课程)文本审核,图片审核,视频审核。

2024-04-12 19:52:01 313

原创 限流的实现方式

2、Nginx 漏桶算法。3、网关,令牌桶算法。

2024-04-09 21:36:33 197

原创 分布式事务的解决方案--Seata架构

seata架构

2024-03-18 16:49:30 546

原创 jdk8与jdk17的区别。springboot2.x与springboot3.x的区别

总的来说,JDK 17 是在 JDK 8 的基础上进一步发展和改进的版本,具有更多的语言特性、性能改进、安全性更新以及库和工具的改进。因此,对于那些使用 JDK 8 的开发人员来说,升级到 JDK 17 可能会带来许多好处,包括更好的开发体验、更高的性能和更好的安全性。总的来说,Spring Boot 3.x 是对 Spring Boot 2.x 的进一步改进和演进,旨在提供更好的性能、更多的功能和更好的开发体验。

2024-03-14 22:41:34 1155

原创 了解下索引的几棵树?

③B+树便于扫库和区间查询:底层是双向指针的链表,进行范围查询直接从叶子节点进行查询,不需要每次从根节点开始获取数据。②查询效率B+树更加稳定:数据都存储到叶子节点,都从根开始找到叶子节点,查找路径差不多,所以效率稳定。①磁盘读写代价B+树更低:非叶子节点不存储数据,只存储指针。

2024-03-14 22:34:28 456

原创 kubernetes的网络flannel与caclio

VXLAN,即Virtual Extensible LAN(虚拟可扩展局域网),是Linux本身支持的一网种网络虚拟化技术。VXLAN可以完全在内核态实现封装和解封装工作,从而通过“隧道”机制,构建出覆盖网络(Overlay Network)calico除了可以解决网络通信还可以解决网络策略。二. 网络插件calico。

2024-02-23 12:23:06 455

原创 kubernetes各大组件及特点

kubernetes设计出pod-deployment-Service经典的3层访问机制。Ingress可以将集群内服务的HTTP和HTTPS暴露出来,以方便从集群外部访问。负责运行具体的pod,维护其整个生命周期,为pod提供网络,存储相关的资源。每一个pod都有一个独立的IP地址,且这些pod不通过任何NAT互通。给新创建的pod或未被调度的pod挑选一个合适的节点 供pod运行。跨节点的pod与pod之间的通信。1)pod内容器之间的网络通信。2)pod之间的网络通信。

2024-02-23 11:34:06 372

原创 kubernetes面试题及核心知识点

2、hostPath宿主机的存储为容器分配资源。不会随着pod的删除而消失,持久地存放在该节点上。通过deployment或statefuleset来管理多实例。从而保证服务的高可用。1、emptyDir宿主机的存储为容器分配资源。临时储存,随着pod的删除而消失,用来限制,控制与分离一个进程组的资源。通过PV持久化地保存数据。secret密码文件。

2024-02-23 00:02:48 595

原创 架构师能力模型

存储一致性问题的协议:计算输入和输出控制器

2024-02-22 12:50:55 378

原创 如何进行高性能架构的设计

减少脚本的请求次数:css和js压缩,将多个文件压缩成一个文件。减少图像请求次数:多张图片变成 一张。增加缓存控制:请求头。

2024-02-22 11:38:55 605

原创 如何评估和优化系统的高性能

总体来看,随着压力增大,系统单位时间内被访问的次数增加。结合延迟和吞吐量观察的话,系统优化性能指标是找到延迟趋向最低和吞吐量趋向最高的点。DNS缓存和DNS预解析提高DNS解析时间。系统的关键性能指标:吞吐量,延迟和TP。延迟:从客户端发送请求到接收响应的时间。吞吐量:反应单位时间内处理请求的能力。TP:99%的请求达到的一个时间值。

2024-02-22 10:55:28 319

原创 如何实现系统的高可用

常用的第三方存储有DB,Redis,ES,MQ等,除了基础设施 监控外,还有集群节点,分片信息,存储数据信息等特有存储监控指标。1、如何 评估系统高可用?2、如何监控系统高可用?3、如何保证系统高可用?监控报警策略有三部分组成。

2024-02-21 12:22:00 474

原创 redis的缓存穿透,缓存并发,缓存雪崩,缓存问题及解决方案

缓存穿透问题原因解决方案

2024-02-20 17:33:22 1035

原创 Redis面试题及核心知识点讲解

Redis的大部分操作都是在内存中完成。单线程模型避免了多线程之间的竞争,redis采用了I/O多路复用机制处理大量的客户端Socket请求。为了保证数据不丢失,要把内存中的数据存储到磁盘,以便缓存服务器重启之后,还能够从磁盘中恢复原有的数据,这个过程就是redis的持久化。redis是单线程的,主要是指网络I/O线程。Redis的持久化,集群同步等操作,则由另外的线程来执行。4 redis是怎么实现数据不丢失的?怎么实现服务高可用的?2 . redis是单线程,为什么处理这么快?

2024-02-20 12:17:30 501

原创 如何确定分库还是 分表?

分库分表引入的另外一个问题就是数据查询的问题在未分库分表之前,我们查询数据总数时,可以直接通过 SQL的 count()命令,现在数据分片到多个库表中,如何解决呢?分表因为数据量比较大,导致事务执行缓慢;分库是因为单库的性能无法满足要求。3 范围分片(range)4 如何解决数据查询问题?

2024-02-19 21:21:03 686

原创 Mysql如何优化数据查询方案

mysql默认是异步模式。mysql主库提交事务的线程并不会等待binlog同步到各从库,就返回客户端结果。这种模式一旦主库宕机。第二阶段:同步binlog。binlog复制到所有从库上。每个binlog写到暂存日志中。电商平台的商品评论的实际案例,设计一个主从复制的延迟方案。第三阶段:回放binlog。Mysql主从复制还有哪些模型?

2024-02-19 17:41:09 613

原创 Mysql的隔离级别和锁

两次读取的数据中间被修改,读取的数据不同。破坏上面一个条件,即可解决掉死锁的问题。死锁的解决办法:重启应用。

2024-02-19 15:26:59 417

原创 数据库索引面试的相关问题

1、索引列上做了计算,函数,类型转换等操作。索引失效是因为查询过程需要扫描整个索引并回表。代价高于直接全表扫描。Like匹配使用了前缀匹配符“%abc”字符串不加引号导致类型转换。常见索引的优化的方法。

2024-02-18 21:08:55 477

原创 mysql索引

mysql索引 B+Tree

2024-02-14 21:07:28 410

原创 如何设计一个预约抢购活动

节点取模的形式,优点是均匀分布,缺点是扩展性不好。所以,我们可以采用一致性hash。根据业务规则进行分片。可以根据三级品类进行分片。解决单一热点问题,采用range(范围分片)1)哈希算法,对商品ID进行分片。

2024-02-07 15:31:04 407

原创 如何回答消息确认不丢失

三,防止消息丢失的阶段操作。1、如何知道有消息丢失?3、如何确保消息不丢失。

2024-02-03 21:52:07 480

原创 RPC原理

RPC

2024-02-03 20:21:34 735

原创 go语言(23)---- modules

go modules

2024-01-28 21:26:02 377

原创 go语言(22)---- range & select

go. range select

2024-01-27 22:20:34 701 1

原创 go语言(二十一)---- channel的关闭

go channel close

2024-01-27 21:44:11 943

原创 go语言(二十)---- 有缓冲的channel

go 有缓冲 channel

2024-01-26 22:32:42 539

原创 go语言(十九)---- channel

go channel

2024-01-26 21:35:27 1004

原创 go语言(十八)---- goroutine

go. 协程。 go加一个函数,开辟一个线程

2024-01-26 20:57:30 700

原创 go语言(十七)----json

go json与结构体互相转换

2024-01-23 21:49:43 836

原创 go语言(十六)----tag

go tag 结构体标签

2024-01-23 21:26:04 530

原创 go语言(十五)----reflect

go reflect

2024-01-23 20:29:38 600

原创 go语言(十四)----反射

go 反射。pair

2024-01-22 22:39:16 684

原创 go语言(十三)-----interface

go interface

2024-01-22 21:38:38 733

原创 go语言(十二)----多态

go 多态。子类。父类。接口

2024-01-21 00:07:15 594

原创 go语言(十一)----面向对象继承

go 继承。子类继承父类

2024-01-20 23:28:38 629

原创 go语言(十)---- 面向对象封装

go 继承。首字母大写

2024-01-19 20:37:52 540

原创 go 语言(九)----struct

go. struct. 结构体

2024-01-19 19:56:55 590

原创 go语言(八)---- map

go。map的声明和定义,使用

2024-01-19 19:34:34 750

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除