- 博客(80)
- 资源 (1)
- 收藏
- 关注
转载 详解DNS域名解析全过程
转载 :https://blog.youkuaiyun.com/m0_37812513/article/details/78775629关于dns域名解析大致过程如图: 当一个用户在地址栏输入www.taobao.com时,DNS解析有大致十个过程,如下:1. 浏览器先检查自身缓存中有没有被解析过的这个域名对应的ip地址,如果有,解析结束。同时域名被缓存的时间也可通过TTL属性来设置。...
2018-09-10 14:29:24
62189
4
转载 Java 内存区域和GC机制
转载自: https://baijiahao.baidu.com/s?id=1604308216748480477&wfr=spider&for=pc目录Java垃圾回收概况JavaGC(Garbage Collection,垃圾收集,垃圾回收)机制,是Java与C++/C的主要区别之一,作为Java开发者,一般不需要专门编写内存回收和垃圾清理代码,对内存泄露和溢出的问...
2018-09-05 22:33:21
424
转载 几个简单的设计模式资料整理
装饰器模式:https://www.cnblogs.com/zhangtianq/p/6091047.html适配器模式:https://blog.youkuaiyun.com/u012359453/article/details/79165080工厂模式和抽象工厂模式:https://blog.youkuaiyun.com/qq_32623363/article/details/78246678...
2018-09-05 14:48:35
452
转载 Redis有序集合(sortSet)的底层实现
转载自:http://www.cnblogs.com/WJ5888/p/4516782.htmlRedis中支持的数据结构比Memcached要多,如基本的字符串、哈希表、列表、集合、可排序集,在这些基本数据结构上也提供了针对该数据结构的各种操作,这也是Redis之所以流行起来的一个重要原因,当然Redis能够流行起来的原因,远远不只这一个,如支持高并发的读写、数据的持久化、高效的内存管理及淘...
2018-08-28 00:01:34
32476
1
转载 Redis Hash数据结构的底层实现
转载自:https://www.cnblogs.com/ourroad/p/4891648.html0.前言redis是KV型的内存数据库, 数据库存储的核心就是Hash表, 我们执行select命令选择一个存储的db之后, 所有的操作都是以hash表为基础的, 下面会分析下redis的hash数据结构和实现.1.hash数据结构/*Hash表一个节点包含Key,Value数据对...
2018-08-27 23:58:22
5757
原创 mysq两种引擎(MyISAM,InnoDb)的区别
MyISAM: 优点:查询数据相对较快,适合大量的select,可以全文索引。缺点:不支持事务,不支持外键,并发量较小,不适合大量update 不支持事务,但是每次查询都是原子的; 只支持表级锁,即每次操作是对整个表加锁;读锁和写锁 存储表的总行数; 一个MYISAM表有三个文件:索引文件、表结构文件、数据文件; 采用非聚集索引,索引文件的数据域存储指向数据文件的指针。辅索...
2018-08-27 16:23:40
382
转载 彻底理解Java的Future模式
转载自:https://www.cnblogs.com/cz123/p/7693064.html先上一个场景:假如你突然想做饭,但是没有厨具,也没有食材。网上购买厨具比较方便,食材去超市买更放心。实现分析:在快递员送厨具的期间,我们肯定不会闲着,可以去超市买食材。所以,在主线程里面另起一个子线程去网购厨具。但是,子线程执行的结果是要返回厨具的,而run方法是没有返回值的。所以,这才是难...
2018-08-27 10:33:06
640
转载 CountDownLatch、CyclicBarrier、Semaphore共同之处与区别以及各自使用场景
https://blog.youkuaiyun.com/jackyechina/article/details/52931453
2018-08-26 22:33:20
300
转载 ReentrantLock公平所与非公平锁,condition等待
ReentrantLock实现原理Java多线程——Condition条件java并发编程之ConditionReentrantLock加锁(lock())、释放锁(unlock())的实现
2018-08-26 10:08:59
317
转载 mysql replace 命令的使用以及sql注入
sql注入直接点击当前连接: https://bbs.ichunqiu.com/thread-9518-1-1.html?from=paperreplace使用:https://blog.youkuaiyun.com/helloxiaozhe/article/details/77427266本文从以下几个方面介绍:replace into的应用场景;replace into的原理;replace in...
2018-08-06 11:43:38
1530
转载 redis事物详解
事务Redis 通过 MULTI 、 DISCARD 、 EXEC 和 WATCH 四个命令来实现事务功能, 本章首先讨论使用 MULTI 、 DISCARD 和 EXEC 三个命令实现的一般事务, 然后再来讨论带有 WATCH 的事务的实现。因为事务的安全性也非常重要, 所以本章最后通过常见的 ACID 性质对 Redis 事务的安全性进行了说明。事务事务提供了一种“将多个命令打...
2018-07-29 14:58:50
350
转载 Linux工具快速教程(系统-详细)
linux基础linux工具进阶工具参考篇http://linuxtools-rst.readthedocs.io/zh_CN/latest/tool/gdb.html
2018-07-02 21:14:08
492
转载 git命令集合与使用
https://www.cnblogs.com/kevin-yuan/p/4677582.htmlGit常用命令gitk --all& 查看提交轨迹git branch 查看本地分支git branch -a 查看所有分支(本地&远端)git checkout -b local_branchname origin/remote_branchname 下载远程分支git merge...
2018-07-02 20:59:45
388
转载 linux下常用的打包压缩命令,mark
eoiioelinux下解压命令大全.tar 解包:tar xvf FileName.tar打包:tar cvf FileName.tar DirName(注:tar是打包,不是压缩!)———————————————.gz解压1:gunzip FileName.gz解压2:gzip -d FileName.gz压缩:gzip FileName.tar.gz 和 .tgz解压:tar zxvf Fi...
2018-06-29 10:44:45
372
转载 如何写一个简单makefile
关于书写简单的makefile文件,mark两篇讲解明白的博客,看完至少可以写出一个简单的makefile文件出来转载地址:http://wiki.ubuntu.org.cn/%E8%B7%9F%E6%88%91%E4%B8%80%E8%B5%B7%E5%86%99Makefile:MakeFile%E4%BB%8B%E7%BB%8Dhttps://www.cnblogs.com/owlman/p...
2018-06-13 11:17:54
439
转载 HTTP协议基础了解
HTTP简介HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于19...
2018-06-12 11:17:19
390
原创 复制之复制拓扑
1.一主库多备库再有少量的写和大量的读时。这种配置可以把读分摊到多个备库上面,直到备库给主库造成了太大的负担,或者主备之间的贷款成为瓶颈为止1)结构简单,灵活,满足多种需求,编码,见了很多其它拓扑结构的复杂性2)把一台备库当做待用的主库,除了复制没有其他的数据传输3)将一台备库放到远程数据中心,用作灾难恢复4)延迟一个或者多个备库,以备灾难恢复5)使用其中一个备库,作为备份,培训,开发或者测试使用...
2018-06-11 22:02:10
808
原创 mysql数据库的复制详解
1.mysql的二进制日志文件MySQL的二进制日志(binary log)是一个二进制文件,主要用于记录修改数据或有可能引起数据变更的MySQL语句。二进制日志(binary log)中记录了对MySQL数据库执行更改的所有操作,并且记录了语句发生时间、执行时长、操作数据等其它额外信息,但是它不记录SELECT、SHOW等那些不修改数据的SQL语句。二进制日志(binary log)主要用于数据...
2018-06-09 12:02:12
3796
转载 详解Mysql分布式事务XA(跨数据库事务)查询缓存
转载自:https://blog.youkuaiyun.com/soonfly/article/details/70677138在开发中,为了降低单点压力,通常会根据业务情况进行分表分库,将表分布在不同的库中(库可能分布在不同的机器上)。在这种场景下,事务的提交会变得相对复杂,因为多个节点(库)的存在,可能存在部分节点提交失败的情况,即事务的ACID特性需要在各个不同的数据库实例中保证。比如更新db1库的A表...
2018-06-07 16:01:28
2486
原创 全文索引介绍和示例
参考整理自:https://www.cnblogs.com/jimmy-muyuan/p/5874410.htmlhttps://www.cnblogs.com/php-linux/p/6565268.html全文索引MySQL支持全文索引(Full-Text) ,目前,fulltext是一种只适用于MyISAM表的一个索引类型,而且对定义索引列的数据类型也有限制,只能是以下三种的组合char、 ...
2018-06-07 11:30:50
2066
原创 mysql的随机IO,顺序IO,主键与外健的区别,before与after触发器,绑定变量,全文索引
顺序IO&随机IO顺序IO是指读取和写入操作基于逻辑块逐个连续访问来自相邻地址的数据。在顺序IO访问中,HDD所需的磁道搜索时间显着减少,因为读/写磁头可以以最小的移动访问下一个块。数据备份和日志记录等业务是顺序IO业务。随机IO是指读写操作时间连续,但访问地址不连续,随机分布在磁盘LUN的地址空间中。产生随机IO的业务有OLTP服务,SQL,即时消息服务等。(其实就是说在数据库查询时读取...
2018-06-06 22:00:41
5936
原创 数据库的分区分表介绍
整理自:https://www.cnblogs.com/hellogt/p/7151534.html?utm_source=itdadao&utm_medium=referralhttps://blog.youkuaiyun.com/xhf852963/article/details/788964271.什么是分区分表从字面上简单理解,就是把原本存储于一个库的数据分块存储到多个库上,把原本存储于一个表...
2018-06-06 00:09:25
676
原创 数据库聚簇索引和非聚簇索引,页分裂的介绍及会产生的问题(整理自网络)
参考http://www.mamicode.com/info-detail-549679.htmlhttps://blog.youkuaiyun.com/wen_3370/article/details/56667906聚簇索引(Clustered Index)和非聚簇索引 (Non- Clustered Index)最通俗的解释是:聚簇索引的顺序就是数据的物理存储顺序,而对非聚簇索引的索引顺序与数据物理排列...
2018-06-02 15:36:11
2930
转载 数据库练习题3
转载地址:https://www.cnblogs.com/aqxss/p/6563625.htmlANY关键字:假设any内部的查询语句返回的结果个数是三个,那么,select ...from ... where a>any(...) 等同于select ...from ... where a > result1 or a > result2 or a > result3A...
2018-05-31 21:16:55
886
转载 数据库练习题2
转载地址:https://blog.youkuaiyun.com/wanghongbiao1993/article/details/53588230获取当前系统日期时间:select SYSDATE() AS 系统日期时间;获取当前系统年月日:select current_date AS 年月日;获取当前系统年份:select year(CURRENT_DATE) AS 年 ;获取当前系统月份:select ...
2018-05-31 16:22:20
976
原创 sql 通配符,group by, count(*),having的简单用法,using和on的区别(整理自其它博客和教程)
W3school 数据库教程的网址,里面基本命令的用法都有,下面很多也是整理自该教程,mark,后面直接去看,省的百度。http://www.w3school.com.cn/sql/index.aspSQL 通配符在搜索数据库中的数据时,SQL 通配符可以替代一个或多个字符。SQL 通配符必须与 LIKE 运算符一起使用。在 SQL 中,可使用以下通配符:通配符描述%替代一个或多个字符_仅替代一个...
2018-05-31 10:34:36
2079
转载 数据库SQL语句练习
Left join:即左连接,是以左表为基础,根据ON后给出的两表的条件将两表连接起来。结果会将左表所有的查询信息列出,而右表只列出ON后条件与左表满足的部分。左连接全称为左外连接,是外连接的一种。Right join:即右连接,是以右表为基础,根据ON后给出的两表的条件将两表连接起来。结果会将右表所有的查询信息列出,而左表只列出ON后条件与右表满足的部分。右连接全称为右外连接,是外连接的一种...
2018-05-31 10:17:20
2405
转载 Netty高性能之Reactor线程模型
Netty是一个高性能、异步事件驱动的NIO框架,它提供了对TCP、UDP和文件传输的支持,作为一个异步NIO框架,Netty的所有IO操作都是异步非阻塞的,通过Future-Listener机制,用户可以方便的主动获取或者通过通知机制获得IO操作结果。作为当前最流行的NIO框架,Netty在互联网领域、大数据分布式计算领域、游戏行业、通信行业等获得了广泛的应用,一些业界著名的开源组件也基于Net...
2018-05-19 16:08:51
234
转载 一致性hash详解
转载地址:https://www.cnblogs.com/lpfuture/p/5796398.html其中在查找时还看到一篇比较可以文章:https://blog.youkuaiyun.com/cywosp/article/details/23397179/一致性Hash算法背景 一致性哈希算法在1997年由麻省理工学院的Karger等人在解决分布式Cache中提出的,设计目标是为了解决因特网中的热点(H...
2018-05-18 10:59:58
4536
转载 高并发网络编程之epoll详解
在linux 没有实现epoll事件驱动机制之前,我们一般选择用select或者poll等IO多路复用的方法来实现并发服务程序。在大数据、高并发、集群等一些名词唱得火热之年代,select和poll的用武之地越来越有限,风头已经被epoll占尽。本文便来介绍epoll的实现机制,并附带讲解一下select和poll。通过对比其不同的实现机制,真正理解为何epoll能实现高并发。select()和p...
2018-04-27 22:56:51
152
转载 数据库索引到底是什么,是怎样工作的,索引失效的场景
我们通过一个简单的例子来开始教程,解释为什么我们需要数据库索引。假设我们有一个数据库表 Employee, 这个表有三个字段(列)分别是 Employee_Name、Employee_Age 和Employee_Address。假设表Employee 有上千行数据。现在假设我们要从这个表中查找出所有名字是‘Jesus’的雇员信息。我们决定使用下面的查询语句:SELECT * FROM Employ...
2018-04-24 15:01:47
806
转载 大型网站应用之海量数据和高并发解决方案总结一二
转载地址:https://blog.youkuaiyun.com/xlgen157387/article/details/53230138一、网站应用背景开发一个网站的应用程序,当用户规模比较小的时候,使用简单的:一台应用服务器+一台数据库服务器+一台文件服务器,这样的话完全可以解决一部分问题,也可以通过堆硬件的方式来提高网站应用的访问性能,当然,也要考虑成本的问题。当问题的规模在经济条件下通过堆硬件的方式解...
2018-04-21 23:03:23
166
原创 java内存泄露和对象逃逸(整理自网络)
参考网址https://my.oschina.net/hosee/blog/638573http://www.cnblogs.com/binyue/p/3383555.htmlJava内存泄露的理解与解决依赖于引用判断的内存管理机制Java中对内存对象的访问,使用的是引用的方式。在Java代码中我们维护一个内存对象的引用变量,通过这个引用变量的值,我们可以访问到对应的内存地址中的内存对象空间。在J...
2018-04-21 20:51:01
1573
转载 HTTP与HTTPS的区别
转载地址:https://www.cnblogs.com/wqhwe/p/5407468.html超文本传输协议HTTP协议被用于在Web浏览器和网站服务器之间传递信息,HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息,因此,HTTP协议不适合传输一些敏感信息,比如:信用卡号、密码等支付信息。 为了解决HT...
2018-04-17 22:56:31
292
转载 怎么在海量数据中找出重复次数最多的一个
1、海量日志数据,提取出某日访问百度次数最多的那个IP。 此题,在我之前的一篇文章算法里头有所提到,当时给出的方案是:IP的数目还是有限的,最多2^32个,所以可以考虑使用hash将ip直接存入内存,然后进行统计。 再详细介绍下此方案:首先是这一天,并且是访问百度的日志中的IP取出来,逐个写入到一个大文件中。注意到IP是32位的,最多有个2^32个 IP。同样可以采用映射的方法,比如模1000...
2018-04-15 23:58:39
1362
转载 图解B树和B+树的插入和删除操作
转载地址摘要: 一, M阶B+树的定义(M阶是指一个节点最多能拥有的孩子数,M>2): 图1.1 3阶B+树 (1)根结点只有1个,分支数量范围[2,m]。 (2)除根以外的非叶子结点,每个结点包含分支数范围[[m/2],m],其中[m/2]表示取大于m/2的最小整数。一, M阶B+树的定义(M阶是指一个节点最多能拥有的孩子数,M>2):图1...
2018-04-14 22:43:22
15351
7
转载 最长回文子串——Manacher 算法
0. 问题定义最长回文子串问题:给定一个字符串,求它的最长回文子串长度。如果一个字符串正着读和反着读是一样的,那它就是回文串。下面是一些回文串的实例:12321 a aba abba aaaa tattarrattat(牛津英语词典中最长的回文单词)1. Brute-force 解法对于最长回文子串问题,最简单粗暴的办法是:找到字符串的所有子串,遍历每一个子串以验证它们是否为回文串。一个子串由子串...
2018-04-12 16:40:00
262
原创 CountDownLatch使用场景以及与join函数的区别
参考:https://blog.youkuaiyun.com/zhutulang/article/details/48504487 https://www.2cto.com/kf/201710/688656.html概念:CountDownLatch是通过一个计数器来实现的,计数器的初始值为线程的数量。每当一个线程完成了自己的任务后,计数器的值就会减1。当计数器值到达0时,它表示...
2018-04-10 16:12:42
211
原创 Java 类加载机制
前言我们知道我们写的程序经过编译后成为了.class文件,.class文件中描述了类的各种信息,最终都需要加载到虚拟机之后才能运行和使用。而虚拟机如何加载这些.class文件?.class文件的信息进入到虚拟机后会发生什么变化?这些都是本文要讲的内容,文章将会讲解加载类加载的每个阶段Java虚拟机需要做什么事(加粗标红)。类使用的7个阶段类从被加载到虚拟机内存中开始,到卸载出内存,它的整个生命周期...
2018-03-27 19:22:23
193
自定义注解实现
2017-09-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人