自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

xcdsy@aliyun.com

积累知识,分享知识

  • 博客(99)
  • 资源 (1)
  • 收藏
  • 关注

原创 jacoco 多个 module 运行 code coverage 测试

别不相信,就这么简单,如果运行不成功,那就是加入插件的parent pom.xml有可能是maven repsitry中的文件。 在parent pom.xml 中的<build>中加入如下的插件:<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>mave

2017-07-21 16:50:45 3106

原创 PostgreSQL远程访问

#vi /var/lib/pgsql/9.5/data/pg_hba.conf修改:listen_addresses = '*'# TYPE DATABASE USER CIDR-ADDRESS METHODhost all all 0.0.0.0/0 md5hostnossl all all 0.0.0.0/0 trust 然后,使用p

2017-07-18 16:37:03 740

原创 Elasticsearch 1.7.3 groovy are disabled

如果是在查询中使用,需要设置:Add script.engine.groovy.inline.search: on to elasticsearch.yml configuration file and restart the node.如果要是在聚合中使用,则设置script.engine.groovy.inline.aggs: onFor ES Version 2.x+script.inline

2017-07-13 23:14:24 548

原创 Consul服务注册发现

1.服务注册发现,Console默认会有一个健康检查的服务,默认是host/health,如果这个URL访问不到,那么这个服务的状态就是falling,这个可以在对应服务的health的GET信息中得到,一般是404。所以当你配置了这个服务以后,服务的状态就是passing,那么你的服务就正常了。

2017-07-13 14:53:40 804 2

转载 高并发的核心技术-幂等的实现方案

高并发的核心技术-幂等的实现方案 一、背景 我们实际系统中有很多操作,是不管做多少次,都应该产生一样的效果或返回一样的结果。 例如: 前端重复提交选中的数据,应该后台只产生对应这个数据的一个反应结果。 我们发起一笔付款请求,应该只扣用户账户一次钱,当遇到网络重发或系统bug重发,也应该只扣一次钱; 发送消息,也应该只发一次,同样的短信发给用户,用户会哭的; 创建业务订单,一次业务请求

2017-07-07 16:38:19 389

转载 linux shell 发邮件

安装sendMail yum -y install sendmail 1.使用管道进行邮件发送[root@ProxyServer ~]# echo "hello,echo"|mail -s "echo" justin@51cto.com2.使用外部smtp(qq的SMTP)来发送邮件 bin/mail会默认使用本地sendmail发送邮件,这样要求本地的机器必须安装和启动Sendmail服务,

2017-07-07 16:10:34 546

原创 GITLAB hooks

hooks中的脚本是不能删除的,update中的内容只可以追加如果对单个工程起作用,需要新建custom_hooks,将脚本放进去,就可以了。如果删除了hooks中的update,那么custom_hooks中的脚本是不会起作用的。不同版本的默认脚本不同。

2017-06-23 01:24:50 586

原创 安装maven

wget http://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.5.0/binaries/apache-maven-3.5.0-bin.tar.gztar -xzvf apache-maven-3.5.0-bin.tar.gzexport PATH=/opt/apache-maven-3.5.0/bin:$PATH

2017-06-16 15:21:25 336

原创 Mac格式化移动硬盘DiskUtil

可以使用如下命令:#diskutil list/dev/disk4 (external, physical): #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *4.0 TB

2017-06-15 21:19:06 14826 1

原创 DevOps:这是个什么玩意

WIKI: DevOps(Development和Operations的组合词)是一种重视“软件开发人员(Dev)”和“IT运维技术人员(Ops)”之间沟通合作的文化、运动或惯例。透过自动化“软件交付”和“架构变更”的流程,来使得构建、测试、发布软件能够更加地快捷、频繁和可靠。应该是development和Operation两个单词的缩写。而DevOps考虑的还不止是软件部署,它是一套针对这几个部

2017-06-14 16:46:34 557

转载 查看文件的编码格式的方法

这里指的文本是用于Windows系统中的扩展名为.txt的文件。Notepad(记事本)只支持四种格式:ANSI/Unicode/Unicode big endian/UFT-8,在Delphi中如何判断与读取这些不同格式的文本呢?首先,不同编码的文本,是根据文本的前两个字节来定义其编码格式的。定义如下:ANSI:        无格式定义; Unicode:       前两个字节为FFFE; U

