7 chenjazz

尚未进行身份认证

我要认证

123456789

等级
TA的排名 1w+

JVM平台上的响应式流(Reactive Streams)规范

Reactive Streams响应式流是一个倡议,用来为具有非阻塞后压的异步流处理提供一个标准。大家努力的目标集中在运行时环境(JVM和JavaScript)和网络协议上。注:响应式流其实就是一个规范,本文讲解的正是这个规范,且这个规范已经被引入到JDK9里了。【后压(背压)】:就是下游出现了问题,得不到解决时,这个问题就会逆流而上,继而影响上游。如果一个路口红绿灯坏了造成堵车,如果不...

2019-10-27 14:08:21

KafKa基础知识总结

https://www.cnblogs.com/skying555/p/7903457.htmlhttps://www.cnblogs.com/hei12138/p/7805475.html

2018-12-28 15:33:59

redis基础知识总结

https://blog.csdn.net/middleware2018/article/details/80355418

2018-12-27 14:32:15

Redis雪崩、穿透、热点key等优化

缓存穿透优化请求cache拿不到数据,就会去存储层拿,会一直请求数据。导致后端打崩。1.缓存层缓存空值,增加过期时间2.布隆过滤器缓存雪崩优化缓存雪崩就是指缓存由于某些原因,整体crash掉了,导致大量请求到达后端数据库,从而导致数据库崩溃。如:1.某个时间点内,系统预加载的缓存周期性集中失效了设置缓存n+随机数过期时间2.redis挂了,客户端直接请求到数据库里面解决方法:1、...

2018-12-27 14:28:38

ElasticSearch基础概念

1.倒排索引倒排索引源于实际应用中需要根据属性的值来查找记录。由于不是由记录来确定属性值,而是由属性值来确定记录的位置,因此称为倒排索引。倒排索引里有三个文件,索引词文件,词频文件,位置文件。2.索引词索引词是一个能够被索引的精确词。3.文本文本是一段普通的非结构化文字。3.分析分析是将文本转换为索引词的过程,分析的结果依赖于分词器。4.集群集群由一个或多个节点组成,对外提供服...

2018-12-07 14:03:04

mysql常用函数-使用总结

1.产生随机数产生0-1时间的随机数 rand()产生0到100间的随机数 rand() * 100产生0到100间的随机整数数 floor(rand() * 100)产生50到100间的随机整数数 floor(50 + rand() * 50)2.日期加减date_add()|date_sub(字段,INTERVAL 数字 单位)...

2018-11-10 19:19:37

轻量级数据库访问框架FastSQL

目录1 简介2 入门3 SQLFactory的配置4 SQL类作为sql语句构建器5 SQL类的执行sql功能6 BaseDAO7 通用工具8 配置项9 其他10 更新日志1 简介FastSQL一个基于spring-jdbc的简单ORM框架,它支持sql构建、sql执行、命名参数绑定、查询结果自动映射和通用DAO。结合了Hibernate/JPA快速开发和Mybatis...

2018-10-24 16:37:19

ConcurrentHashMap图例

1.JDK1.7中锁分段技术 HashTable容器在竞争激烈的并发环境下表现出效率低下的原因,是因为所有访问HashTable的线程都必须竞争同一把锁,那假如容器里有多把锁,每一把锁用于锁容器其中一部分数据,那么当多线程访问容器里不同数据段的数据时,线程间就不会存在锁竞争,从而可以有效的提高并发访问效率,这就是ConcurrentHashMap所使用的锁分段技术,首先将数据分成一段...

2018-06-07 21:48:46

在虚拟机上安装RabbitMQ

1. 安装Ubuntu2. 在线安装3.主要命令rabbitmqctl4.用户角色5.用户权限1. 安装Ubuntu下载镜像 https://www.ubuntu.com/download/server使用VMware安装镜像设置系统为可连接互联网(我使用适配器桥接模式)(可选)设置允许root远程登录sudo vim /etc/ssh/sshd_conf...

2018-05-01 12:40:01

RabbitMQ基础概念介绍

简介RabbitMQ是一个开源的AMQP实现,服务器端用Erlang语言编写,支持多种客户端,如:Python、Ruby、.NET、Java、JMS、C等,支持AJAX。用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。 下面将重点介绍RabbitMQ中的一些基础概念,了解了这些概念,是使用好RabbitMQ的基础。ConnectionFactory、Connec...

