自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 资源 (4)
  • 问答 (1)
  • 收藏
  • 关注

原创 常用排序算法的理解

基数排序的平均时间复杂度为O(d(r+n)),因为基数排序是分配与收集的重复过程,所以位数d是循环次数,O(n)是每轮分配的次数,O®可以看成是每轮收集的次数,其中r为关键字的范围,文中是[0, 9],此外r还有可能是八进制或者字符。:插入排序最坏的情况是一个记录需要与前面的所有记录比较,但是前面的记录已经是有序的了,如果挨个比较效率就太慢了,所以可以使用二分查找的方式比较数据,这样可以减少比较次数,基本达到O(nlog2N)的效果,但是需要注意的是记录的移动次数并没有改变。时间上要比直接插入快些。

2023-10-30 13:53:45 611

原创 三种快排算法理解

当然不是,值得一提的是java8中的sort方法并没有单独的利用某一个排序算法,而是充分利用了八大排序算法的优势,当排序序列小于32时使用折半查找的直接插入算法,当大于32时使用归并排序算法分割序列,序列小于32时依旧使用折半查找的直接插入算法,不过其中还有很多很多的优化策略,例如当一对序列进行归并时,归并算法需要重新分配与之长度相同的一段数组空间,很是浪费空间,但是java8先计算出不需要排序的子序列,然后只new出较短序列长度相同的数组存储临时值,与普通的归并算法比较,可以节省至少一半的空间。

2023-10-30 11:07:48 303

原创 git跳过用户名密码验证,以及配置credential-helper

③manager-core:如果是windows机器,可以使用名为windows凭据的**[credential helper]**工具,这是一种windows自带的密码管理器,非常适合存储git用户名和密码。此外**[credential helper]**工具还支持配置多种存储方式。git使用的使用是一种名叫**[credential helper]**的工具来完成用户名密码存储的。平时我们在使用git命令时,如果使用http方式拉取代码每次都需要使用填写用户名和密码,非常的麻烦。

2023-10-30 10:55:19 688

原创 http1,https,http2,http3总结

我们使用的网络可以分为(会话层和表示层可以忽略),每一层使用下一层的功能,并为上一层提供接口,我们经常听说的http协议就是应用层的协议,其中应用层协议包括ftp等等,而应用层还需要使用传输层的协议,http使用的就是tcp协议,http3计划使用udp协议。就是当网络环境发生变化时,这条连接不中断。如果帧没有按序到达,为了减少重传的帧序列,会在tcp帧的首部增加已经到达的帧的范围,例如,1,2,3,4,5,如果1245到达,3缺失,在发送ack帧时就可以选择发送2的确认ack以及4至5的sack。

2023-10-30 10:53:24 773

原创 mysql日志文件bin-log,redo-log,undo-log总结

在mysql中,缓冲池中的数据都是以页为单位的进行读写的(包括数据页,以及之前说过的索引页),而redo log就是记录物理页变化的日志文件,形如,XX表空间+XX偏移量写入了“XX”数据。redo log和bin log都是记录的更新操作,但是redo log记录的不是逻辑变化,而是物理页变化。redo log buffer是事务日志在内存中的空间,redo log file才是事务日志在磁盘上的空间。那么redo log是如何保证事务的持久性?

2023-10-30 10:50:20 165

原创 延迟队列实现方案总结

日常开发中,可能会遇到一些延迟处理的消息任务,例如以下场景①订单支付超时未支付②考试时间结束试卷自动提交③身份证或其他验证信息超时未提交等场景。④用户申请退款,一天内没有响应默认自动退款等等。如何处理这类任务,最简单的方法就是将消息插入到数据库,然后使用定时任务扫描数据库。但是如果如果大量用户请求需要处理,就需要线程频繁的连接数据库,这样可能会对其他数据库请求造成影响,这样情况下我们可以使用延迟队列方式解决此类问题。

2023-10-30 10:45:33 85

原创 常见限流方案总结

现在很多网站都会添加反爬策略防止暴力破解或不间断爬取,同时为了不让系统因为短时间内大量并发而崩溃,都会添加一定的限流措施。

2023-10-30 10:39:57 696

原创 操作系统原子性与锁,synchronized小结

