java系列
四月天五月雨
认真工作,快乐生活
展开
-
apollo 学习 配置 (一)
apollo 学习 搭建,配置 (一)原创 2020-04-05 22:04:02 · 407 阅读 · 1 评论 -
springboot封装自定义starter
目录正常流程@Conditionalxxx作用简介由上篇文章<<springboot 自动配置 autoConfig 全流程>>了解到自动配置的原理和流程,本文演示一个自定义starter demo;1.正常流程核心: 自动配置= @Conditional… + …Properties+其他;新建工程,这里用springboot演示 ,1.1制作pro...原创 2020-03-23 10:06:26 · 2003 阅读 · 0 评论 -
springboot 自动配置 autoConfig 全流程
目录1.自动配置简介2.实现方式3.演示摘要原创 2020-03-22 19:26:12 · 10070 阅读 · 0 评论 -
dubbo 注册中心 zookeeper 和 redis( 四 )
梳理下看的一本书<<深入理解Apache dubbo与实战>>,做成导图整理下分章节展示;原创 2020-03-13 10:18:12 · 1159 阅读 · 0 评论 -
自定义maven骨架(多模块),生成项目工程
背景 业务快速发展或重构期,会有大量的项目工程使用,每次都搭建的话,费时费力,版本啥的不好维护,故应该使用同一脚手架,大部分互联网应该都有使用,可以将脚手架做成maven骨架,每次新建项目,可以使用骨架快速生成;简单演示多模块骨架生成和使用1.首先有一个项目,单模块,多模块都可以,demo结构如下:进入项目根目录执行: mvn archetype:create-from-proj...原创 2020-03-02 17:28:18 · 965 阅读 · 0 评论 -
fork/join使用介绍
前言fork/join是jdk1.7提出的分治编程的一个框架,适合处理单进程的大任务目录1.介绍2.工作窃取算法3.使用正文介绍简单流程是:把一个大任务拆分(fork)为几个小任务,可根据阈值判断是否继续拆分为小小任务,然后收集(join)每个任务执行的结果.如图所示:工作窃取算法fork/join优秀的地方就在于这个算法,假如我们需要做一个比较大的任务,我们可以把这个任务分...原创 2018-12-06 09:41:52 · 1318 阅读 · 0 评论 -
java 调用 phantomJs 快照截图 水印
前言近日有个需求:获取url快照,url可为HTML资源,也可以图片等静态资源要求:当图片过小时,eg只有200 x 200;此刻再打水印到截图上就不合适了,因为图片本就小,水印即便透明,也会妨碍查看,另外就是像素小,放大后会失真看不清.故采取折中方式,打个假水印到图片外----拼接HTML目录1.phantomJs简介2.phantomJs脚本使用3.java 接入 phantomJ...原创 2018-12-13 17:34:38 · 3337 阅读 · 1 评论 -
Docker学习 入门(一)
前言目录1.docker概述1.1 什么是docker1.2 docker和虚拟机的比较1.3 docker的特点2.docker组件2.1 docker服务器与客户端2.2 Docker镜像与容器2.3 Registry(注册中心)3.docker安装和使用4.常用基本命令5. Dockerfile正文1.docker概述在讲docker之前先了解一下容器,先打个比...原创 2018-12-19 20:09:00 · 1860 阅读 · 1 评论 -
分布式事务 CAP 理解论证 解决方案
原文链接: 作者小太阳^_^,转载请注明出处,谢谢前言在大型系统架构演变中,当前下,分布式是一个必然的选择,分布式事务是绕不开的一个点.目录概述论证解决方案3.1 维护本地消息表3.2 使用rocketmq事务消息3.3 两阶段提交协议(2PC)3.4 TCC事务补偿机制正文1.概述在单体架构中,我们的事务可以通过数据库的ACID来操作,不会出现什么问题.1.1 问...原创 2018-12-28 19:13:05 · 17740 阅读 · 13 评论 -
jvm 优化(一):内存结构
前言本文主要写jdk7和jdk8的内存结构区别和常规操作,后几篇会写调优工具和优化方式.目录1.jdk7和jdk8内存结构区别2.基础jvm命令正文1.jdk7和jdk8内存结构区别在jvm结构中,对内存划分了:程序计数器2.Java虚拟机栈2.Java虚拟机栈本地方法栈Java堆方法区在实际运行中,堆占据操作的大部分内存,常见的OOM和一些调优手段也是针对堆进行的....原创 2019-01-04 18:58:03 · 484 阅读 · 0 评论 -
RocketMq顺序消息和事务消息(四)
前言本篇继续看rocketmq,接 中文文档 集群搭建 rocketmq实战目录1.顺序消息2.事务消息正文顺序消息有很多场景需要顺序消息,比如先买票-&gt;再上车;淘宝买东西时,先下订单-&gt;付款-&gt;发货;等等此刻我们有个要求 :1.每个订单的消息要有序 2.多个订单可以并行(mq的目的就是解耦和提高系统整体性能).rocketmq是怎么实现的呢?1.要发送...原创 2018-11-28 17:19:00 · 7026 阅读 · 5 评论 -
rocketmq学习 实战(三)
前言基于前两篇,RocketMq 学习 中文文档(一) RocketMq 集群搭建 部署 (2m-2s-async)我们已经了解了rocketmq的工作流程和集群搭建,本文介绍java接入的代码部分.目录1.普通消费2.失败重试正文1.普通消费依赖&amp;amp;lt;dependency&amp;amp;gt; &amp;amp;lt;groupId&amp;amp;gt;org.apache.rocketmq&am原创 2018-11-26 19:46:02 · 981 阅读 · 0 评论 -
RocketMq 集群搭建 部署 (2m-2s-async)(二)
前言本文基于最新版rocketmq 4.3.2搭建,2个节点,A节点部署A-m和B-s,B节点部署A-s和B-m目录1.准备环境2.开始搭建正文1.准备环境1.linux服务器2台(centos7)2.maven(3.5以上)3.jdk(本文使用的1.8(有人说使用系统自带的可能导致一些问题,未测试,此处是手动装的))4.工具:使用的xshell+xftp部署结构图如下:...原创 2018-11-26 15:41:02 · 16688 阅读 · 18 评论 -
时间复杂度分析 理解
前言在java中摸索几年,在看一些文章中,时间复杂度的词频挺高,决定是时候看下了,而且也是基础,但当是回温一下大学的知识,不能全还给老师,哈哈概念**时间复杂度:**用来定性的描述算法的执行时间的一个函数,更类似于一个耗时的趋势,函数表示为: O(f(n))名词解释:n:问题的规模,重复执行的次数T(n):一段程序运行,各种操作代码所执行的总次数f(n): 存在的某个函数,使得T(n...原创 2018-10-12 15:24:39 · 6666 阅读 · 8 评论 -
红黑树分析 清晰直白
概念红黑树(Red-Block Tree)是一种近似平衡的二叉树,因此拥有较高的查询效率,但正因为是一棵近平衡树,因此在插入或删除节点时,会结构调整(变色,左旋,右旋),使其接近平衡,从而降低效率.本文以TreeMap为例说明,TreeMap用红黑树构建,所以查询性能较高,时间复杂度为O(lgn),而HashMap和LinkHashMap的时间复杂度都为O(n),显然查询时比TreeMap耗时...原创 2020-01-10 16:47:53 · 295 阅读 · 0 评论 -
redis学习-数据类型详解-各使用场景(一)
redis 127.0.0.1:6379&amp;amp;amp;amp;gt; COMMAND KEY_NAME原创 2018-11-09 10:52:09 · 1578 阅读 · 0 评论 -
redis学习-数据类型详解-各使用场景(二)
原文链接: 作者小太阳^_^,转载请注明出处,谢谢前言本文接上一篇,持续探索redis其他功能目录:1.redis集群未完待续原创 2018-11-09 18:52:34 · 191 阅读 · 0 评论 -
dubbo 搭建 学习教程 配置 附GitHub 源码 ( 二 )
声明原文链接:https://blog.csdn.net/weixin_40533111/article/details/82726187 作者行舟水上_温酒听雨,转载请注明出处,谢谢本文参考dubbo官网:http://dubbo.apache.org/en-us/docs/user/preface/architecture.html基础架构,理论篇可参考:dubbo使用小全 分析 理...原创 2018-11-02 16:59:20 · 819 阅读 · 0 评论 -
dubbo 学习教程-基础 附GitHub 源码 ( 一 )
声明原文链接:https://blog.csdn.net/weixin_40533111/article/details/82726187 作者行舟水上_温酒听雨,转载请注明出处,谢谢本文参考dubbo官网:http://dubbo.apache.org/en-us/docs/user/preface/architecture.html1.背景架构演变:单一应用架构-&amp;amp;amp;amp;amp;amp;amp;amp;amp;gt;垂直...原创 2018-11-02 15:31:18 · 656 阅读 · 0 评论 -
dubbo 搭建 学习教程 配置 附GitHub 源码 ( 三 )
声明原文链接:https://blog.csdn.net/weixin_40533111/article/details/82726187 作者行舟水上_温酒听雨,转载请注明出处,谢谢本文参考dubbo官网:http://dubbo.apache.org/en-us/docs/user/preface/architecture.html基础架构,理论篇可参考:dubbo使用小全 分析 理...原创 2018-11-02 19:50:45 · 1754 阅读 · 0 评论 -
sql 如果不存在则插入,存在则不操作或修改
原创 2018-11-19 15:03:26 · 25383 阅读 · 0 评论 -
RocketMq 学习 中文文档(一)
原文链接: 作者小太阳^_^,转载请注明出处,谢谢前言本文分三篇,分别从概念原理, 集群搭建 ,java接入实践讲解本篇内容参照官方文档(Alibaba,apache),原文讲的很简白,本篇引用,不做赘述.目录1.基本概念及优势1.1物理部署结构1.2名词解释2.消息类型2.1.普通消息2.2 定时消息和延时消息2.3 顺序消息2.4 事务消息3 消息模...转载 2018-11-24 17:46:36 · 3957 阅读 · 0 评论 -
java itext导出PDF github
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I...原创 2018-09-21 18:50:15 · 4101 阅读 · 1 评论