- 博客(68)
- 问答 (1)
- 收藏
- 关注
原创 Elesticesearch
应用场景:给你一个巨大的文档数据,文档中存储着许多非结构化的数据,如下:{“id” : “1”, “name” : “佛山张学友”, “age” : “15”},{“name” : “广州周润发”, “height” : “182”},…中间有10000万行…{“style” : “music”, “name” : “深圳薛之谦”},{“name” : “东莞赵丽颖”}找出name的属性值为 “深圳薛之谦” 的数据。
2023-04-28 15:00:52
724
原创 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
原创 图解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
原创 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
原创 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
原创 【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
原创 数据结构 - 线段树
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
原创 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
原创 Java常用的线程池
CachedThreadPool:该线程池会创建一个可缓存的线程池,线程池中的线程数会根据需要自动增加或减少。如果线程池中的线程闲置时间过长,线程池中的线程会被回收。WorkStealingPool:该线程池会根据需要自动增加或减少线程,线程池中的线程会自动获取新的任务执行,可以提高CPU利用率。FixedThreadPool:该线程池会创建指定数量的线程,这些线程会一直存在,直到线程池被关闭。这些线程池在不同场景下有不同的适用性,开发人员可以根据实际情况选择适合自己的线程池来管理线程。
2023-03-28 17:00:50
458
原创 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关注的人
RSS订阅