2018-04-30 12:05:05

分享一次解决线上java应用导致JVM内存溢出(OOM)的问题

某个线上的应用运行几天后,总是出现卡死甚至出现OOM的情况。 注:文中图片可能与描述不符,仅作为演示!通过Linux的top命令查看cpu占比首先通过top命令查看,发现某个java程序占用了较高内存:JDK的jps命令确定是哪个java程序然后通过jps -l 与上面的PID列(2848)比较,确定是 picasso-java-v1.jar 这个java程序占用c...

2018-03-15 13:07:06

Netty技术热门文章收藏

简单示例: http://www.cnblogs.com/TomSnail/category/668540.html

2018-02-26 13:17:02

Java中的Unsafe类

1.Unsafe类简介Java最初被设计为一种安全的受控环境。尽管如此,Java HotSpot还是包含了一个“后门”,提供了一些可以直接操控内存和线程的低层次操作。这个后门类——sun.misc.Unsafe——被JDK广泛用于自己的包中,如java.nio和java.util.concurrent。但是丝毫不建议在生产环境中使用这个后门。因为这个API十分不安全、不轻便、而且不稳定。这个不...

2018-02-24 13:41:48

【Java并发编程】二.Java并发基础

1 Java线程简介进程是程序的基本执行实体,进程可以容纳若干线程,是线程的容器。线程就是轻量级进程,线程的运行成本远远小于进程,所以我们用多线程去设计并发程序,而不是多进程。线程的生命周期jdk1.5以后,在java.lang.Thread的内部枚举类State中定义了线程的几种状态:public enum State { /** * 新

2018-01-20 10:00:18

【Java并发编程】一.并发简介

1.并发的用处图像处理&服务端编程2.概念同步和异步同步:同步调用方法一旦开始,调用者必须等到方法调用返回后,才能继续后续的行为。 异步:调用方法后立即返回,方法会在另一个线程中执行。调用者无需等待就可以继续后续工作。 临界区临界区指的是一个访问共用资源的程序片段(方法或代码块),而这些共用资源又无法同时被多个线程访问的特性,当有线程进入临界区段时,其他线程

2017-12-15 20:26:46

Java8总结之函数式编程

Lambda表达式可以把Lambda表达式理解为简洁地表示可传递的匿名函数的一种方式:它没有名称,但它 有参数列表、函数主体、返回类型。先前:Comparator<Apple> byWeight = new Comparator<Apple>() { public int compare(Apple a1, Apple a2){ return a1.getWeight().compar

2017-10-02 21:26:24

Postgresql9.6中的数字和字符类型

注:红色的为常用类型数字类型 名字 存储尺寸 描述 范围 smallint 2字节 小范围整数 -32768 to +32767 integer 4字节 整数的典型选择 -2147483648 to +2147483647 bigint 8字节 大范围整数 -9223372036854775808 to +9223372036854775

2017-08-30 22:45:57

Spring JdbcTemplate中的回调

回调JdbcTemplate类支持的回调类:1.预编译语句及存储过程创建回调:用于根据JdbcTemplate提供的连接创建相应的语句;1.1 PreparedStatementCreator<T> T execute(PreparedStatementCreator psc, PreparedStatementCallback<T> action)PreparedStatementCreator:

2017-08-04 22:15:17

NamedParameterJdbcTemplate常用方法总结

数据库结构1.插入数据//插入数据1//方法intupdate(Stringsql,MapMap<String,Object>paramMap=newHashMap<>();paramMap.put("id",UUID.randomUUID().toString());paramMap.put("name",

2017-07-08 12:43:33

各种数据库分页及Java实现

在显示记录条目时往往要用到分页,一种常用的办法是利用各种数据库自带的定位接口对原始查询语句进行改写,从而只取出特定范围的某些记录。不同的数据库,查询定位接口是不一样的,下面做一汇总: 数据库 分页查询语句 说明 MySQL “QUERY_SQL limit ?,?” 使用limit关键字,第一个”?”是起始行号, 第二个”?”是返回条目数 Oracle SELECT *

2017-04-07 22:38:44

查看更多

CSDN身份
  • 博客专家
勋章 我的勋章
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。