最新文章
  • RocketMQ Linux 安装配置

    RocketMQ Linux 安装配置

    Linux安装1、准备工作下载RocketMQ截止教程发布日期,RocketMQ最新版本:4.7.1下载地址可以直接点击上面下载地址下载到本地然后上传到Liunx上,或者也可以直接使用wget命令在Linux上下载环境要求Linux64位系统JDK1.8(64位)源码安装需要安装Maven3....

    LoveIT 2020-11-29
    RocketMQ
  • RocketMQ教程

    RocketMQ教程

    RocektMQ是阿里巴巴在2012年开源的一个纯java、分布式、队列模型的第三代消息中间件,不仅在传统高频交易链路有着低延迟的出色表现,在实时计算等大数据领域也有着不错的吞吐。2016年11月11号,双十一大促见证了RocketMQ低延迟存储架构的成功试水,99.996%的延迟落在了10m...

    LoveIT 2020-11-29
    RocketMQ
  • Java编程中List、Integer[]、int[]之间优雅的相互转换

    Java编程中List、Integer[]、int[]之间优雅的相互转换

    有时候List和数组int[]转换很麻烦。List和String[]也同理。难道每次非得写一个循环遍历吗?其实一步就可以搞定。本文涉及到一些Java8的特性。如果没有接触过就先学会怎么用,然后再细细研究。1、int[]转List1.Arrays.stream(arr)可以替换成IntStrea...

    LoveIT 2020-11-23
    Java基础
  • 管理分布式Session的四种方式以及基于Redis的分布式Session实现方案

    管理分布式Session的四种方式以及基于Redis的分布式Session实现方案

    应用服务器的高可用架构设计最为理想的是服务无状态,但实际上业务总会有状态的,以session记录用户信息的例子来讲,未登入时,服务器没有记入用户信息的session访问网站都是以游客方式访问的,账号密码登入网站后服务器必须要记录你的用户信息记住你是登入后的状态,以该状态分配给你更多的权限。那么...

    LoveIT 2020-11-16
    Redis
  • Java对HashMap按key排序和按value排序

    Java对HashMap按key排序和按value排序

    HashMap的值是没有顺序的,它是按照key的HashCode来实现的。对于这个无序的HashMap我们要怎么来实现排序呢?(TreeMap类似)一、按key进行排序对Key进行排序大致步骤如下:(1)为了提供一个对Key排序普遍适用的方法,我们使用泛型,并且由于要对K进行排序,所以我们需要...

    LoveIT 2020-11-05
    Java集合与容器
  • 向 Dockerfile 传参 :--build-arg

    向 Dockerfile 传参 :--build-arg

    ARGARG是一个构建时有效的变量。它们只能从在Dockerfile中使用ARG指令开始到生成dockerimage的那一端时间内使用。正在运行的容器无法访问ARG变量的值。这也适用于CMD和Enrypoint指令,它们只是告诉容器在默认情况下应该运行什么。如果您告诉Dockerfile需要各...

    LoveIT 2020-10-30
    Docker
  • 深度优先搜索解决矩阵搜索问题

    深度优先搜索解决矩阵搜索问题

    最近在刷LeetCode的时候发现一类和二维矩阵(二维数组)搜索有关的题目,一般使用深度优先或广度优先搜索就可以很好的解决这类题目,这里特意总结一下。1、剑指Offer12.矩阵中的路径这是一个典型的矩阵搜索问题,可使用深度优先搜索(DFS)+剪枝解决。首选,在矩阵中任意选择一个格子作为路径的...

    LoveIT 2020-10-24
    数据结构与算法
  • Redis的过期键删除策略以及内存淘汰策略

    Redis的过期键删除策略以及内存淘汰策略

    Redis的数据已经设置了TTL,不是过期就已经删除了吗?为什么还存在所谓的淘汰策略呢?这个原因我们需要从redis的过期策略聊起。一、Redis过期键策略redis键的过期时间都保存在过期字典中,过期键的删除策略有3种:定时删除:在设置键的过期时间的同时,创建一个定时器,让定时器在键的过期时...

    LoveIT 2020-10-10
    Redis
  • Redis五种常见数据结构的实现及使用场景

    Redis五种常见数据结构的实现及使用场景

    一、Redis对象底层数据结构Redis底层数据结构共有八种,如下表所示:编码类型编码所对应的底层数据结构REDIS_ENCODING_INT8字节的long长整型REDIS_ENCODING_EMBSTRembstr编码的简单动态字符串REDIS_ENCODING_RAW简单动态字符串RED...

    LoveIT 2020-10-06
    Redis
  • 数据库事务:隔离级别实现——MVCC与锁

    数据库事务:隔离级别实现——MVCC与锁

    这是数据库事务分享的第二篇,上一篇讲解了数据库事务并发会产生的问题,这篇会详细讲数据库如何避免这些问题,也就是如何实现隔离,主要是讲两种主流技术方案——MVCC与锁,理解了MVCC与锁,就可以举一反三地看各种数据库并发控制方案,并理解每种实现能解决的问题以及需要开发者自己注意的并发问题,以更好...

    LoveIT 2020-10-02
    MySQL
  • 深入理解Java内存模型

    深入理解Java内存模型

    注意这里是Java内存模型,不是Java内存结构,这两个就不是在同一级别上的东东,有些人会把Java内存模型误解为Java内存结构,然后在面试问到的时候很自信的答到堆,栈,GC垃圾回收,最后和面试官想问的问题相差甚远。本文我们就来学习一下JMM有关的基础知识吧!思维导图什么是JMM?JMM就是...

    LoveIT 2020-09-25
    Java多线程与高并发
  • docker网络模型

    docker网络模型

    一、docker网络基础知识Docker在启动时会创建一个虚拟网桥docker0,默认地址为172.17.0.1/16,容器启动后都会被桥接到docker0上,并自动分配到一个IP地址。使用ipaddr或ifconfig命令可以看到:Docker容器在创建的时候有四种网络模型,如果没有指定,默...

    LoveIT 2020-09-22
    Docker
  • 进程间通信的几种方式

    进程间通信的几种方式

    每个进程的用户地址空间都是独立的,一般而言是不能互相访问的,但内核空间是每个进程都共享的,所以进程之间要通信必须通过内核。**进程间通信(IPC,InterProcessCommunication)**是指在不同进程之间传播或交换信息。IPC的方式通常有管道(包括无名管道和命名管道)、消息队列...

    LoveIT 2020-09-16
    操作系统
  • 玩转Java8 Stream之IntStream

    玩转Java8 Stream之IntStream

    IntStream详解IntStream是特殊的Stream,但有一些操作符是IntStream独有的;话不多说,开始玩转IntStream吧。理论讲解构造IntStreamIntStream这个接口里提供了如下方法用于构造一个流:操作IntStream过滤操作filter()//根据条件过滤...

    LoveIT 2020-09-08
    Java基础
  • 面试之前你不得不知道的MySQL锁”事“

    面试之前你不得不知道的MySQL锁”事“

    mysql中的锁看起来是很复杂的,因为有一大堆的东西和名词:排它锁,共享锁,表锁,页锁,间隙锁,意向排它锁,意向共享锁,行锁,读锁,写锁,乐观锁,悲观锁,死锁。这些名词有的博客又直接写锁的英文的简写--->X锁,S锁,IS锁,IX锁,MMVC...锁的相关知识又跟存储引擎,索引,事务的隔...

    LoveIT 2020-09-05
    MySQL
  • 操作系统-缓存算法(页面置换算法)

    操作系统-缓存算法(页面置换算法)

    缓存算法是指令的一个明细表,用于提示计算设备的缓存信息中哪些条目应该被删去。常见缓存算法包括FIFO、LFU、LRU、ARC、MRU。1、FIFOFIFO(FirstinFirstout),先进先出。其实在操作系统的设计理念中很多地方都利用到了先进先出的思想,比如作业调度(先来先服务),为什么...

    LoveIT 2020-09-01
    操作系统
  • LFU缓存算法到底是怎么一回事?

    LFU缓存算法到底是怎么一回事?

    1、LFU算法是什么?LFU(LeastFrequentlyUsed)最近最少使用算法。它是基于“如果一个数据在最近一段时间内使用次数很少,那么在将来一段时间内被使用的可能性也很小”的思路。LFU和LRU算法的不同之处,LRU的淘汰规则是基于访问时间,而LFU是基于访问次数的。从实现难度上来说...

    LoveIT 2020-09-01
    操作系统
  • 从输入URL到页面加载完成期间经历了什么?

    从输入URL到页面加载完成期间经历了什么?

    作为一个软件开发者,你一定会对网络应用如何工作有一个完整的层次化的认知,同样这里也包括这些应用所用到的技术:像浏览器,HTTP,HTML,网络服务器,需求处理等等。本文将更深入的研究当你输入一个网址的时候,后台到底发生了一件件什么样的事~整个过程大致的的流程是:在浏览器地址栏输入某个网站的UR...

    LoveIT 2020-08-29
    计算机网络
  • Integer与int的比较

    Integer与int的比较

    如果面试官问Integer与int的区别:估计大多数人只会说到两点:Ingeter是int的包装类,注意是一个类;int的初值为0,Ingeter的初值为null。但是如果面试官再问一下Integeri=1;intii=1;i==ii为true还是为false?估计就有一部分人答不出来了,如果...

    LoveIT 2020-08-28
    Java基础
  • Java并发编程实践

    Java并发编程实践

    一、使用两个线程交替打印输出“1A2B3C.....26Z”具体描述:使用两个线程,一个输出字母,一个输出数字,交替输出1A2B3C......26Z1、LockSupport使用JUC下的LockSupport工具类我们可以精确的阻塞或唤醒一个线程,并且LockSupport不需要配合Obj...

    LoveIT 2020-08-06
    Java多线程与高并发