摘要:
前言介绍 很多小伙伴都跟我说,redis中,ZSet(有序集合)是他们最陌生的集合,同时也是觉得特别复杂的集合之一,在开发过程中经常会用到它,而且也是大家最不太有把握使用的集合,所以笔者就从ZSet集合开始去讲解Redis的集合的使用指南,希望可以帮助大家! 有序集合 ZSET(有序集合)的概念 有 阅读全文
摘要:
内容简介指南 Paxo算法指南 Zab算法指南 Raft算法指南 Paxo算法指南 Paxos算法的背景 【Paxos算法】是莱斯利·兰伯特(Leslie Lamport)1990年提出的一种基于消息传递的一致性算法,是目前公认的解决分布式一致性问题最有效的算法之一,其解决的问题就是在分布式系统中如 阅读全文
摘要:
AOF持久化方式 AOF持久化方式是将redis的操作日志以追加的方式写入磁盘文件中。AOF持久化是以日志的形式记录服务器所处理的每一个写、删除操作,查询操作不会记录,以文本的方式记录,可以打开文件看到详细的操作记录。 AOF实现方式 AOF(append only file)持久化是以独立日志的方 阅读全文
摘要:
每日一句 低头是一种能力,它不是自卑,也不是怯弱,它是清醒中的嬗变。有时,稍微低一下头,或者我们的人生路会更精彩。 前提概要 Redis是一个的键-值(K-V)对的内存数据库服务,通常包含了任意个非空数据库。而每个非空的键值数据库中又可以存放任意个K-V,基本的结构如下图所示: Redis的强劲性能 阅读全文
摘要:
前提介绍 在mybatis如何进行多对一、一对多(一对一)的多表查询呢?本章带你认识如何非常顺滑的解决! 基础使用篇 一对一 association association通常用来映射一对一的关系,例如,有个类user,对应的实体类如下: @Data @AllArgsConstructor @NoA 阅读全文
摘要:
JVM内存分配及申请过程 当使用new关键字或者其他任何方式进行创建一个类的对象时,JVM虚拟机需要为该对象分配内存空间,而对象的大小在类加载完成后已经确定了,所以分配内存只需要在Java堆中划分出一块大小相等的内存,JVM虚拟机中有指针碰撞和空闲列表两种方式分配内存。 指针碰撞方式 如果Java堆 阅读全文
摘要:
RPC服务 什么叫RPC? **RPC【Remote Procedure Call】是指远程过程调用,是一种进程间通信方式,他是一种技术的思想,而不是规范。它允许程序调用另一个地址空间(通常是共享网络的另一台机器上)的过程或函数,而不用程序员显式编码这个远程调用的细节。即程序员无论是调用本地的还是远 阅读全文
摘要:
前提背景 我们距离“不再智障”的智能客服还有多远?对于智能客服,用户一直都是“批评多于褒奖”,究其原因是在于人们对于AI客服的期待很高,而AI客服在实际应用中的拙劣表现让许多用户大失所望。所有功能都致力于使用负责任的、以人为本的AI应用方式,即Contact Center AI,谷歌认为它可能提升用 阅读全文
摘要:
承接上文 ☕【Java技术指南】「TestNG专题」单元测试框架之TestNG使用教程指南(上),继续开展我们的下篇的TestNG的技术特性。 分组测试 分组测试即为使用group,如果你使用xml的话就是里边的标签,如果是直接在class中,是通过@Test(groups="group2")这种方 阅读全文
摘要:
TestNG介绍 TestNG是Java中的一个测试框架, 类似于JUnit 和NUnit, 功能都差不多, 只是功能更加强大,使用也更方便。 详细使用说明请参考官方链接:https://testng.org/doc/index.html TestNG安装 <dependency> <groupId 阅读全文
摘要:
前提介绍 如果要设计开发一套微服务基础架构,参数化配置是一个非常重要的点,而Netflix也开源了一个叫变色龙Archaius的配置中心客户端,而且Archaius可以说是比其他客户端具备更多生产级特性,也更灵活。 在NetflixOSS微服务技术栈中,几乎所有的其它组件(例如Zuul, Hystr 阅读全文
摘要:
Win10下编译OpenJDK8 编译环境 Windows10专业版64位; 编译前准备 Tip: 以下软件的安装和解压目录尽量不要包含中文或空格,不然可能会出现问题 安装 Visual Studio 2010 Professional 在windows下编译JDK需要使用Visual Studio 阅读全文
摘要:
GraalVM介绍 今天我们来讲讲整个Java生态下相当有分量的一位角儿——GraalVM:GraalVM官方网站,Quarku官方文档 GraalVM是用Java实现的基于HotSpot/OpenJDK的JVM和JDK。它支持额外的编程语言和运行范式,例如对Java应用程序AOT,从而实现快速启动 阅读全文
摘要:
前提概要 Java的class字节码并不是机器语言,要想让机器能够执行,还需要把字节码翻译成机器指令。这个过程是Java虚拟机做的,这个过程也叫编译。是更深层次的编译。 在编译原理中,把源代码翻译成机器指令,一般要经过以下几个重要步骤: 根据完成任务不同,可以将编译器的组成部分划分为前端(Front 阅读全文
摘要:
问题概括 静态常量可以再编译器确定字面量,但常量并不一定在编译期就确定了, 也可以在运行时确定,所以Java针对某些情况制定了常量优化机制。 常量优化机制 给一个变量赋值,如果等于号的右边是常量的表达式并且没有一个变量,那么就会在编译阶段计算该表达式的结果。 然后判断该表达式的结果是否在左边类型所表 阅读全文