MySQL高效索引:覆盖索引
作者:踏雪无痕来源:https://www.cnblogs.com/chenpingzhao/p/4776981.html概念如果索引包含所有满足查询需要的数据,则该索引称为覆盖索引(CoveringIndex),也就是平时所说的不需要回表操作。判断标准使用explain,可以通过输出的extra列
Mybatis3.3.x技术内幕:执行一个Sql命令的完整流程
作者:祖大俊来源:https://my.oschina.net/zudajun/blog/670373Mybatis中的Sql命令,在枚举类SqlCommandType中定义的。publicenumSqlCommandType{UNKNOWN,INSERT,UPDATE,DELETE,SELECT,
Tomcat7 1000 并发量配置以及配置优化
作者:_NullPointer来源:https://www.cnblogs.com/renwei/p/4315444.html首先,修改tomcat/conf/server.xml配置文件。其次,修改tomcat/bin/catalina.bat配置文件为以下。主要修改了maxThreads、acc
分页场景(limit,offset)为什么会慢?
作者:叶不闻链接:https://juejin.im/post/5c4db295e51d4503834d9c43从一个问题说起五年前在腾讯的时候,发现分页场景下,mysql请求速度非常慢。数据量只有10w的情况下,selectxxfrom单机大概2,3秒。我就问我师父为什么,他反问“索引场景,mys
浏览器缓存原理总结
作者:Poetry来源:http://blog.poetries.top/2019/01/02/browser-cache/一、浏览器缓存基本认识分为强缓存和协商缓存1、浏览器在加载资源时,先根据这个资源的一些httpheader判断它是否命中强缓存,强缓存如果命中,浏览器直接从自己的缓存中读取资源
关于Http协议,你必须要知道的
作者:浪里行舟来源:https://segmentfault.com/a/1190000016751071引言HTTP协议是HyperTextTransferProtocol(超文本传输协议)的缩写,是用于从万维网服务器传输超文本到本地浏览器的传送协议。HTTP是基于TCP/IP协议通信协议来传递数
C语言和C++哪个效率更高?
很多小伙伴都会有这样的疑问,C语言和C++执行效率上哪一个更高呢?针对这样的问题,今天我们就一起来看一下吧!C语言C++1.开发效率当代码量比较小的时候,使用c语言可以很方便的就完成代码的开发和维护,但是当代码量达到一定数目以后,c++面向对象的思想的优势就很好的体现出来了,这种思想使代码重用更加高
如何在C语言下关闭socket?2种方式轻松搞定
谈一谈C语言关闭socket的两种方式:一、shutdown()#includeintshutdown(intsockfd,inthow);how的方式有三种,分别是:SHUT_RD(0):关闭sockfd上的读功能,此选项将不允许sockfd进行读操作。不允许接受。SHUT_WR(1):关闭soc
Object类的方法有哪些?
1.getClass()方法final,native方法,获得运行时类型。2.hashCode()方法hashCode()方法主要用于hash表,比如HashMap,当集合要添加元素时,大致按如下步骤:1.先调用该元素的hashCode()方法,直接定位到它应该放置的物理位置上2.如果这个位置上没有
如何保证数据库和缓存的双写一致性?
前言在分布式系统中,缓存和数据库同时存在时,如果有写操作的时候,先操作数据库还是先操作缓存呢?先思考一下,可能会存在哪些问题,再往下看。下面我分几种方案阐述。缓存维护方案一假设有一写(线程A)一读(线程B)操作,先操作缓存,在操作数据库。,如下流程图所示:1)线程A发起一个写操作,第一步delcac
想学消息队列,AMQP协议了解一下?
一、AMQP是什么AMQP(AdvancedMessageQueuingProtocol,高级消息队列协议)是一个进程间传递异步消息的网络协议。二、AMQP模型工作过程发布者(Publisher)发布消息(Message),经由交换机(Exchange)。交换机根据路由规则将收到的消息分发给与该交换
你平时是怎么用建造者模式的?
介绍我用的最多的就是实现链式赋值。前段时间写了个项目,一个类的属性那叫一个多啊。刚开始直接写一堆set代码,后来set代码实在是太多了,真心看不下去了,用建造者模式重构了一下,嗯,看起来舒服多了。基本上很多框架中都用到了建造者模式,每个Java程序员也肯定用过建造者模式,只不过你没有意识到这就是建造
mysql库不能修改为utf8mb4编码,但又想存emoji表情怎么办?
前言Emoji在我们生活中真的是越来越常见了,几乎每次发消息的时候不带个Emoji,总觉得少了点什么,似乎干巴巴的文字已经无法承载我们丰富的感情了。对于我们开发者来说,如何将Emoji存入MySql数据库或者取出来,就变成了一种必须掌握的技能了。Emoji是一种图形符号,能够很直观地反应出某种文字含
项目中的if else太多了,该怎么重构?
前言ifelse过多的话,一般都是用策略模式来进行重构,策略模式也非常的简单。先定义一个接口,各种处理分支实现这个接口,定义好条件->处理类的映射关系,然后根据条件找到响应的处理类执行即可,当有新的分支的话,只需要增加一个接口实现类,增加一个条件->映射类的映射关系即可。还是很好容易理解
.NET Core 3.0 里新的JSON API
为什么需要新的JSONAPI?JSON.NET大家都用过,老版本的ASP.NETCore也依赖于JSON.NET。然而这个依赖就会引起一些版本问题:例如ASP.NETCore某个版本需要使用JSON.NETv10,而另一个库需要使用JSON.NETv11;或者JSON.NET出现了一个新版本,而AS
做程序员的老婆,一定要注意的事情
预计阅读时间:7分钟作者|Arale来源|https://www.jianshu.com/p/492903fb7005今天来说说一位女青年的老公以及他们的事儿。如有雷同,纯属巧合。十一年前我和程序猿第一次见面,还是大一军训期间。我甚至不确定程序猿是否记得那是第一次见面。当时不小心装伪文艺参加了吉他社
Java学习进阶之路:如何用Jsoup实现爬虫技术?
1.Jsoup简述Java中支持的爬虫框架有很多,比如WebMagic、Spider、Jsoup等。今天我们使用Jsoup来实现一个简单的爬虫程序。Jsoup拥有十分方便的api来处理HTML文档,比如参考了DOM对象的文档遍历方法,参考了CSS选择器的用法等等,因此我们可以使用Jsoup快速地掌握
Java学习知识点:小白如何掌握JSP技术?
Java初级开发之jsp概述1.关于jspJavaServerPages简称jsp,从“server”这个词可以看出,这其实也是一门java服务端技术,其实可以简单的把jsp认为是servlet,一点错也没有。Jsp的实质,就是客户端需要的资源是通过jsp技术动态生成的。2.jsp的技术原理1)当客
C#中的深拷贝与浅拷贝
浅拷贝和深拷贝之间的区别:浅拷贝是指将对象中的数值类型的字段拷贝到新的对象中,而对象中的引用型字段则指复制它的一个引用到目标对象。如果改变目标对象中引用型字段的值他将反映在原始对象中,也就是说原始对象中对应的字段也会发生变化。深拷贝与浅拷贝不同的是对于引用的处理,深拷贝将会在新对象中创建一个新的和原
javascript核心之DOM操作
JS一个重要功能就是操作DOM,改变页面显示。目录:1、基本概念2、节点类型3、节点关系4、节点操作基本概念DOM全称为DocumentObjectModel,即文档对象模型,是针对HTML和XML的一个API,描绘了一个层次化的节点树,可以添加、移除和修改页面的某一部分。DOM可以将任何HTML或