摘要: 链接:https://www.nowcoder.com/discuss/82665 1.你们项目的分布式架构是怎么做的?java分布式开发用什么中间件?2.nginx底层原理?集群中有服务器挂了或者上线怎么处理?https://www.cnblogs.com/ray-... 阅读全文
posted @ 2019-03-20 10:18 strawqqhat 阅读(174) 评论(0) 推荐(0) 编辑
摘要: (1):MyISAM存储引擎不支持事务、也不支持外键,优势是访问速度快,对事务完整性没有 要求或者以select,insert为主的应用基本上可以用这个引擎来创建表支持3种不同的存储格式,分别是:静态表;动态表;压缩表静态表:表中的字段都是非变长字段,这样每个记录都是... 阅读全文
posted @ 2019-03-20 10:17 strawqqhat 阅读(169) 评论(0) 推荐(0) 编辑
摘要: TCP的连接建立是一个三次握手过程,目的是为了通信双方确认开始序号,以便后续通信的有序进行。主要步骤如下:1. 连接开始时,连接建立方(Client)发送SYN包,并包含了自己的初始序号a;2. 连接接受方(Server)收到SYN包以后会回复一个SYN包,其中包含了... 阅读全文
posted @ 2019-03-20 10:10 strawqqhat 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 线程池的优点1、线程是稀缺资源,使用线程池可以减少创建和销毁线程的次数,每个工作线程都可以重复使用。2、可以根据系统的承受能力,调整线程池中工作线程的数量,防止因为消耗过多内存导致服务器崩溃。线程池的创建1 public ThreadPoolExecutor(int ... 阅读全文
posted @ 2019-03-20 09:31 strawqqhat 阅读(265) 评论(0) 推荐(0) 编辑
摘要: AVL树(http://baike.baidu.com/view/593144.htm?fr=aladdin),又称(严格)高度平衡的二叉搜索树。其他的平衡树还有:红黑树、Treap、伸展树、SBT。 注:使用 "nil 叶子"或"空(null)叶子",它不包含数据而... 阅读全文
posted @ 2019-03-20 08:59 strawqqhat 阅读(138) 评论(0) 推荐(0) 编辑
#home h1{ font-size:45px; } body{ background-image: url("放你的背景图链接"); background-position: initial; background-size: cover; background-repeat: no-repeat; background-attachment: fixed; background-origin: initial; background-clip: initial; height:100%; width:100%; } #home{ opacity:0.7; } .wall{ position: fixed; top: 0; left: 0; bottom: 0; right: 0; } div#midground{ background: url("https://i.postimg.cc/PP5GtGtM/midground.png"); z-index: -1; -webkit-animation: cc 200s linear infinite; -moz-animation: cc 200s linear infinite; -o-animation: cc 200s linear infinite; animation: cc 200s linear infinite; } div#foreground{ background: url("https://i.postimg.cc/z3jZZD1B/foreground.png"); z-index: -2; -webkit-animation: cc 253s linear infinite; -o-animation: cc 253s linear infinite; -moz-animation: cc 253s linear infinite; animation: cc 253s linear infinite; } div#top{ background: url("https://i.postimg.cc/PP5GtGtM/midground.png"); z-index: -4; -webkit-animation: da 200s linear infinite; -o-animation: da 200s linear infinite; animation: da 200s linear infinite; } @-webkit-keyframes cc { from{ background-position: 0 0; transform: translateY(10px); } to{ background-position: 600% 0; } } @-o-keyframes cc { from{ background-position: 0 0; transform: translateY(10px); } to{ background-position: 600% 0; } } @-moz-keyframes cc { from{ background-position: 0 0; transform: translateY(10px); } to{ background-position: 600% 0; } } @keyframes cc { 0%{ background-position: 0 0; } 100%{ background-position: 600% 0; } } @keyframes da { 0%{ background-position: 0 0; } 100%{ background-position: 0 600%; } } @-webkit-keyframes da { 0%{ background-position: 0 0; } 100%{ background-position: 0 600%; } } @-moz-keyframes da { 0%{ background-position: 0 0; } 100%{ background-position: 0 600%; } } @-ms-keyframes da { 0%{ background-position: 0 0; } 100%{ background-position: 0 600%; } }