自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

乐嘉工作室

专注AI算法、大数据技术、区块链安全算法应用、WEB应用、物联网等技术研究

  • 博客(68)
  • 问答 (1)
  • 收藏
  • 关注

原创 LEFT JOIN与WHERE同时用,带给我的重灾难!

LEFT JOIN与WHERE同时用,带给我的重灾难!

2023-09-11 15:28:27 1407 3

原创 基于SpringBoot的秒杀商品系统

秒杀服务

2023-07-15 15:59:27 651

原创 从零搭建秒杀服务

从零搭建秒杀商品服务

2023-07-15 15:29:51 401

原创 PyQt结合OpenCV实现实时人流量统计

PyQt结合OpenCV实现实时人流量统计

2023-07-07 15:29:20 3177

原创 Elesticesearch

应用场景:给你一个巨大的文档数据,文档中存储着许多非结构化的数据,如下:{“id” : “1”, “name” : “佛山张学友”, “age” : “15”},{“name” : “广州周润发”, “height” : “182”},…中间有10000万行…{“style” : “music”, “name” : “深圳薛之谦”},{“name” : “东莞赵丽颖”}找出name的属性值为 “深圳薛之谦” 的数据。

2023-04-28 15:00:52 724

原创 手写RPC - 01

手写RPC-01

2023-04-24 11:49:38 158

原创 StringBuilder、StringBuffer、String的区别

fill:#333;color:#333;color:#333;fill:none;继承继承方法加了synchronizedappend方法append方法fill:#333;color:#333;color:#333;fill:none;append方法逻辑扩容将字符串转移到新数组更新字符串长度fill:#333;color:#333;color:#333;fill:none;扩容,然后复制字符串到新数组扩容内部逻辑fill:#333;color:#333;color:#333;

2023-04-17 21:22:31 435

原创 图解ThreadLocal核心方法

ThreadLocal

2023-04-14 10:43:31 250

原创 图解ArrayList核心方法

fill:#333;color:#333;color:#333;fill:none;数组扩容插入元素add(E e)fill:#333;color:#333;color:#333;fill:none;引用另一个函数先判断是否需要扩容大于零,代表所需容量大于数组容量,需要扩容fill:#333;color:#333;color:#333;fill:none;获取旧容量大小扩容1.5倍拷贝到新数组。

2023-04-13 15:46:31 477

原创 图解HashMap核心方法

fill:#333;color:#333;color:#333;fill:none;调用另一个方法YESNOYESNOYESNOYESNOYESNOtab==nullresize()将旧值更新为传入的value链表是否存在节点的key等于传入的key插入单链表队尾。

2023-04-13 10:00:43 381 3

原创 JVM知识汇总

JVM知识汇总

2023-04-12 22:26:41 963

原创 进程调度算法(操作系统)

进程调度算法

2023-04-11 18:05:16 6888

原创 Windows安装RocketMQ

命令:start mqbroker.cmd -n 127.0.0.1:9876 autoCreateTopicEnable=true。百度网盘地址:https://pan.baidu.com/s/1jU36FONVndj4bZqCvmFwSw。ROCKETMQ_HOME=RocketMQ安装地址。命令,start mqnamesrv.cmd。

2023-04-09 23:11:20 1264

原创 MySQL之MVCC机制实现原理

MVCC机制详解

2023-03-23 11:09:05 358 1

原创 深入理解KMP算法

KMP算法

2023-03-19 21:32:58 448

原创 排序算法汇总(数组+链表)

经典排序算法总结(数组+链表实现排序代码)

2023-03-17 12:15:07 948

原创 手写LRU缓存

LRU缓存

2023-03-15 21:03:17 475

原创 Spring Cloud Netflix之Zuul

Zuul作为Spring Cloud Netflix的网关技术实现。Spring Cloud Netflix主要使用Zuul做路由转发、限流服务、转发等。

2023-03-15 13:24:16 345