2017-06-12 14:23:01 4959

原创 GIT常用命令

#用于查看所有子模块中的状态,||: 表示,如果遇到错误也不中断执行git submodule foreach 'git status||:'#用于递归clone所有项目的子modulegit clone --recursive projName

2017-06-09 15:27:02 276

原创 关于人生的行事方法

诚于嘉许,宽于称道。放松自己,就像一堆袜子。每天默默的为一个人做一件好事,做两件自己不愿意去做的事。将东恐惧转换为必胜的信念。每天都保持快乐。爱你的敌人,并原谅别人77次。做最好的自己。

2017-06-06 09:36:58 346

原创 Unicode编码的小知识

Unicode标准也在不断发展,但最常用的是用两个字节表示一个字符(如果要用到非常偏僻的字符,就需要4个字节)。UTF-8编码把一个Unicode字符根据不同的数字大小编码成1-6个字节,常用的英文字母被编码成1个字节,汉字通常是3个字节,只有很生僻的字符才会被编码成4-6个字节。在计算机内存中,统一使用Unicode编码,当需要保存到硬盘或者需要传输的时候,就转换为UTF-8编码。

2017-06-01 17:54:49 359

转载 Idea

http://idea.iteblog.com/key.php

2017-04-25 11:02:43 237

原创 考虑用静态工厂方法代替构造器

