最新文章

  • 2019-10-26 0 307
    为了进字节跳动,我精选了29道Java经典算法题,带详细讲解

    前言: 如题,很多粉丝私信,让分享一些算法面试题,今天他来了;精选29道Java经典算法面试题,并且做了详细的讲解,希望能够帮助到大家! Java经典算法题 1. Java 的 16 进制与字符串的相互转换函数 /** * 将指定 byte 数组以 16 进制的形式打印到控制台 * @param hint String * @param b byte[] * @return ...

  • 2019-10-24 0 367
    Tomcat学习笔记(史上最全tomcat学习笔记)

    Tomcat学习笔记(史上最全tomcat学习笔记) tomcat介绍 Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。 Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍...

  • 2019-10-22 0 124
    算法总结-广度优先算法

    前面我们了解了深度优先算法,在遍历一棵树的时候会深入地遍历完树的一个分支后才会去遍历其它的分支。而广度优先算法则是从根节点开始一层一层的进行遍历,只有完全遍历完一层所有的节点后才会进入下一层的遍历。广度优先算法的一般套路如下: 创建一个队列并将根将节点插入到个队列中,此时根节点作为第一层,总共有一个节点。 在每层遍历开始前,队列的长度就是这一层的节点总数,我们记录下这个数目然后不断地将节点出队进行...

  • 2019-10-18 0 289
    Spring Cloud 微服务实战(三) - 服务注册与发现

    订单服务源码 https://github.com/Wasabi1234/SpringCloud_OrderDemo 商品服务源码 https://github.com/Wasabi1234/SpringCloud_ProductDemo 0 分布式下服务注册的地位和原理 0.1 分布式系统中为什么需要服务发现 A 类比青楼中的嫖客, B 类比青楼女子,注册中心呢就相当于青楼中的妈咪 一般 嫖客服...

  • 2019-10-18 0 252
    Docker容器实战(八) - 漫谈 Kubernetes 的本质

    在前面以Docker项目为例,一步步剖析了Linux容器的具体实现方式。 通过这些应该明白:一个“容器”,实际上是一个由Linux Namespace、Linux Cgroups和rootfs三种技术构建出来的进程的隔离环境。 一个正在运行的Linux容器,其实可以被看做 一组联合挂载在 /var/lib/docker/aufs/mnt 上的rootfs,这部分称为“容器镜像”(Container...

  • 2019-10-16 0 208
    Docker容器实战(七) - 容器眼光下的文件系统

    前两文中,讲了Linux容器最基础的两种技术 Namespace 作用是“隔离”,它让应用进程只能看到该Namespace内的“世界” Cgroups 作用是“限制”,它给这个“世界”围上了一圈看不见的墙 这么一搞,进程就真的被“装”在了一个与世隔绝的房间里,而这些房间就是PaaS项目赖以生存的应用“沙盒”。 还有一个问题是:墙外的我们知道他的处境了,墙内的他呢? 1 容器里的进程眼中的文件系统 ...

  • 2019-10-12 0 141
    漫谈MySQL的锁机制

    1 MySQL的三种锁 1.1 表锁 开销小,加锁快 不会出现死锁 锁定粒度大,发生锁冲突的概率最高,并发度最低 1.2 行锁 开销大,加锁慢 会出现死锁 锁定粒度小,发生锁冲突的概率最低,并发度最高 1.3 页锁 开销和加锁时间介于表锁和行锁之间 会出现死锁 锁定粒度介于表锁和行锁之间,并发度一般 1.4 引擎与锁 MyISAM和MEMORY支持表锁 BDB支持页锁,也支持表锁 Innodb既支...

  • 2019-10-08 0 84
    Docker容器实战(六) - 容器的隔离与限制

    Linux容器中用来实现“隔离”的技术手段:Namespace。 Namespace实际上修改了应用进程看待整个计算机“视图”,即它的“视线”被操作系统做了限制,只能“看到”某些指定的内容。对于宿主机来说,这些被“隔离”了的进程跟其他进程并没有区别。 在之前虚拟机与容器技术的对比图里,不应该把Docker Engine或者任何容器管理工具放在跟Hypervisor相同的位置,因为它们并不像Hype...

  • 2019-09-20 0 202
    算法总结-归并排序

    归并排序是分治法的一种应用,其思路是将数组分为左右两部分,分别递归地进行归并排序,然后将这两部分给合并起来。归并排序的c++递归实现可以参考下面的模板: int mergeSort(iterator l, iterator r) { if (r - l <= 1) return; iterator m = l + (r - l) / 2; int count ...

  • 2019-09-10 0 211
    算法总结-回溯法

    回溯法是一种通过暴力穷举的方式解决问题的方式,是深度优先搜索的一种具体应用。其思路不难理解,想象一下你在走一个迷宫,当在一个路口有A, B, C 三条岔路的时候你要怎么办呢? 大家可以很容易地想到先尝试道路A, 如果走不通就回到这个路口尝试道路B,如果还走不通就尝试道路C,这就是一个典型地应用回溯法的例子。如果将目光着眼于整个迷宫,就可以发现这个迷宫其实就是一颗多叉树,每个路口就是一个节点,每个路...