11 2022 档案

摘要:冒泡排序 基本思想 第 i (i = 1, 2, …) 趟排序时从序列中前 n - i + 1 个元素的第 1 个元素开始,相邻两个元素进行比较,若前者大于后者,两者交换位置,否则不交换。 代码实现 def bubbleSort(self, arr): # 第 i 趟排序 for i in rang 阅读全文
posted @ 2022-11-26 22:25 habc706 阅读(22) 评论(0) 推荐(0) 编辑
摘要:结构: jdk8之前是数组+链表(数据多之后存在大量hash冲突,链表会变得很长,查询速度太慢),jdk8之后数组+链表+红黑树。 key和value是整合为一个Entry单位存储的。 put过程: 通过hash算法计算key的hash值,并计算在数组下表index(下标 i = (n - 1) & 阅读全文
posted @ 2022-11-25 15:59 habc706 阅读(57) 评论(0) 推荐(0) 编辑
摘要:受限于硬件、内存和性能,我们不可能无限制的创建任意数量的线程,因为每一台机器允许的最大线程是一个有界值。也就是说ThreadPoolExecutor管理的线程数量是有界的。线程池就是用这些有限个数的线程,去执行提交的任务。然而对于多用户、高并发的应用来说,提交的任务数量非常巨大,一定会比允许的最大线 阅读全文
posted @ 2022-11-24 22:44 habc706 阅读(45) 评论(0) 推荐(0) 编辑
摘要:先看看接口关系 1.ArrayList和LinkedList区别 ArrayList是对象数组实现的,LinkedListed是基于双链表实现的。 LinkedList的存储消耗较大,除了存储数据外还要有上下节点的位置。 搜索和读取数的时候前者所花时间比后者小,但插入后者比前者快 2.使用场景: 如 阅读全文
posted @ 2022-11-21 20:47 habc706 阅读(261) 评论(0) 推荐(0) 编辑
摘要:springcloud gateway官网 为什么需要网关 敏感业务的进一步保护 服务限流 熔断和日志监控 负载均衡和反向代理 ...... 总体来说是对微服务的一种保护。 网关的实现 zuul gateway gateway可配置内容有(也可以配置类实现): id:路由唯一表示 uri :路由目的 阅读全文
posted @ 2022-11-20 21:27 habc706 阅读(60) 评论(0) 推荐(0) 编辑
摘要:数据类型: String Hash {"key":""val} List set {A,B,C} SortedSet String: 指令:get set mget mset setnx(有不加) setex(时间/秒) incr 、incrby。 应用场景:大部分业务场景都适用。 特殊使用:Bit 阅读全文
posted @ 2022-11-20 14:44 habc706 阅读(23) 评论(0) 推荐(0) 编辑
摘要:整体架构图: 1.服务注册与发现 RPC远程调用框架中,管理每个服务与服务之间依赖关系比较复杂,管理比较复杂,所以需要使用服务治理,管理服务于服务之间依赖关系,可以实现服务调用、负载均衡、容错等,实现服务发现与注册。 1.1Eureka Eureka服务端:服务端是注册中心,不需要写业务类,只需等待 阅读全文
posted @ 2022-11-20 10:34 habc706 编辑

点击右上角即可分享
微信分享提示