原创 Spring Cloud Netflix之Ribbon

Ribbon是Spring Cloud Netflix实现客户端负载均衡的技术实现。为了使服务可以提高高可用性,服务会以集群的方式搭建。那么客户端请求最终会请求到集群中的哪个服务,在Spring Cloud Netflix中,可以指定Ribbon的负载均衡策略算法进行最终实现。应用:添加注解@LoadBalanced即可。

2023-03-15 10:54:38 450

原创 负载均衡(软件)

为了服务的高可用性,服务一般以集群的形式存在。集群:存在多个节点,但节点间的功能都是相同的。那么如何在集群中维持高可用,这就是“负载均衡”所做的事情。而负载均衡又分为软件负载均衡和硬件负载均衡。软件类的负载均衡又可分为客户端负载均衡(例如:Ribbon)和服务端负载均衡(例如:Nginx)。

2023-03-14 18:16:04 660

原创 Spring Cloud Netflix之Eureka

Eureka对等复制看起来很简单粗暴,因此也需要解决另一个由简单引发的数据同步死循环问题,也即服务节点如何区分该数据来源是其他服务节点发来的数据同步还是客户端发过来的数据更新操作呢?因为前者只需要更新本地即可,后者需要向集群其他节点发送数据同步机制,如果不加以区分,则会导致数据同步死循环问题(例如:接收到其他节点的数据同步操作,误以为是客户端的数据更新请求,也向其他节点发送数据同步,一直往返循环)。Eureka Server服务节点在规定时间内没有收到服务实例的心跳,会默认将该服务实例的信息从注册表移除。

2023-03-14 16:43:53 483

原创 深入理解Zookeeper的ZAB协议

深入理解Zookeeper的ZAB理论

2023-03-10 22:39:20 1155

原创 深入理解AQS

AQS从入门到踹门

2023-03-10 12:01:25 577

原创 深入理解HTTP缓存

Http缓存

2023-03-02 17:08:47 476 3

原创 深入理解ReentrantLock

深入理解ReentrantLock

2023-01-26 02:50:57 954

原创 【JAVA - Druid】Druid数据库连接池 -- 快速入门使用

