自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(18)
  • 资源 (4)
  • 收藏
  • 关注

原创 聚集索引和非聚集索引的区别

1.使用聚集索引的查询效率要比非聚集索引的效率要高,但是如果需要频繁去改变聚集索引的值,写入性能并不高,因为需要移动对应数据的物理位置。2.非聚集索引在查询的时候可以的话就避免二次查询,这样性能会大幅提升。3.不是所有的表都适合建立索引,只有数据量大表才适合建立索引,且建立在选择性高的列上面性能会更好。聚集索引和非聚集索引的区别-CSDN博客聚簇索引和非聚簇索引。

2023-04-17 10:59:53 269

原创 hashmap如何得到数组下标

长度16或者其他2的幂,Length-1的值是所有二进制位全为1,这种情况下,index的结果等同于HashCode后几位的值。只要输入的HashCode本身分布均匀,Hash算法的结果就是均匀的。计算book的hashcode,结果为十进制的3029737,二进制的101110001110101110 1001。假定HashMap长度是默认的16,计算Length-1的结果为十进制的15,二进制的1111。可以说,Hash算法最终得到的index结果,完全取决于Key的Hashcode值的最后几位。

2023-04-12 16:21:14 479

原创 RocketMQ、ActiveMQ和Kafka比较

ActiveMQ随着队列和虚拟主题使用的增加,ActiveMQ IO模块达到了一个瓶颈。我们尽力通过节流、断路器或降级来解决这个问题,但效果并不理想。KafkaKafka不能满足我们的要求,其尤其表现在低延迟和高可靠性方面。RocketMQApache RocketMQ 自诞生以来,因其架构简单、业务功能丰富、具备极强可扩展性等特点被众多企业开发者以及云厂商广泛采用。历经十余年的大规模场景打磨,RocketMQ 已经成为业内共识的金融级可靠业务消息首选方案,被广泛应用于互联网、大数据、移动互联网、物联网等领

2023-02-03 10:28:18 201

转载 java容器都有哪些

容器是指用以容纳物料并以壳体为主的基本装置。java容器类类库的用途是"保存对象"。摘自: “Thinking in Java”.Java集合类是一种特别有用的工具类,可以用于存储数量不等的对象,并可以实现常用的数据结构,如栈,队列等.Java集合就像一种容器,可以把多个对象(实际上是对象的引用,但习惯上都称对象) “丢进” 该容器中. 摘自: “疯狂Java讲义”.java中的容器也叫集合,是专门用来管理对象的对象.

2023-02-01 16:29:12 863

转载 Java异常详解

异常:就是程序出现了不正常的情况。异常或者错误,都是以他们所在体系的父类作为后缀。XxxException 异常XxxError 错误A、如何自定义一个异常类?让自定义类继承RuntimeException 或者继承Exception注意:编译时期异常(非RuntimeException),如果在方法内部用throw抛出了一个异常对象那么在方法声明上必须用throws关键字声明异常,运行时期异常就不需要这样。

2023-01-31 15:45:06 85

原创 Dubbo

当消费方调用一个接口方法后,Dubbo Client会并行调用多个服务提供者的服务,只要一个成功即返回。当消费者调用一个接口方法后,Dubbo Client会逐个调用所有服务提供者,任意一台调用异常则这次调用就标志失败。根据服务提供者ip设置hash环,携带相同的参数总是发送的同一个服务提供者,若服务挂了,则会基于虚拟节点平摊到其他提供者上。当服务消费端用服务出现异常后,在后台记录失败的请求,并按照一定的策略后期再进行重试。当服务消费方调用服务提供者失败后,立即报错,也就是只调用一次。按权重设置随机概率。

2023-01-30 14:58:18 97

原创 zookeeper

Zookeeper 分布式服务框架是Apache Hadoop 的一个子项目,它主要是用来解决分布式应用中经常遇到的一些数据管理问题,如:统一命名服务、状态同步服务、集群管理、分布式应用配置项的管理等。

2023-01-30 14:43:56 93

原创 虚拟机、docker、k8s区别

docker:应用是主机的一个进程,启动比较快,namespace隔离应用,cgroup限制程序资源。k8s:容器管理工具,涵盖的开发、部署、测试、监控等各个环节。虚拟机:hostOS、guestOS两层操作系统。

2023-01-30 10:06:22 557

原创 ES(elasticsearch)

1、初始化mapping:string(text、keyword)、setting(number_of_shards分片数量 (5-10G);分词ik_smart;refresh_interval刷新时间,默认1秒)2、全量更新,调用程序->kafka->ES,增量更新,canal->Rocketmq->程序接收->kafka->ES。3、查询:boost,搜索条件权重。

2023-01-30 10:02:02 85

原创 Java泛型

2. 固定上边界的通配符(Upper Bounded Wildcards),采用

2023-01-30 09:55:48 61

原创 时间复杂度和空间复杂度

一般情况下,算法中基本操作重复执行的次数是问题规模n的某个函数,用T(n)表示,若有某个辅助函数f(n),使得当n趋近无穷大时T(n)/f(n)的极限值为不等于零的常数,则f(n)是T(n)的同数量级函数。当n趋近于无穷大时,如果lim(T(n)/f(n))的值为不等于0的常数,则称f(n)是T(n)的同数量级函数。那么,如果T(n)/f(n)的极限值是等于0,那么就是说f(n)的增长趋势比T(n)大太多,那么就说明他们俩不是一个数量级的。首先你要知道T(n)是f(n)忽略常量、低次幂和最高次幂的系数。

2023-01-29 19:23:06 265

原创 HashMap和HashTable区别

HashMap和HashTable区别