方法有名字,可以知道构建的是什么样的一个对象;不必在每次调用的时候都创建一个新的对象,可以使用预先缓存好的对象,避免创建重复的对象–这样做的好处就是可以提升性能;可以有选择的返回子类型的对象。在静态工厂方法中使用范型可以使代码简洁,如下:public static <K,V> HashMap<K,V> newInstance(){ return new HashMap<K,V>();

2017-04-04 17:54:18 415

原创 编写代码的原则,清析性和简洁性

模块的用户永远不应该被模块行为所迷惑;模块要尽可能小,又不能太小;代码应该被重用,而不是拷贝;模块之间的依赖性尽可能的降低到最小;错误应该尽早的被检测出来,最好是在编译时刻。java语言支持四种类型接口类数组基本类型一个类实现了一个接口,或者extend另一个接口。 导出API或者API:是指类、接口、constructor、fields和序列化形式(serialized form)

2017-04-04 17:09:58 440

原创 自动化运维的步骤

建立项目文件夹;克隆程序到本地;执行构建; 将应用程序的包注册为服务,并设置为开机启动;启动应用;其中,第四步骤可以看情况而定。

2017-04-02 18:02:38 640

转载 MAC OS 下sourceTree总是提示输入密码的解决办法

参照如下命令,在你的项目所在目录依次执行,就可以解决问题。curl http://github-media-downloads.s3.amazonaws.com/osx/git-credential-osxkeychain -o git-credential-osxkeychainmv git-credential-osxkeychain /usr/local/binchmod u+x /usr

2017-04-02 16:39:38 6229

原创 Linuxs常用命令

CentOS重启网络 /etc/init.d/network restart安装扩展,添加EPEL源 EPEL即Extra Packages for Enterprise Linux 。CentOS为了保证系统的稳定性,只提供了少量的软件包,无法满足更多的需求。EPEL为CentOS提供了额外10000多个软件包,而且在不替换系统组件方面下了很多功夫,因而可以放心使用。wget http

2017-04-02 15:13:15 849

原创 GitLab安装,基于清华大学镜像

https://mirror.tuna.tsinghua.edu.cn/help/gitlab-ce/安装cent-os的配置时,不需要新建repo文件,只需要做在CentOS-Base.repo最后加入文档中描述的内容:[gitlab-ce]name=Gitlab CE Repositorybaseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-

2017-04-01 23:19:00 3954

原创 MAC VMWare Fusion网络设置

查看主机的IP网段(我在房东的网络下接了路由器),192.168.28.117。修改/Library/Preferences/VMware Fusion/vmnet8目录下的nat.conf文件 网关的设置要两个配置文件相同,一般为28.2的ip,其它的配置的IP需要更改。 一般换了网络环境以后,VMware内的虚拟机设置为固定IP的,以NAT方式与主机共享的网络需要重新进行设置。DNS设置

2017-03-30 20:55:02 17722

原创 web.xml中组件加载顺序

context-param -> listener -> filter -> servlet 可他们在WEB.xml中的位置无关。

2017-03-22 10:51:23 372

原创 Chrome的一些监控方法

chrome://net-internals/#dns which will show you the gory detail of the request you are sending - including hidden redirects / security information about cookies being sent etc.

2017-03-17 13:12:53 1364

原创 如何消除内存泄漏

消除过期对象的引用过期引用不会被回收。 只要是类自己管理内存,就要警惕内存泄漏。 GC不知道数组中哪些对象是无用的。 自己不使用的内存,要显式的设置为NULL; 缓存也会引起内存泄漏。 weakHashMap代表缓存,过期后可以自动删除过期对象。 缓存中放入的对象,容易被遗忘掉,很长一段时间留在内存中。weakHashMap中的值放入了以后,执行GET操作才会回收。 第三个来源,监听器

2017-03-13 23:32:26 244

原创 多线程-第二天

无状态的对象,一定是线程安全的。 无状态:不包括任何域,也不包含任何对其它类中域的引用。兑态条件(Race condition):由于不恰当的执行顺序而出现的不正确的结果。 先检查后执行(check-then-act):通过一个可能失效的观测结果来执行下一步的动作。 星巴克找人的例子; 延迟初始化中的竞态条件; i++; //延迟初始化中的竞态条

2017-03-12 16:10:11 263

原创 通过私有构造器,使工具类不可实例化,也不可继承

//Noninstantiable utility classpublic class UtilityClass{ //Suppress default constructor for noninstantiability private UtilityClass(){ throw new AssertionError(); } //other me

2017-03-12 10:49:42 1527 1

原创 Singleton in action with enum- the preferred approach

测试困难,因为无法给singleton替换模拟实现,除非它实现充当其类型的接口。jdk5以前,都是把构造器声明为私有,导出公有静态成员;//Singleton with public final fieldpublic class Elvis{ public static final Elvis INSTANCE = new Elvis(); private Elvis(){.

2017-03-12 10:30:51 294

原创 Java多线程笔记第一天

线程的优势作用使用得当,可以降低程序的开发维护成本,提升复杂程序的性能。能将大部分的异步工作流转成串行工作流,模拟人类的工作方式和交互方式;降低代码复杂度,使代码容易编写、阅读。优势发挥多处理器的优势。建模简单 针对最终用户来讲,让用户感觉到建模简单。异步事件的简单处理,如果底层操作系统对线程的支持好,编程使用NIO的情况将减少;用户界面响应问题线程带来的风险安全性问题,主要是

2017-03-11 12:09:36 359

原创 Builder模式

目的是为了解决使用构造器方法时排列组合爆炸及使用时的繁琐性,及调用JavaBean实现方法时的线程安全性问题。public class NutritionFacts{ private int servingSize ; private int servings ; private int categories ; private int fat; priva

2017-03-11 11:32:31 279

原创 一致性HASH算法

用来解决分布式系统中,HASH节点发生变化对原有分配策略产生的影响,使对原有分配策略的影响是局部性的,达到实现动态扩充节点的目的。使用这种算法时,需要针对某一个节点的数据做局部的调整。关键是环型的节点结构,及一致性的HASH算法策略,如下: 1. 首先检查虚拟节点当中是否有与当前对象Hash值相等的,如有则直接将对象存入那个Hash值相等的节点,后面的步骤就不继续了. 2. 如没有,则找出第一个

2017-03-11 11:13:03 379 1

转载 时区处理

public static void main(String[] args) { Date date = new Date(1359641834000L); System.out.println(date); date = changeTimeZone(date, TimeZone.getTimeZone("Asia/Shanghai"), TimeZone.ge

2017-03-09 16:16:22 380

原创 关于谦虚

从我的观察,以及各种我遇到的人的讲述,身居高处的人都谦虚。这就是我们常听人讲的,知道的越多,就知道未知的东西越多,要有所畏惧。从现在我的身边的一些工作的80、90后来讲,却是不是如此,他们无所畏惧。让我想起了我就像他们这样的年龄的时候也如他们一般的想法,却是没有什么希奇的。从我的离职来讲,却是没有必要和他们计较太多的,本来是没有对错的事情,为了谋生,为了不同的世界观,和远没有你成熟的人去计较什么呢?

2017-03-04 23:39:20 357

转载 软件开发问题定位定律

定律1:最难定位的问题要么是最疑难的问题,要么是最低级的问题,这两种问题都有一个共同特征,就是让你意想不到。举一个例子,一次代码编译不过,报函数没有定义,开始怀疑是类没有“;”结束符,然后怀疑有没有匹配的“{”,折腾了好久,最后才发现是开头的“#ifndef”定义的符号与别的文件重复了,导致整个文件没有生效,报函数未定义错误,都是Ctrl C、Ctrl V惹的祸啊定律2:当非常奇怪的问题发生时,通常

2017-02-22 14:31:37 515

原创 我要离职了

今天用了将近两个小时改了一下简历,由管理类型的修改为技术类型的,现在可以说还是想做技术,毕竟单纯一些,现在也学习到了一些知识,不过只是工程上的算法,不见得是什么样高深的技术,接下来的工作就是将某一门技术做的深入些,有深度。另外,尽量争取些业余的时间,把数学补上,AI还是一个我内心中永远不能说出来的痛啊。就写到这里,时间太晚了,整理一下思絮,休息了,但愿今年我不再像刚出来的时候,那么毛草,感觉是个公司

2017-02-21 23:29:20 263

原创 平和的心态

今天早上,去公园去遛这只叫做LEO的狗狗,听到乌黑叫,感觉也没有什么,可是到了后来,它跑去追别人的狗狗的时候,我生气了,打了它几下,竟然跑掉了!!!害得我上班都没有及时去,和朋友一起去找它,好在后来又找到它了。本以为找到它的时候,我会生气的,可是看到它的鬼样子,我又生不起气来。想想,当时是因为心态的不平和才会导致如此的结果。今年我本来的期望就是一个淡定的心态,处理问题平和而冷静,一切水到渠成,波澜不

2017-02-20 13:27:08 693

原创 关于mac系统外接键盘的设置

今天我在京东上买了一个机械键盘和一个外接的显示器(HP),使用HDMI接口接上以后居然可以将声音在显示器上播放出来,写着感觉爽多了,看来以后还是用机械键盘写东西。另外,我的键盘装上的时候,由于是windows键盘,需要在mac下进行设置,这时候找到系统的设置-》键盘就可以告诉你如何识别外置的键盘了,原以为买了的键盘不能用呢,结果经过设置以后与mac主机上的键盘键位是一样的,这下用起来好用了。现在我就

2017-02-15 22:34:17 11532

原创 工程实践

在系统预发以后,系统上线以后,都需要发正式的邮件给产品经理、leader、产品负责人、及相关涉众,告之联系业务方进行测试;在代码开发完成后,需要至少两个人一起做code review;在项目开发过程中,单元测试必不可少; 前端必须有一套整体的开发框架,目前看,数据驱动的前端框架是发展趋势,对于生产力的提高作用很大;工程代码采用GIT进行管理,分支管理办法必须科学有效,以支持BUG修复,分功能

2017-02-13 13:45:16 295

原创 不惑之年的程序员

一般每个周末我都会抽出一天时间来用作休息,也就是不看任何与工作有关的东西,不去想,不去问,在生活。我很享受每个周末这一点点的时间,因为这段时间可以让我睡到自然醒,按自己的意愿去分配我自己的时间,要做的事情,也就是说可以做选择,而且自己说了算,这是一件多么爽的事情。由此,联想到了工作,工作是每天的例行公事的去在固定的时间做固定的事情,虽然也许工作内容不同,但是却一点自由权也没有,就像在大海中的小舟,由

2017-02-11 17:25:19 468

原创 2017学习计划

英语Hadoop阅读一份开源源代码学习统计学巩固项目管理知识,如果可能,考个认证进行持续构建相关工程实践阅读一本哲学书籍

2017-02-06 09:55:18 223

java知识linux脚本

java linux 叫本,不成问题,这些成了问题

2015-08-11

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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