1. 导入相关的 jar 包 * mysql-connector-java.jar包(此包用于idea连接数据库用) * Druid.jar(对数据库进行操作(增删查改,用的是mysql) * 其他包用于数据操作使用2. 进行相关的数据库配置 ,编写.xml文件 (放在java工程src目录下)// 告诉java去com.mysql.jdbc路径下将...

2020-02-22 01:31:43 4065 5

原创 【python】淘宝利用cookies登录,爬取商品信息

所用到的库import requestsimport reimport csv1.登录淘宝(打开持续日志,便于获得登录信息)2.保存登录cookies(保存到本地mycookies.txt)3.请求登录def getHTML(): name = input('请输入爬取商品的名字:') start_url = 'https:/...

2019-11-23 17:09:15 6200 7

原创 Java+Vue实现电商网站

🌟 探索我们的全新电商平台!使用Java和Vue打造,我们为您带来无与伦比的购物体验。:已对接支付宝,确保支付过程安全可靠,让您购物无忧。立即访问,发现更多精彩!

2024-07-06 17:50:23 332

原创 Test Shorten

【代码】Test Shorten。

2024-04-25 14:24:50 389 1

原创 数据结构 - 线段树

tips:长方格中的left、right,分别代表该节点所求得的区间和。例如,left:0,right:4。代表nums中索引0到4的和=2+5+1+4+3=15。逻辑其实和建树一样,在线段树中找到修改节点的对应索引,然后修改其值,然后再依次修改根节点的值即可。(为什么数组大小是4*n?

2024-02-04 17:19:49 503

原创 hashmap的bug

earseWord中不能一处index这个key,为什么?

2024-01-31 17:35:34 235

原创 Flink-【时间语义、窗口、水位线】

🌰:可乐可乐的生产日期 = 事件时间(可乐产生的时间);可乐被喝的时间 = 处理时间(可乐被处理【喝掉=处理】的时间)。机器时间:可能不准确(例如:A可乐厂的时钟比较慢,B可乐厂的时钟比较快,但实际上B产生可乐的时间比A产生可乐的时间慢,却被先处理了)系统时间:相对准确(处理机器设置的时间,一般无误【当然分布式可能会有误差,但是一般会先校准同一个时钟再处理数据】)

2024-01-02 18:03:53 924

原创 定位内存溢出错误

XX:+HeapDumpOnOutOfMemoryError(内存溢出则会自动生成"溢出分析文件",如图1)-Xmx512m(为了快速模拟内存溢出,暂设堆空间为512m)编写发生内存溢出代码。

2023-11-08 20:25:35 213

原创 CDN技术(1)

CDN 是构建在数据网络上的一种分布式的内容分发网。CDN 的作用是采用流媒体服务器集群技术,克服单机系统输出带宽及并发能力不足的缺点,可极大提升系统支持的并发流数目,减少或避免单点失效带来的不良影响。

2023-10-26 11:42:02 148

原创 MySQL的四大特性以及实现原理

MySQL事务的四大特性:原子性:要么都执行成功、要么都执行失败。一致性:执行前后的总结果不变。隔离性:sql间的执行互不影响。持久性:一旦提交,就永久落盘到磁盘上。如何保证MySQL的四大特性:原子性:通过undo log记录事务中每条sql执行前的结果,如果事务中有执行出错,则通过undo log将所有的数据回滚到执行前的数据版本;隔离性:事务间的读写操作通过锁机制实现,写操作通过MVCC机制实现;持久性:通过redo log日志实现;一致性:通过以上三种,从而达到事务的一致性。

2023-05-23 23:15:59 1201

原创 Mybatis分页实现

Rowbound是一次性加载数据,然后再做逻辑分页PageHelper是对特定sql语句进行拦截,添加limit关键字优缺点:Rowbound加载大量数据时,会浪费大量的内存,同时加重网络的传输负担;PageHelper加载大量数据集可以发挥更好的性能,因为他是直接拼接sql的方式去进行分页查询。

2023-04-18 22:36:48 419

原创 计算机操作系统 - 进程的调度算法

从就绪队列中选择一个最先进入该队列的进程为之分配资源。

2023-03-29 23:41:36 170

原创 Java常用的线程池

CachedThreadPool:该线程池会创建一个可缓存的线程池,线程池中的线程数会根据需要自动增加或减少。如果线程池中的线程闲置时间过长,线程池中的线程会被回收。WorkStealingPool:该线程池会根据需要自动增加或减少线程,线程池中的线程会自动获取新的任务执行,可以提高CPU利用率。FixedThreadPool:该线程池会创建指定数量的线程,这些线程会一直存在,直到线程池被关闭。这些线程池在不同场景下有不同的适用性,开发人员可以根据实际情况选择适合自己的线程池来管理线程。

2023-03-28 17:00:50 458

原创 Spring-AOP常用注解

Spring-AOP常用注解

2023-03-28 16:53:10 630

原创 Dubbo的SPI机制

Dubbo 的 SPI 机制实现是基于 Java 标准库提供的 SPI 机制的扩展,Dubbo 通过自定义一个 SPI 实现类(ExtensionLoader),来实现自己的 SPI 机制。ExtensionLoader 负责加载指定扩展点接口的所有实现类,并提供基于别名查找实现类、基于自适应扩展点查找实现类等功能。Dubbo 中的 SPI(Service Provider Interface)机制是一种基于接口和扩展点的组件化机制,用于实现组件之间的解耦和灵活性。# 使用 Java 原生序列化实现。

2023-03-26 17:43:16 540

空空如也

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

TA关注的人

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