标签:mina

Java

Synchronized优化总结(一)

2

hellas 发布于 2020-01-19

当使用 Java 多线程访问共享资源的时候,会出现竞态的现象。即随着时间的变化,多线程“写”共享资源的最终结果会有所不同。 为了解决这个问题,让多线程“写”资源的时候有先后顺序,引入了锁的概念。每次一个线程只能持有一个锁进行写操作,其他的线程等待该线程释放锁以后才能进行后续操作。...

阅读(21)评论(0)赞 (0)

Java

RxJava(十一): 并行编程

xiaoli.he 发布于 2020-01-19

博客主页 1. RxJava 并行操作 被观察者( Observable/Flowable/Single/Completable/May )发射的数据流可以经历各种线程切换,但是数据流的各个元素之间不会产生并行执行的效果。井行不是并发,也不是同步,更不是异步。 并发( concu...

阅读(19)评论(0)赞 (0)

Java

Storage Manager的实现

1

尖兵 发布于 2020-01-18

原文地址: Storage Manager的实现 Introduction 实现一个 Storage Manager ,用于管理文件中的数据对象。 Requirement In this programming assignment, you need to implement ...

阅读(22)评论(0)赞 (0)

Java

深入理解RPC之Dubbo的应用及原理解析

66

Harries 发布于 2020-01-17

分布式系统是若干独立计算机的集合,这些计算机对于用户来说就像单个相关系统。 分布式系统(distributed system)是建立在网络之上的软件系统。 为什么会出现分布式系统 随着互联网的发展,网站的应用规模不断扩大,常规的垂直应用架构已经无法应对,分布式服务架构以及流动计算...

阅读(36)评论(0)赞 (0)

Java

JVM系列七(JIT 即时编译器).

1

wenming.gapo 发布于 2020-01-17

一、概述 即时编译器(Just In Time Compiler),也称为 JIT 编译器,它的主要工作是把热点代码编译成与本地平台相关的机器码,并进行各种层次的优化,从而提高代码执行的效率。 那么什么是热点代码呢?我们知道虚拟机通过解释器(Interpreter)来执行字节码文...

阅读(21)评论(0)赞 (0)

Java

Java中的锁「原理、锁优化、CAS、AQS」

22

zhuangli 发布于 2020-01-16

一、为什么要用锁? 锁-是为了解决并发操作引起的脏读、数据不一致的问题。 二、锁实现的基本原理 2.1、volatile Java编程语言允许线程访问共享变量, 为了确保共享变量能被准确和一致地更新,线程应该确保通过排他锁单独获得这个变量。Java语言提供了volatile,在某...

阅读(43)评论(0)赞 (0)

Java

JAVA锁原理之 CAS原子操作篇

6

尖兵 发布于 2020-01-15

原子操作(atomic operation)指的是由 多步操作组成的一个操作 。如果该操作不能原子地执行,则要么执行完所有步骤,要么一步也不执行,不可能只执行所有步骤的一个子集。 现代操作系统中,一般都提供了原子操作来实现一些同步操作,所谓原子操作,也就是一个独立而不可分割的操作...

阅读(28)评论(0)赞 (0)

Java

0104 代码方式动态刷新logback日志配置

2

darida 发布于 2020-01-14

背景 日志是一个系统或者说一个产品技术架构中重要组成部分。 日志框架 说明 跟slf4j集成所需依赖 slf4j 日志门面,具体实现由程序决定 jcl commons-logging jcl-over-slf4j jul jdk-logging slf4j-api jul-to-...

阅读(30)评论(0)赞 (0)

Java

RxJava2源码解析

4

xiaoli.he 发布于 2020-01-14

基础解析 我们看下RxJava最简单的写法 Observable.create(new ObservableOnSubscribe<String>() { @Override public void subscribe(ObservableEmitter<Str...

阅读(21)评论(0)赞 (0)

Java

RxJava2源码解析

4

邓龙华 发布于 2020-01-14

基础解析 我们看下RxJava最简单的写法 Observable.create(new ObservableOnSubscribe<String>() { @Override public void subscribe(ObservableEmitter<Str...

阅读(28)评论(0)赞 (0)

Java

RxJava(二):基础知识

7

darida 发布于 2020-01-14

博客主页 1. Observable RxJava 使用通常需要三步: 创建 Observable Observable 字面意思是被观察者,使用 RxJava 需要创建一个被观察者,它会决定什么时候触发事件以及触发怎样的事件。有点类似上游发送命令,可以在这里决定异步操作模块的顺...

阅读(23)评论(0)赞 (0)

Java

springboot整合apache ftpserver详细教程(看这一篇就够了)

4

邓龙华 发布于 2020-01-14

原创不易,如需转载,请注明出处 https://www.cnblogs.com/baixianlong/p/12192425.html ,否则将追究法律责任!!! 一、Apache ftpserver相关简介 Apache FtpServer是100%纯Java FTP服务器。它...

阅读(36)评论(0)赞 (0)

Java

关于Dubbo的记忆

4

zhuangli 发布于 2020-01-13

现在微服务的概念已经很普遍了,目前的微服务框架主要有Dubbo、DubboX和Spring Cloud,关于Spring Cloud可以参考我的另一篇文章 关于Spring Cloud 的记忆 。本篇文章主要以Dubbo为例展开说明,在进行Dubbo模块之前,我们来说一下为什么要...

阅读(34)评论(0)赞 (0)

Java

Netty快速入门(10)Reactor与Netty

10

likai 发布于 2020-01-13

Reactor模式 Reactor是1995年由道格拉斯提出的一种高性能网络编程模式。由于好多年了,当时的一些概念与现在略有不同,reactor模式在网络编程中是非常重要的,可以说是NIO框架的典型模式,一些经典的框架,比如Mina、Netty、Cindy都是此模式的实现。 我们...

阅读(15)评论(0)赞 (0)

Java

JDK源码那些事儿之浅析Thread下篇

2

likai 发布于 2020-01-12

上一篇文章对Thread的状态转换和其中的部分源码进行了一个说明,今天继续对Thread源码进行解读,有很多涉及到底层的知识,笔者这里也只能进行简单了解,一起看一看吧 前言 JDK版本号:1.8.0_171 在并发操作中,线程作为基本的操作单位,对于其了解的深度或多或少都会影响我...

阅读(28)评论(0)赞 (0)

Java

Spring Boot 定时调度居然只用单线程?!

1

songhua.gao 发布于 2020-01-12

为防止打脸,先写明版本:spring boot 2.2.2.RELEASE 一 spring boot 中自带了一个轻量级的任务调度框架,使用也非常简单。 添加注解 @EnableScheduling ,当然需要放在一个可以被扫描到的类上,比如启动类、使用了 @Configura...

阅读(23)评论(0)赞 (0)

Java

来吧,一文彻底搞懂Java中最特殊的存在——null

10

songhua.gao 发布于 2020-01-12

没事的时候,我并不喜欢逛 P 站,而喜欢逛 programcreek 这些技术型网站,于是那天晚上,在夜深人静的时候,我就发现了一个专注基础但不容忽视的主题。比如说: Java 中的 null 到底是什么鬼 ?像这类灵魂拷问的主题,非常值得深入地研究一下。 null 在 Java...

阅读(43)评论(0)赞 (0)