关于 java CompletableFuture

在并发编程中有相当一大块只是为了使用并发技术加快程序的运行速度,这部分往往在多个线程之间没有太大关联,因此也谈不上有同步问题,在jdk提供高级并发编程工具,尤其CompletableFuture的出现,虽然在底层异步的时候默认使用了forkjoin线程池,但CompletableFuture更关注...

2019-04-25 11:34:07

阅读数 32

评论数 0

nacos获取配置文件的大致过程

一、spring 体系相关类(主要借助spring的api,自动注入配置信息) com.alibaba.nacos.spring.core.env.AbstractNacosPropertySourceBuilder com.alibaba.nacos.spring.core.env.Naco...

2019-01-25 17:10:52

阅读数 1388

评论数 0

nacos调试

# 1、获取源码 git clone https://github.com/alibaba/nacos.git # 2、打开nacos项目 cd nacos idea . # 3、找到nacos-console模块,nacos的启动类com.alibaba.nacos.Nacos # 4、配置n...

2019-01-23 15:19:12

阅读数 152

评论数 0

Gend(Go版Vesta) id发生器

主页:https://jsen-joker.github.io/gend   借鉴vesta(java)的设计思路,这里实现了一个go版本的ID生成器,可以保障无论是在嵌入式版本、rpc版本还是rest风格,所有模块的id都保证唯一性。 Gend使用GO进行开发,但这里实现了一个java调用...

2018-12-27 15:31:48

阅读数 40

评论数 0

vue 入门

写在前面: 尽量使用es6的特性,使用eslint检查语法规范,熟悉Promise的使用。 1、Vue简介 包括react、vue、ng核心的数据驱动模式是MVVM,通过修改Model的数据来实现View层数据的修改展示。 一个典型的Vue文件(hello.vue) &...

2018-12-03 16:41:13

阅读数 38

评论数 0

Data Center

源码地址(未完善):https://github.com/jsen-joker/DC 场景分析:   现有多个业务系统,由于前期的规划和对业务的把握不足,导致出现多个类似的系统,现在需要在各个业务系统之间共享数据,由于前期业务复杂,耦合度高,很难一步到位,将系统微服务化,因此需要一个类似数据...

2018-11-30 18:42:25

阅读数 131

评论数 0

Jenkins自动化部署

这里基于jenkins、gitee、ansible、bsdiff,mvn,springboot jar,md5sum讲解 大致流程是jenkins生成jar包,ansible进行二进制增量传输,最终检查checksum、部署、重启项目 准备: 所有centos服务器创建jenkins用户: ...

2018-11-08 17:23:04

阅读数 45

评论数 0

工具集小记

ELK(Elasticsearch、Logstash、Kibana) Elasticsearch分布式搜索、 Logstash日志过滤 Kibana ELK图形化日志分析界面 消息队列 MQ,消息队列本质上拥有一定的缓存,屏蔽环境差异,中心化管理的功能,因此redis在一定程度上也有MQ的...

2018-11-01 10:29:21

阅读数 19

评论数 0

Dubbo

这个是Dubbo的源码目录,dubbo源码非常清晰,每个子项目对应一个模块,在子项目下会有不同模块来对不同的技术作支撑。dubbo通过ExtensionLoader加载SPI,实现了对技术选择插件化、动态加载、懒加载、单利加载、动态注入,AOP,ExtensionLoader创建时会创建Ext...

2018-09-17 18:01:01

阅读数 31

评论数 0

RPC 整理

RPC-Reomto proceducer call 远程过程调用 基于 java 一下主要基于自己的理解、这里我将http调用也视为一种rpc调用。   远程 这里远程应该相对于进程而言,甚至可能是线程。 过程调用 简单地说就是执行代码(服务、业务逻辑)。   远程协议(姑且这么叫)...

2018-09-15 12:14:53

阅读数 197

评论数 0

jdk8函数式编程Predicate Supplier Consumer Function

以上四个都是函数式接口,对于这些接口,重要的是明白其存在的意义jdk推出这些函数式接口的目的是为了进行函数式编程,由于lambda表达式的应用,我们在实际编程中可能感受不到这些接口的使用,但其实在链式编程的时候,我们大量应用了这些接口。例如stream中的一个map方法,我们自然而然的直到这是将原...

2018-06-24 11:42:12

阅读数 88

评论数 0

再谈设计模式

关于对象创建:单利模式 意图:嗯比如管理类什么的抽象工厂模式 意图:一个复杂对象由很多部分组成,而且组件间还有一定的组合关系,可以使用抽象工厂模式,也就是说,一个具体工厂创建出来的组件一定符合某个具体对象的要求build模式 意图:一个对象可能由很多复杂对象构成,创建起来很复杂,可以在一个buil...

2018-06-23 18:28:28

阅读数 46

评论数 0

关于Docker的概念

Docker是一个服务容器,所谓容器就是像你的原先部署tomcat时要运行在linux上,linux也就是一个类似的容器。我们可以把自已的服务放到docker中运行,docker会帮我们做底层对操作系统库等的调用。典型的我们可以在docker容器中运行一个mysql的服务。从宏观意义上看docke...

2018-05-30 17:15:03

阅读数 87

评论数 0

Java ClassLaoder小解

java中的ClassLoader:jdk中默认的classloader:程序打印一下可以看到sun.misc.Launcher$AppClassLoadersun.misc.Launcher$ExtClassLoaderAppClassLoader会加载jdk的核心库,而ExtClassLoad...

2018-05-29 10:28:58

阅读数 79

评论数 0

基于Redis的任务调度

基于redis的动态任务调度平台,支持动态groovy任务和静态任务(任务要继承IJob接口)任务调度平台:这里假设任务失败有两种类型:一、worker节点与master节点失去联系,认为任务失败二、worker节点执行任务出错,这里认为该出错一定可以被worker节点捕获,worker节点会停止...

2018-05-26 18:53:01

阅读数 717

评论数 1

Joker 微服务 容器

​​​​​​Joker项目地址 # Joker 一个快速开发调试微服务的服务容器 ## 一、Joker是什么(理念) joker 是一个轻量级的微服务容器,专为微服务开发而生。作为一个容器,他与tomcat,docker等有什么不同。首先joker的宗旨是快速实现想要的业务模块,快速编程、快速部...

2018-05-19 13:51:04

阅读数 2609

评论数 0

试探Android浏览器开发

下载地址:Apk地址

2018-01-30 14:28:00

阅读数 96

评论数 1

Travis Node pm2

1: github 创建项目 本地git init 项目    git remote add git@github.com:username/project.git 2:注册Travis并添加项目 3:本地项目创建Travis配置文件(.travis.yml) language: n...

2017-05-03 19:45:11

阅读数 234

评论数 0

ACM:ZOJ Problem Set - 3903

// @Author Jsen // @Version V1.0.0 // @Date 2017/05/02 // ZOJ Problem Set - 3903 // Ant // http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemC...

2017-05-02 16:40:36

阅读数 163

评论数 0

提示
确定要删除当前文章?
取消 删除