5 江无羡

尚未进行身份认证

Life is full of surprises !

等级
TA的排名 2w+

Docker 服务容器化部署的利器

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器或Windows 机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker 可以为应用开发人员提供一套构建与共享的标准, 支持在任何基础架构中都能实现简洁、敏捷的开发方式,从而可以更快速的部署应用。初步了解下Docker先到官网查...

2020-02-21 11:33:05

最优路径之---Bellman-Ford

贝尔曼-福特算法: 使用的动态规划的思想, 用于求解图中(边权正负都可, 但不能存在环)任意两点间的最短距离

2020-01-31 18:45:48

最优路径之---Floyd

Floyd-Warshall: 使用的动态规划的思想, 用于求解图中(边权正负都可, 但不能存在环)任意两点间的最短距离

2019-12-30 18:26:07

最优路径之---Dijkstra

Dijkstra: 可以寻求图中(边权为正)指定非相邻两点之间最短距离的算法

2019-12-30 18:11:48

VS code中手动安装go的插件

Visual Studio Code是一个轻量且功能非常强大的代码开发工具; 支持Windows、MacOS和Linux三种系统的桌面应用; 虽然它一开始主要设计为JavaScript, TypeScript and Node.js,但是它支持通过丰富的插件来支持其他更多的开发语言比如C++, C#, Java, Python, PHP, Go, .NET and Unity等VS开发Go程序...

2019-11-27 17:33:27

Java Agent的初步认识和开发

Java Agent的初步认识、开发和使用初步认识新的改变Java Agent的执行原理开发一个自己的Java Agent初步认识你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你新的改变我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Java Agent的执行原理开发一个自己的Java Agent...

2019-10-31 19:24:09

分布式锁之Zookeeper

zookeeperzookeeper介绍ZooKeeper是一种用于分布式应用程序的分布式开源协调服务。它公开了一组简单的原语,分布式应用程序可以构建使用这些原语,以实现更高级别的服务,如实现同步,配置维护以及组和命名。 它被设计为易于编程,并使用在熟悉的文件系统目录树结构之后设计的数据模型。Curator介绍Curator是ZooKeeper的一个Java客户端框架, 它将zk本身提供的...

2019-09-04 11:31:39

分布式锁

锁介绍多核CPU操作内容数据当CPU进入多核时代后, 操作系统为了更好发挥CPU的性能, 因此出现了多线程操作; 然后CPU为了提高处理速度, 当线程操作数据时是不和系统内存直接进行交互的, 而是使用缓存; 同时CPU的缓存分为一级缓存, 二级缓存, 三街缓存, 每一级缓存中所存储的全部数据都是下一级缓存的一部分, 这三种缓存的技术难度和制造成本是相对递减的, 所以其容量也是递增的; 当CPU...

2019-08-15 10:13:26

Spotless 代码格式化的配置和使用

Spotless 是一个代码格式化工具。它支持的开发语言有java, kotlin, scala, sql, javascript, css, json, yaml, etc; 它不仅能按照指定的规则去检测我们的代码指示出不合规的地方, 同时可以按照规则修复代码; 且发布了现成的maven|gradle plugin, 这里我们对gradle-plugin进行使用演示SpotlessChe...

2019-07-09 09:37:59

Liquibase 数据库版本管理插件的配置和使用

Liquibase 是一个用于跟踪、管理和应用数据库变化的开源的数据库重构工具。它将所有数据库的变化(包括结构和数据)都保存在 changelog文件中,便于版本跟踪控制,尤其是在敏捷开发模式中, 它的目标是提供一种数据库类型无关的解决方案,通过执行 schema 类型的文件来达到迁移。自动化CI所采用的常见插件CheckstyleFindBugsJacocoLiquibase 的...

2019-06-27 14:02:43

FindBugs 代码静态扫描bug插件的配置和使用

Checkstyle是一款可以帮助开发人员检查代码隐藏bug的分析工具; 它可以进行代码扫描, 产生bug检测报告, 以便开发人员及时去修复; 使用它可以让我们的工程代码质量更高;在项目中配置使用FindBugs在Gradle项目中, 配置使用FindBugsgradle构建脚本使用groovy首先在build.gradle中引入FindBugs插件// 以外部文件的方式引入gra...

