上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 18 下一页
摘要: 内存分配相关 Xms 英文释义:Initial heap size(in bytes) 中文释义:堆区初始值 使用方法: Xms2g 或 XX:InitialHeapSize=2048m Xmx 英文释义:Maximum heap size(in bytes) 中文释义:堆区最大值 使用方法: Xm 阅读全文
posted @ 2019-12-16 21:41 JMCui 阅读(3161) 评论(0) 推荐(1) 编辑
摘要: 一、标记 清除算法(Mark Sweep) 这种算法分为“标记”和“清除”两个阶段:首先标记出所有需要回收的对象,在标记完成后统一回收所有被标记的对象。 Mark Sweep 算法是最基础的收集算法,几乎所有的收集算法都是基于这种思路并对其不足进行改进而得到。它的不足之处主要有两个: 效率问题。标记 阅读全文
posted @ 2019-12-15 15:49 JMCui 阅读(603) 评论(0) 推荐(1) 编辑
摘要: 一、引入 首先我们看到的是 Thread 中有一个属性 threadLocals,它的类型是 ThreadLocalMap,封装类型是 default(表示它只能在包内可见),jdk 是这么介绍它的:与此线程有关的 ThreadLocal 值,该映射由 ThreadLocal 类维护。 啥意思呢?那 阅读全文
posted @ 2019-12-08 22:35 JMCui 阅读(495) 评论(0) 推荐(0) 编辑
摘要: 一、JDK动态代理 Java 在 java.lang.reflect 包中有自己的代理支持,该类(Proxy.java)用于动态生成代理类,只需传入目标接口、目标接口的类加载器以及 InvocationHandler 便可为目标接口生成代理类及代理对象。我们称这个Java技术为:动态代理 在 Jav 阅读全文
posted @ 2019-12-03 13:01 JMCui 阅读(2362) 评论(0) 推荐(1) 编辑
摘要: 一、JVM 内存区域 堆 - Heap 线程共享,JVM中最大的一块内存,此内存的唯一目的就是存放对象实例,Java 堆是垃圾收集器管理的主要区域,因此很多时候也被称为“GC堆”(Garbage Collected Heap),可以通过 -Xmx 和 -Xms 参数来控制该区域大小。 方法区 - M 阅读全文
posted @ 2019-12-01 16:36 JMCui 阅读(1728) 评论(0) 推荐(1) 编辑
摘要: 一、DFA 算法简介 在实现文字过滤的算法中,DFA是唯一比较好的实现算法。 DFA 全称为:Deterministic Finite Automaton,即确定有穷自动机。其特征为:有一个有限状态集合和一些从一个状态通向另一个状态的边,每条边上标记有一个符号,其中一个状态是初态,某些状态是终态。但 阅读全文
posted @ 2019-11-27 13:45 JMCui 阅读(3941) 评论(0) 推荐(3) 编辑
摘要: 我们在进行项目的多环境配置时,有很多种方式供我们选择,比如 SpringBoot 自带的 application dev.yml、maven 的 profile 等。这里介绍的就是如何利用 profile 进行多环境配置。 首先,在 pom.xml 中添加你需要的 profile 配置: profi 阅读全文
posted @ 2019-11-24 23:06 JMCui 阅读(4286) 评论(0) 推荐(0) 编辑
摘要: 一、简述 开发的软件产品在交付使用的时候,往往有一段时间的试用期,这期间我们不希望自己的代码被客户二次拷贝,这个时候 license 就派上用场了,license 的功能包括设定有效期、绑定 ip、绑定 mac 等。授权方直接生成一个 license 给使用方使用,如果需要延长试用期,也只需要重新生 阅读全文
posted @ 2019-11-24 09:16 JMCui 阅读(7595) 评论(0) 推荐(2) 编辑
摘要: 一、简述 有没有想过像 @RequestParam、@RequestBody 这些注解的工作原理呢?为什么 form 表单、application/json 的参数能够直接封装进 Bean 对象中呢?这就要说到 HandlerMethodArgumentResolver — 方法参数解析器,该接口有 阅读全文
posted @ 2019-11-22 08:12 JMCui 阅读(3478) 评论(0) 推荐(0) 编辑
摘要: 一、自定义注解 先聊聊这个需求,我需要根据用户的权限对数据进行一些处理,但是痛点在哪里呢?用户的权限是在请求的时候知道的,我怎么把用户的权限传递给处理规则呢?想了以下几种方案: 1. Mybatis 拦截器:如果你的权限参数可以渗透到 Dao 层,那么这是最好的处理方式,直接在 Dao 层数据返回的 阅读全文
posted @ 2019-11-20 08:47 JMCui 阅读(6287) 评论(4) 推荐(0) 编辑
摘要: 一、概述 JDK7 之前和之后的版本,String 的 intern() 方法在实现上存在差异,本文的说明环境是 JDK8,会在文末说明 intern() 方法的版本差异性。 intern() 方法是一个 native 的方法,返回常量池中的字符串引用,主要体现在以下两点: 1. 如果常量池中已存在 阅读全文
posted @ 2019-11-14 12:55 JMCui 阅读(607) 评论(0) 推荐(1) 编辑
摘要: JDK 1.0 1991年4月,由 James Gosling 博士领导的绿色计划(Green Project)开始启动,此计划的目的是开发一种能够在各种消费性电子产品(如机顶盒、冰箱、收音机等)上运行的程序架构。这个计划的产品就是Java语言的前身:Oak(橡树)。Oak当时在消费品市场上并不算成 阅读全文
posted @ 2019-11-07 09:22 JMCui 阅读(1488) 评论(3) 推荐(3) 编辑
摘要: 1. 前言 从一开始学习 Netty 到 rxjava、Rector,再到 java8 的 CompletableFuture,就深深的为响应式编程着迷,这种区别于传统的顺序式编程,没准未来能在编程世界开辟一片天地呢! 然后接触到了 WebFlux 框架,也是充满了浓厚的兴趣,想好好琢磨一番,奈何中 阅读全文
posted @ 2019-11-03 09:47 JMCui 阅读(4435) 评论(0) 推荐(0) 编辑
摘要: 一、上线规划 一般 redis 的参数配置都在 redis.conf 中,在上线前根据实际环境配置好合适参数,能有效提高 redis 的可用性。 redis 的运行机器 CPU 不求核数多,但求主频高,Cache大,因为 redis 主处理模式是单进程的。 留意 redis 日志文件的配置,对应 l 阅读全文
posted @ 2019-10-27 17:22 JMCui 阅读(829) 评论(0) 推荐(0) 编辑
摘要: 一、排序 redis 支持对 list,set 和 zset 元素的排序,排序的时间复杂度是 O(N+M log(M))。(N 是集合大小,M 为返回元素的数量) [BY pattern]:sort 命令默认使用集合元素进行排序,可以通过 “BY pattern” 使用外部 key 的数据作为权重排 阅读全文
posted @ 2019-10-21 21:49 JMCui 阅读(841) 评论(0) 推荐(1) 编辑
上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 18 下一页