首先处理器会保证基本的内存操作的原子性,比如从内存读取或者写入一个字节是原子的,但对于(cas指令,tsl指令)读-改-写、或者是其它复杂的内存操作是不能保证其原子性的,又比如跨总线宽度、跨多个缓存行和夸页表的访问,这时候需要处理器提供总线锁和缓存锁(旧版本的synchronized使用的是重量级锁,即互斥锁,这种锁的优点是当线程竞争比较大时可以提升性能,但线程竞争比较小或者临界区执行时间较短时会降低性能,所以java后续版本针对synchronized做了优化。以下3种是硬件提供修改数据的原子操作。

2023-10-30 10:37:54 136

原创 Token,Cookie,IndexedDB总结

所以为了防止跨域攻击,浏览器只会发送同源(协议相同,域名相同,端口相同)网站的cookie,例如,访问http://www.baidu.com网站时,只会发送该网站的cookie数据,不会发送http://www.qq.com的cookie。cookie在第一次发出请求时(或者登录或者请求页面),响应会在Set-Cookie中返回一定的信息,用作记录用户的状态,该状态会保存在客户端浏览器中,一般在对同一个域名发请求时会携带此cookie,服务端验证请求中的cookie并判断如何响应。

2023-10-30 10:28:31 51

原创 bootstrap怎样让按钮或者组件左右对齐

1.登录页的form表单可以是使用margin:0 auto的方式,居中对齐2.div可以使用pull-right, text-center, pull-left3.按钮或者p标签可以使用text-right, text-center, text-left

2018-07-09 11:48:37 26402

原创 java客户端进行kafka测试时,生产者不能生产信息,消费者不能消费信息,而且没有报错,但是在虚拟机中没有任何错误

我的kafka在虚拟机中都正常启动,而且在虚拟机中生产和消费信息都没有错误,但是使用window客户端生产和消费时不成功,而且也不报任何错误,生产和消费消息时都停留一段时间然后结束。以下是我提供的一种思路,但不一定适合所有这样的错误:先看一下虚拟机系统中kafka安装目录的config/server.properties中的listener有没有配置正确。注意不要写成localhost,要写成具体...

2018-06-17 19:19:20 2605

原创 hive+mysql整合时出现 Column length too big for column‘text’ use BLOB or TEXT instead

安装hive时,一定要注意hadoop和hive的版本问题com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Column length too big for column 'PARAM_VALUE' (max = 16383); use BLOB or TEXT instead这是因为mysql是使用utfmb4编码的,gbk使...

2018-06-08 12:53:49 5108

原创 处理归档 libaio1_0.3.109-4_amd64.deb (--install)时出错: 正试图覆盖...它同时被包含于软件包...在处理时有错误发生...

出现上述错误的原因是因为该文件因为之前的某个deb的安装已经有内容了,安装与他相关文件时,需要覆盖该文件,但是没有成功。执行如下命令dpkg -i --force-overwrite /libaio1_0.3.109-4_amd64.deb强制覆盖安装错误的内容,/libaio1_0.3.109-4_amd64.deb是你需要安装的deb文件...

2018-06-07 16:35:29 4997 1

原创 Ubuntu 可以ping通DNS 无法访问外网的问题

在学习hadoop的时候,需要先将虚拟机设置为nat模式和设置静态ip,但是有时候会发生无法访问外网的错误例如,当使用ping www.baidu.com的时候会提示unkown host www.baidu.com,这是你需要检测一下一下配置...

2018-05-21 09:29:09 18305 8

原创 hadoop启动后jps查不到namenode的解决办法

1.如果是先启动了namenode,没有启动datanode就报错了,你需要去查看一下hadoop的日志文件(hadoop安装目录/logs),找到namenode的log文件(我的是hadoop-test-namenode-ubutun_1001.log),查看该文件,滑到最下面查看报错信息1)如果显示的是Does not contain a valid host:port authority那...

2018-05-18 18:18:00 16748

原创 百度ueditor的初始化工作

1.从百度上下载过来的ueditor文档,直接解压,解压后添加到一个自己命名的文件夹中,我命名的是ueditor。2.将ueditor这个文件夹直接放在自己创建的web工程的webroot下面,文档上和网上很多都说放在webcontent目录下,但是普通的或者已经建好的web工程,没有这个文件夹,放在webtoot下载也是一样的。3.导入相应的js文件,注意目录一定要引入到jsp中。<scr...

2018-03-22 10:31:45 999

原创 ubuntu系统下mysql的离线压缩包下载安装

1.先找到mysql的官网:https://dev.mysql.com2.点击菜单栏中download栏3.点击download页面的community子菜单4.点击最上面的选项MySQL Community Server,到达下载页面5.选择与系统相对应的安装包,(我选择的是第一个,虽然不是tar.gz文件,但可以解压之后,在拖拽进去)6.压缩包解压后,还不能安装,因为缺少两个依赖包(libai...

2018-03-18 15:08:43 3605 1

navicat11mysql的可视化工具

非常好用的可视化开发工具包,安装简单,可以兼容多种数据库,像mysql,oracle,sqlserver等。

2018-01-07

aceadmin后台管理框架模板

ace后台管理模板,开发速度快界面美观,兼容多种表格插件,以bootstrap为基础,可融入java或者php程序

2018-01-07

jdk-8u51-windows-i586_V8.0.510.16_14459_BDdl.exe

jdk的新版本

2017-07-22

java EE_6API文档

比较权威的文档

2017-05-24

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

TA关注的人

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