实践出真知

不在沉默中爆发,就在沉默中死亡,不在黑暗中发光,就在黑暗中消亡 ------ 自立自强...

tomcat启动时使用application.yml指定环境的配置

首先:yml文件建立三个环境配置这个略过 第二:pom.xml文件的build标签下面添加这么一段配置 <profiles> <profile> &...

2018-07-31 10:57:39

阅读数 1962

评论数 1

jetbrains license server

--失效:http://xdouble.cn:8888/ --失效:http://idea.uri.ci --失效:http://idea.liyang.io --失效:http://active.chinapyg.com --失效:http://btsha.com:41017 --失效:htt...

2018-07-23 11:07:16

阅读数 3006

评论数 0

wrk压测工具的使用

wrk压测的git地址:https://github.com/wg/wrkwrk安装:直接下载然后解压之后进入目录然后make编译即可。get请求:./wrk -t1 -c400 -d200s http://www.baidu.com参数-t代表线程数-c代表连接数-d代表请求持续时间发送post...

2018-05-23 17:52:00

阅读数 241

评论数 0

基于redis脚本实现安全的分布式锁

最近项目中需要用到一个分布式的锁,考虑到基于会话节点实现的zookeeper锁性能不够,于是想使用redis来实现一个分布式的锁。看了网上的几个实现方案后,发现都不够严谨。比如这篇:用Redis实现分布式锁里面设计的锁有个最大的问题是锁的超时值TTL会一直被改写,“尽管C3没拿到锁,但它改写了C4...

2018-02-28 10:56:46

阅读数 345

评论数 0

深入理解Java内存模型系列文章

深入理解Java内存模型(一)——基础深入理解Java内存模型(二)——重排序深入理解Java内存模型(三)——顺序一致性深入理解Java内存模型(四)——volatile深入理解Java内存模型(五)——锁深入理解Java内存模型(六)——final深入理解Java内存模型(七)——总结...

2018-02-24 13:50:29

阅读数 342

评论数 0

三种方式实现限制IP访问

方式一:Linux防火墙实现 #阻止所有IP访问 iptables -A INPUT -s 0.0.0.0/0 -p tcp --dport 80 -j DROP #然后再添加白名单 iptables -A INPUT -s 1.2.3.4 -p tcp --dport 80 -j ACCEPT...

2018-02-05 18:31:08

阅读数 7306

评论数 0

三种方式实现生产者和消费者模式

方式一:同步关键字实现 //用同步实现wait/notifyAll public class Stroge { private LinkedList list; private int maxSize; public Stroge(LinkedList list, in...

2018-02-05 18:23:29

阅读数 2285

评论数 0

斐波那契数列Java三种实现

关于斐波那契数列在百度百科上的定义如下:  斐波那契数列,又称黄金分割数列,指的是这样一个数列:0、1、1、2、3、5、8、13、21、34、……在数学上,斐波纳契数列以如下被以递归的方法定义:F(0)=0,F(1)=1,F(n)=F(n-1)+F(n-2)(n≥2,n∈N*)百度百科关于斐波那...

2018-01-29 17:57:08

阅读数 739

评论数 0

Mysql常用存储引擎介绍

查看当前数据库支持的存储引擎 [sql] view plain copy SHOW ENGINES   结果如下: MySQL中常用的几种存储引擎:InnoDB、MyISAM、Merge、MEMORY以及这几个引擎的讲解 1...

2018-01-22 14:45:57

阅读数 168

评论数 0

Java线程池ThreadPoolExecutor参数解析

ThreadPoolExecutor构造函数 public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, ...

2018-01-04 12:10:47

阅读数 274

评论数 0

Java中Executors类中几种创建各类型线程池的方法及实例

Executors:提供了一系列静态工厂方法用于创建各种线程池。 1.Executors.newCachedThreadPool创建可变线程池 如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程。核心线程池大小为0,最大为Integer.MAX_VALUE,线程空闲存活时间是...

2018-01-03 19:33:17

阅读数 1183

评论数 0

对象转Json字符串时,忽略指定属性

1、FastJson转Json字符串时,忽略指定属性 1.1使用注解@JSONField 以下Bean package com.gomefinance.esign; import com.alibaba.fastjson.annotation.JSONField; import lombo...

2017-12-09 21:47:20

阅读数 18018

评论数 0

OkHttp实现延时重试

场景分析 很多项目由于有callback,且失败重试和重定向需求,因此需要实先OkHttp失败重试 解决方案 package com.gomefinance.esign.httpretry; import lombok.extern.slf4j.Slf4j; import okhttp3.Int...

2017-09-30 18:04:53

阅读数 3236

评论数 2

实现HttpClient重试

场景应用 目前程序中涉及到需要callback操作,product需要被动的接收consume的处理状态,为了最大程度的能够callback成功因此consume在http调用出现问题(如:服务不可用、异常、超时)情况下需要进行重试(retry request)。 1、针对异常的重试 例如:con...

2017-09-30 16:46:06

阅读数 3586

评论数 1

使用rabbitmq 实现延迟消费

使用场景介绍 1、发版时经常需要不停机发版,遇到mq消费者,消费一半停机就会出现消息丢失(没有使用手动确认的情况) 2、例如支付场景,准时支付、超过未支付将执行不同的方案,其中超时未支付可以看做一个延时消息。 3、例如滴滴、淘宝的自动评价都是类似场景(不一定是用的什么技术) 我是发版的情况遇到了 ...

2017-09-30 15:38:52

阅读数 4129

评论数 0

Java校验文件是否损坏

经常在程序操作文件时,遇到文件以及损坏的问题,那么如何校验文件是否损坏呢?这就需要Apache Tika包了,maven引用如下: org.apache.tika tika-parsers 1.16 ...

2017-09-04 16:36:35

阅读数 3110

评论数 5

Linux查看CPU和内存(一)----top命令

top命令简介 在系统维护的过程中,随时可能有需要查看 CPU 使用率,并根据相应信息分析系统状况的需要。在 CentOS 中,可以通过 top 命令来查看 CPU 使用状况。运行 top 命令后,CPU 使用状态会以全屏的方式显示,并且会处在对话的模式 -- 用基于 top 的命令,可以控制显...

2017-08-28 17:26:20

阅读数 377

评论数 0

mysql列的值默认不区分大小写

现象:SELECT * FROM econtract_signature WHERE contract_id='mj201707191900111744_14' SELECT * FROM econtract_signature WHERE contract_id='MJ2017071919001...

2017-08-03 08:34:17

阅读数 285

评论数 0

Java在linux上只能在程序的当前目录下创建文件/文件夹导致的问题

Java在linux上只能在程序的当前目录下创建文件/文件夹,导致正常在Windows运行正常的程序,到linux上,如果创建的目录不在当前程序执行目录下会提示:Permission denied 解决也很简单,增加以下代码即可:File f=new File("/home/sxl/o...

2017-08-03 08:00:13

阅读数 2083

评论数 0

Idea最优方案

修改Idea目录的bin下的 idea64.exe.vmoptions文件 启动和加载项目速度明显加快很多 -server -Xms2g -Xmx2g -XX:NewRatio=3 -Xss16m -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEna...

2017-06-01 10:53:42

阅读数 2609

评论数 0

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