2023-01-29 19:14:48 141

原创 list三个实现类ArrayList、LinkedList、vector

list三个实现类ArrayList、LinkedList、vector

2023-01-29 19:01:29 125

原创 二叉树、B树、B+树、红黑树B树B树与二叉树的区别

B+树的内部节点并没有指向关键字具体信息的指针,因此其内部节点相对B树更小,如果把所有同一内部节点的关键字存放在同一盘块中,那么盘块所能容纳的关键字数量也越多,一次性读入内存的需要查找的关键字也就越多,相对IO读写次数就降低了。,只需要扫一遍叶子结点即可,但是B树因为其分支结点同样存储着数据,我们要找到具体的数据,需要进行一次中序遍历按序来扫,所以B+树更加适合在区间查询的情况,所以通常B+树用于数据库索引。B+关键字集合分布在在叶子节点中,非叶子节点只是关键字叶子节点的索引。红黑树的插入删除效率更高。

2023-01-29 16:27:41 2084

原创 8种基本数据结构

故名思议,双向链表就是有两个方向的链表,同单向链表不同,双向链表中每一个节点不仅存储下一节点的指针,而且存储指向前一个节点的指针。哈希值并不是具有唯一性,在某些情况下Hash值会冲突,HashMap在Hash冲突时,会将元素在数组的位置上添加为链表元素结点,当。的,前一个元素存储的下一个地址中存储的不一定是下一个元素。:单项链表是最简单的链表形式,我们将链表中最基本的数据称为节点(node),每一节点包括数据块和下一节点的指针。对于一个任意节点,如果其右子树的深度为j,其左子树的深度为j或j+1。

2023-01-29 15:48:48 260

原创 Java线程池

keepAliveTime:线程存活的实现, 如果线程池当前有超过 corePoolSize 个线程,并且线程空闲的时间超过了 keepAliveTime,那么这些线程将被销毁.创建一个固定长度的线程池,每当提交一个任务就创建一个线程,直到达到线程池的最大数量,这时线程规模将不再变化,当线程发生未预期的错误而结束时,线程池会补充一个新的线程。创建一个可缓存的线程池,如果线程池的规模超过了处理需求,将自动回收空闲线程,而当需求增加时,则可以自动添加新线程,线程池的规模不存在任何限制。

2023-01-29 11:24:04 72

原创 Java区别比较

一、interface与abstract的相同点:1、都是没有具体实现,需要继承类进行实现;2、无法直接调用;二、interface和abstract的区别:1、interface无构造方法,abstract类可以有构造方法;2、abstract类中可以有普通成员变量,interface 只有抽象方法;3、abstract类的访问类型可以是public或是protected,但interface默认的访问类型就是public abstract。

2023-01-28 16:44:45 216 1

原创 Springboot注解

RestControllerAdvice是一个组合注解,由@ControllerAdvice、@ResponseBody组成,而@ControllerAdvice继承了@Component,因此@RestControllerAdvice本质上是个Component,用于定义@ExceptionHandler,@InitBinder和@ModelAttribute方法,适用于所有使用@RequestMapping方法。标注在类上时,此类的所有方法都将异步执行,标注在类上时,只有此方法异步执行。

2023-01-28 10:50:18 172

hbase权威指南 源代码 英文

hbase权威指南 源代码 英文

2013-03-21

Python.Unix和Linux系统管理指南

中文名: Python UNIX 和Linux 系统管理指南 原名: Python UNIX and Linux System Administration 别名: Python,UNIX,Linux 作者: (美)基弗特译者: 杨明华 资源格式: PDF 版本: 扫描版 出版社: 机械工业出版社书号: 9787111266631发行时间: 2009年09月01日 地区: 大陆 语言: 简体中文 简介: 内容简介 本书介绍了python语言如何为管理unix和linux服务器提供各种更加有效的任务处理方式。书中各章都提出了具体的管理问题,如并发或数据备份,然后通过python示例提供了解决方案。通过本书,读者可以学习如何用python开发自己的一套命令行工具来解决诸多问题。. 作者建立了一个免费下载的ubuntu虚拟机,其中包含本书的源代码和运行实例,也包括snmp、ipython、sqlalchemy及其他工具。通过本书,你可以发现python在如下几个方面的作用:.. ·读取文本文件并提取信息。 ·使用多线程和fork选项。 ·使用网络设备从一个进程获取另一个进程的信息。 ·创建可点击的、易于交互的gui工具。 ·通过交互式snmp编程实现监控大型主机集群。 ·掌握ipython shell,作为bash、korn或z-shell的替换或补充。 ·将云计算整合到基础设施中,编写googleapp引擎的应用程序。 ·通过定制脚本解决独特数据备份的难题。 ·使用django、sqlalchemy和stormorm与数据库进行交互。 通过本书及其补充的虚拟机,你可以了解如何打包并部署python应用程序和库,以及编写代码在类似的多个unix和linux平台上运行。 目录: 序. 前言 第1章 python简介 为什么要选python 学习的动力 一些基础知识 在python中执行命令 在python中使用函数 通过import语句实现代码复用 第2章 ipython 安装ipython 基础知识 从功能强大的函数获得帮助 unix shell 信息搜集 自动和快捷方式 本章小结

2013-03-14

js 权限树、菜单树

js 权限树、菜单树js 权限树、菜单树js 权限树、菜单树

2011-08-08

js 可输入下拉框(jquery)

js 可输入 下拉框下拉框下拉框下拉框下拉框下拉框下拉框下拉框下拉框下拉框下拉框下拉框下拉框下拉框下拉框下拉框下拉框下拉框

2011-08-08

空空如也

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

TA关注的人

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