加载中
缓存设计的一点思路

在高并发的场景下,为了提升接口的响应速度,增大系统的吞吐量,我们一般需要增加缓存设计来提升相关的性能。那么对于缓存设计需要注意些什么呢?这便是本博客讨论的内容。 缓存设计需要从多...

05/09 16:21
1
Mysql时间精度丢失问题

这两天发现一个问题,在数据库中使用了DateTime(3)类型的字段,但是发现本地的ide中入库的数据,所有的毫秒数为000,只能精确到秒,但是dev环境的服务器却是可以精确到正常的毫秒数。由于代码...

03/09 10:49
40
SpringMvc初始化的web容器的设置

Spring的IOC容器如何嵌入到我们运行中的容器中的? 通过Servlet来嵌入,通过ContextLoaderListener来进行IOC容器的启动,其实是通过ServletContextListener来监听ServletContext相关的事件来...

02/24 16:57
4
SpringTest+Junit 加载本地Jndi数据源测试

今天写了一个比较长的流程业务,不想启动web容器进行测试,就本地写了一个Junit的测试类进行单元测试,但是由于使用Spring,Junit在使用的时候需要手动加载容器上下文,比较麻烦,所以干脆直...

2018/12/21 17:50
98
Redis资源池化技术+Sentinel哨兵模式进行集群通信

redis在线上使用的时候,为了高可用和可扩展性,一般不会是单台或者一组的模式运行,而是按照一个集群的模式运行。一个集群包括多组redis,一组redis包含一个master和多个slave,这样我们为了...

2018/12/08 16:58
39
Condition使用的一个小研究

最近发现在项目的框架中,使用了Condition来进行线程间的通信。并且使用的方式是如下的方式。 ...................Thread1........................ try{ Lock.lock(); Condition.await(lon...

2018/11/26 16:42
1
JAVA的SPI和ServiceLoader

SPI即Service Provider Interface,用于提供一些服务给第三方实现或扩展,可以增强框架的扩展或者替换一些组件,其实就是约定的一种规范,可以参考JDBC,不同厂家使用相同的约束去实现不同的...

2018/11/12 16:50
14
Redis中的skipList

SkipList是一种有序的数据结构,它通过在每个节点中维持多个指向其它节点的指针,从而达到快速访问节点的目的。 跳跃表支持平均O(logN),最坏O(N)负责度的节点查找。还可以通过顺序性操作来批...

2018/10/28 23:45
37
JVM内存模型1

1、并发编程的两个关键问题:线程通信和线程同步 线程通信的方式:共享内存和消息传递 内存共享模式是隐式进行通信的,而消息传递则是显示进行通信的 线程同步:用于控制线程间操作发生的相对...

2018/10/03 22:32
3
Spark入门学习——要点3

通常在向Spark传递函数的时候,可以使用驱动器程序中定义的变量,但是集群中运行的每个任务都会得到这些变量的一个新的副本,更新这些副本的值也不会影响到驱动器中对应变量。Spark的两个共享...

2018/09/15 15:36
7
Spark入门学习——要点2

1、PairRDD的转换操作 Pair RDD的转化操作(以键值对集合{(1, 2), (3, 4), (3, 6)}为例) 函数名 目的 示例 结果 reduceByKey(func) 合并具有相同键的值 rdd.reduceByKey((x, y) => x + y) {...

2018/09/14 16:53
3
Spark入门学习——要点1

1、collect() 函数 RDD 还有一个collect() 函数,可以用来获取整个RDD 中的数据。如果你的程序把RDD 筛选到一个很小的规模,并且你想在本地处理这些数据时,就可以使用它。记住,只有当你的整...

2018/09/14 16:45
6
JAVA8中的stream原理解析——1(串行)

常用的流操作 在stream使用之前,我们看下经常使用到的stream中的相关的操作。 在上表中,Stream的操作可以分为两大类:中间操作和结束操作,中间操作只是对操作进行了记录,只有结束操作才会...

2018/08/29 16:46
434
简单分析Guava中RateLimiter中的令牌桶算法的实现

令牌桶算法是网络流量整形(Traffic Shaping)和速率限制(Rate Limiting)中最常使用的一种算法。典型情况下,令牌桶算法用来控制发送到网络上的数据的数目,并允许突发数据的发送。 大小固...

2018/08/01 20:48
701
Hadoop示例程序之——WordCount

尝试一下Hadoop的Demo,熟悉下相关的MapReducer的计算框架 1、创建Mapper类 package hadoop.mr; import org.apache.hadoop.io.IntWritable; import org.apache.hadoop.io.LongWritable; impo...

2018/07/27 16:18
12
Hadoop环境搭建-Window篇

最近比较空闲,准备学习点hadoop玩玩,不经意搜到一篇在win7下搭建Hadoop环境的博客,此处记录一下 原文地址:https://blog.csdn.net/antgan/article/details/52067441 步骤: 1. JDK安装(不...

2018/07/27 14:52
280
利用Groovy实现动态加载Bean

先来安利一发Groovy Groovy是一种基于JVM(Java虚拟机)的敏捷开发语言,它结合了Python、Ruby和Smalltalk的许多强大的特性,Groovy 代码能够与 Java 代码很好地结合,也能用于扩展现有代码。...

2018/06/20 15:48
112
Spring动态注入泛型集合Bean

我们在使用Spring框架的时候,常常需要注入相关的Bean,如果需要注入有相同类型的Bean的时候,会比较麻烦,需要一个一个注入,并且相对来说扩展性不是很好。 因此提供一种策略模式下获取Bea...

2018/05/30 11:17
160
JAVA内存区域及内存溢出异常——总结

JAVA内存划分 JAVA虚拟机在运行程序的时候会将内存划分成几个区域,这些区域有各自的用途,包括以下几个区域 程序计数器、虚拟机栈、堆、方法区(包含常量池) 其中和线程保持一致的有程序计...

JVM
2017/11/20 18:14
31
Java8新特性--使用CompletableFuture构建异步应用

future接口可以构建异步应用,但依然有其局限性。它很难直接表述多个Future 结果之间的依赖性。实际开发中,我们经常需要达成以下目的:

2017/10/27 15:21
78

没有更多内容

加载失败,请刷新页面

返回顶部
顶部