自定义博客皮肤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)
  • 问答 (1)
  • 收藏
  • 关注

原创 Redis网络通讯协议

Redis的通信协议首先是以行来划分,每行以\r\n行结束。每一行都有一个消息头,消息头共分为5种分别如下:(+) 表示一个正确的状态信息,具体信息是当前行+后面的字符。(-) 表示一个错误信息,具体信息是当前行-后面的字符。(*) 表示消息体总共有多少行,不包括当前行,*后面是具体的行数。()表示下一行数据长度,不包括换行符长度\r\n,后面则是对应的长度的数据。(:) 表示返回一个数...

2020-03-19 10:14:32 168

原创 如何选择垃圾收集器

组合的选择单CPU或小内存,单机程序:-XX:+UseSerialGC多CPU,需要最大吞吐量,如后台计算型应用:-XX:UseParallelGC或者-XX:UseParallelOldGC多CPU,追求低停顿时间,需快速响应如互联网应用:-XX:+UseConcMarkSweepGC...

2020-03-10 23:01:51 346

原创 BlockingQueue的核心方法

方法类型抛出异常特殊值阻塞超时插入add(e)offer(e)put(e)offer(e,time,unit)移除remove()poll()take()poll(time,unit)检查element()peek()不可用不可用===================================================...

2020-03-06 20:43:01 212

原创 线程池

private final AtomicInteger ctl = new AtomicInteger(ctlOf(RUNNING, 0)); private static final int COUNT_BITS = Integer.SIZE - 3;=29 //高三位记录线程池的工作状态 //低29位记录当前线程的工作数 private static final...

2020-03-03 19:33:08 163

原创 事务隔离级别以及各级下的并发访问问题

事务并发访问引起的问题以及如何避免:事务的隔离级别更新丢失脏读不可重复读幻读未提交读避免发生发生发生已提交读避免避免发生发生可重复读避免避免避免发生串行化避免避免避免避免...

2020-02-27 15:41:51 188

原创 MyISAM对比InnoDB

MyISAM适用场景:频繁执行全表count语句,对数据CRUD不高,查询非常频繁,没有事务InnoDB适用场景:对数据CRUD很频繁,支持事务,可靠性要求较高。

2020-02-27 14:27:39 119

原创 联合索引的最左匹配原则

1.最左前缀匹配原则,MySQL会一直向右匹配直到遇到范围查询(>,<,between,like)就会停止匹配比如a=3 and b=4 and c>5 and d=6 如果建立(a,b,c,d)顺序的索引,d是用不到索引的,如果建立(a,b,c,d)的索引都可以用到,a,b,c的顺序可以任意调整。2.=和in可以乱序,比如a=1 and b=2 and c=3建立(a,b,c...

2020-02-27 14:14:48 222

原创 MySQL数据库性能优化

一、慢日志的配置信息SHOW VARIABLES LIKE '%quer%';SHOW STATUS LIKE '%slow_queries%';SET GLOBAL slow_query_log=on;SET GLOBAL long_query_time=1;slow_query_log=on打开慢日志;long_query_time=1设置慢查询时间为一秒,设置完毕后重新连接客户...

2020-02-27 13:59:49 129

原创 ConcurrentHashMap方法流程图

2020-02-25 09:17:54 392

原创 常见集合的扩容机制

数据类型底层数据结构默认初始容量加载因子扩容增量ArrayList数组101:当元素个数超过容量长度的1倍时进行扩容0.5:扩容后容量为原容量的1.5倍Vector数组101:当元素个数超过容量长度的1倍时进行扩容1:扩容后容量为原容量的2倍HashSetHashMap160.75:当元素个数超过容量长度的0.75倍时进行扩容1:扩容后...

2020-02-11 15:31:04 653

原创 零拷贝实现远离

1、应用程序中调用read() 方法,这里会涉及到一次上下文切换(用户态->内核态),底层采用DMA(direct memory access)读取磁盘的文件,并把内容存储到内核地址空间的读取缓存区。2、由于应用程序无法读取内核地址空间的数据,如果应用程序要操作这些数据,必须把这些内容从读取缓冲区拷贝到用户缓冲区。这个时候,read() 调用返回,且引发一次上下文切换(内核态->用...

2020-01-08 17:25:30 148

原创 SpringCloud 点餐系统微服务架构图

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用M...

2019-12-24 14:35:20 1001

转载 Django框架学习--其他技术应用

1.静态文件1.1 使用在 网页使用的css文件,js文件和图片叫做静态文件。1)新建静态文件夹 static。2) 配置静态文件所在的物理目录。Settings.pySTATIC_URL设置访问静态文件对应的url。STATICFILES_DIRS设置静态文件所在的物理目录。动态生成静态文件的路径。1.2 加载目录STATICFILES_FINDERS=(‘django.c...

2018-11-13 16:29:07 172

转载 Django框架学习--模板templates

1.模板的功能产生html,控制页面上展示的内容。模板文件不仅仅是一个html文件。模板文件包含两部分内容:1)静态内容:css,js,html。2)动态内容:用于动态去产生一些网页内容。通过模板语言来产生。2.模板文件的使用通常是在视图函数中使用模板产生html内容返回给客户端。a)加载模板文件 loader.get_template获取模板文件的内容,产生一个模板对象。b)定...

2018-11-13 16:19:59 254

原创 Django模板渲染错误

def index(request): temp = loader.get_template('booktest/index.html') context =RequestContext(request,{}) res_html =temp.render(context) return HttpResponse(res_html)报错:context must...

2018-11-08 16:52:31 1000

原创 Django 与MySQL数据库 (一)

get:返回一条且只能有一条数据,返回值是一个对象,参数可以写查询条件。all:返回模型类对应表的所有数据,返回值是QuerySet(查询集)。filter:返回满足条件的数据,返回值是QuerySet,参数可以写查询条件。exclude:返回不满足条件的数据,返回值是QuerySet,参数可以写查询条件。order_by:对查询结果进行排序,返回值是QuerySet,参数中写排序的字段。...

2018-11-06 19:52:16 258

转载 Django在根据models生成数据库表时报 __init__() missing 1 required positional argument: 'on_delete'

class BookInfo (models.Model):‘’‘图书模型类’’’# 图书名称,CharField说明是一个字符串,max_length指定支付穿的最大长度btitle = models.CharField(max_length=20)# 出版日期,DateFilld说明是一个日期类型bpub_date = models.DateField()class HeroInf...

2018-11-05 16:59:05 181

空空如也

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

TA关注的人

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