2019-06-23 18:35:01

Checkstyle 代码风格插件的配置和适用

Checkstyle是一款可以帮助开发人员编写符合Java代码编码标准的的开发工具; 它可以进行自动化检查, 避免开发者陷入代码规范这种繁琐的事情之中; 使用它可以让我们的工程保持统一的代码规范;在项目中配置使用Checkstyle在Gradle项目中, 配置使用Jacocogradle构建脚本使用groovy首先在build.gradle中引入Checkstyle插件// 以外部...

2019-06-20 16:35:49

Jacoco 代码测试覆盖率检测插件的配置和使用

Jacoco 是一个免费的代码覆盖率测试工具, 分别在maven和gradle管理的项目中都可以通过简单的配置来对我们的项目代码进行单元测试用例执行覆盖率的测试, 非常的便捷好用!在项目中配置使用Jacoco在Gradle项目中, 配置使用Jacocogradle构建脚本使用groovy首先在build.gradle中引入Jacoco插件// 引入插件apply plugin: ...

2019-06-18 20:32:21

二叉堆(最小堆, 最大堆)介绍与实现

二叉堆是一种特殊的二叉树,它总是保证一棵树的最小元素(最小堆)或者最大元素(最大堆)处于树根上,常见的应用场景就是用于构建优先队列,在jdk中DougLea所实现的ScheduledThreadPoolExecutor中就是用到了最小堆;二叉堆介绍二叉堆的编程实现应用场景二叉堆介绍什么是树?计算机中树是一种数据结构(有向无环图),因为它看起来像一颗倒挂的树,所以被称为树...

2019-06-13 11:53:16

关于RocketMQ的一些基础知识点及使用建议

之前一段时间团队中引入了RocketMQ以作为RabbitMQ的替代品, 一者是让使用它的较高吞吐量,其次想在其上做一些扩展开发,消息事务也是我们想用它的原因之一;引入的过程很简单,接下来为了在核心服务中进行切换,所以就需要对RocketMQ进行一系列深入了解,才有信心在切换的过程中实现稳步切换,以及后期游刃有余的功能扩展。MQ相关介绍RocketMQ整体架构设计RocketMQMQ概...

2019-05-15 07:59:56

数据库中一些常用SQL使用方法记录

开发出身的程序员们,因为本职工作主要是做一些编码的工作,因此对于一些特殊场景的SQL就不是天天用了,所以在此做以记录,方便后续的查询与参考DDL(Data Definition Language)DML(Data Manipulation Language)**DCL(Data Control Language) **TCL(transaction Control Language)...

2019-03-22 14:16:30

Redis原理及应用

Redis 是一个开源的(BSD)基于内存的高性能数据存储器,可作为数据库、缓存、消息代理。支持的数据类型有字符串(strings), 散列表(hashes), 数组(lists), 集合(sets), 有序集合(sorted sets with range queries), 位图(bitmaps), 大数统计(hyperloglogs), geospatial indexes with rad...

2019-03-13 19:51:40

使用fastjson进行序列化时进行数据脱敏

fastjson 是阿里巴巴开源的一款优秀的java生态下序列化/反序列化产品,我们可以在不同的服务之间进行数据交互时使用它,同样可以输出日志时使用fasnjson把对象转化为String, 然后再进行采集,比调用对象的toString方法靠谱,比如如果对象内部没有实现toString方法就不能正确输出想要的信息, 另一方面json格式的日志数据,后续可观性也会好一些;问题使用fastjso...

2018-12-21 18:28:54

Okhttp 通过拦截器实现对Response编码的设置

Okhttp 一个被广泛用于Android and Java applications中作为http请求的基础类库, 具有简单和方便的API接口, 支持同步和异步, 在http2协议下可以允许多个请求共享一个socket, 连接池降低延迟等特性;问题抛出今天做一个新项目, 应团队规范, 采用okhttp替换HttpComponents, 然后在做http请求时, 返回的内容中文乱码, 第一次使...

2018-10-30 20:59:50

JVM基本介绍和一些启动参数释义及用法

本篇文章记录一下日常用到的一些JVM启动参数及相关功能释义列表-XX:+TraceClassLoading: JVM 启动时设置此参数, 可以打印加载的所有class信息

2018-10-30 20:15:43

查看更多

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