- 博客(249)
- 收藏
- 关注
原创 搭建Nexus3私服
一、为什么要搭建Nexus私服 为什么要搭建nexus私服,原因很简单,有些公司都不提供外网给项目组人员,因此就不能访问maven中央仓库,或者公司内部的jar包在外网无法找到,所以很有必要在局域网里使用一台有外网权限的机器,搭建nexus私服,然后开发人员连到这台私服上,这样的话就可以通过这台搭建了nexus私服的电脑访问maven的远程仓库,或者从上面下载内部jar包,使得开发人员可以...
2017-03-02 17:14:41
415
原创 Spring和Mybatis整合时无法读取properties的处理方案
config.properties配置文件信息Properties代码 ##数据库(mysql|mssql|oracle...) environment=mysql jdbc.driver=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://127.0.0.1:3306/portal?useUnicode=true...
2016-11-29 11:39:58
451
原创 SSH连接慢的问题
维护linux经常需要使用ssh进行连接,但是有时会很郁闷的发现ssh连接部分机器的时候特别的慢。之前写过一篇文章<sshl连接慢(DNS惹的祸)>今天就跟大家说一下GSS导致的慢的问题。首先普及一下linux服务器上在/etc/ssh目录下存在两个配置文件一个是ssh_config,一个是sshd_config。区别就在于d上,带d的是ssh服务使用的配置文件,不带的是ssh客...
2016-11-28 17:14:43
713
原创 OpenSSH配置ssh_config中GSSAPIAuthentication 作用
在ssh_config 配置文件中有个参数 GSSAPIAuthentication 当这个参数开启( GSSAPIAuthentication yes )的时候,通过SSH登陆服务器时候会有些会很慢,但有的服务器又不慢,这个问题是什么造成的 ?? 还有就是在登陆慢的服务器上,修改这个 (GSSAPIAuthentication...
2016-11-28 17:12:47
45759
原创 shell结合expect写的批量scp脚本工具
expect用于自动化地执行linux环境下的命令行交互任务,例如scp、ssh之类需要用户手动输入密码然后确认的任务。有了这个工具,定义在scp过程中可能遇到的情况,然后编写相应的处理语句,就可以自动地完成scp操作了。 需要expect工具的话可以在linux环境中使用apt-get或yun install expect去获取安装,或是到expect开源项目的网站:http:...
2016-11-24 18:59:39
266
原创 HTTPS服务自建证书生成
具体想了解SSL/TLS原理的请浏览SSL/TLS协议运行机制的概述和SSL/TLS原理详解 对证书不太了解的,可以看数字证书及CA的扫盲介绍这篇文章。 1、安装升级openssl首先,查看下当前设备的openssl版本,如果版本在openssl1.0.1g以上,请略过openssl version -a#OpenSSL 1.0.1f 6 Jan 2014如果是...
2016-10-06 16:15:23
301
原创 Git 获取远程分支
另一哥们将分支push到库中,我怎么获取到他的分支信息呢?如果安装了git客户端,直接选择fetch一下,就可以获取到了。如果用命令行,运行 git fetch,可以将远程分支信息获取到本地,再运行 git checkout -b local-branchname origin/remote_branchname 就可以将远程分支映射到本地命名为local-branchname 的一...
2016-08-04 14:42:15
365
原创 HAProxy用法详解
转自:http://www.ttlsa.com/linux/haproxy-study-tutorial/ 一、HAProxy简介(1)HAProxy 是一款提供高可用性、负载均衡以及基于TCP(第四层)和HTTP(第七层)应用的代理软件,支持虚拟主机,它是免费、快速并且可靠的一种解决方案。 HAProxy特别适用于那些负载特大的web站点,这些站点通常又需要会话保持或七层处...
2016-08-02 16:08:37
250
原创 go 开发环境安装
1. 安装Golang 1) 首先到https://golang.org/dl/选择适合你系统的安装包,(墙内:http://golangtc.com/download)。 2)我这里选择的是:go1.6.2.windows-amd64.msi,下载完成安装到指定目录即可。我这里是(D:\Program Files\go\go1.6.2)。 3)安装完...
2016-07-14 17:10:58
104
原创 Sublime Text 3使用
1. 下载sublime text 3:http://www.sublimetext.com/3 2. 安装pakcage control: a. 按下Ctrl+`,打开控制台,然后输入以下代码,最后回车。 b. 代码见:https://packagecontrol.io/installation#st3 c. 重启sublime之后,你就可以发现在 Pr...
2016-07-13 16:28:09
214
原创 Protobuf使用
ProtoBuf的官方下载包并不包含jar文件,需要用户自己来自行编译。下载地址:https://github.com/google/protobuf/releasesprotobuf-2.6.1.tar.gz(ProtoBuf的源文件(包含了C++/Java/Python)的源文件)protoc-2.6.1-win32.zip(已经编译过的用于Windows平台的prot...
2016-07-12 11:49:14
195
原创 Linux tcpdump命令详解
简介用简单的话来定义tcpdump,就是:dump the traffic on a network,根据使用者的定义对网络上的数据包进行截获的包分析工具。 tcpdump可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。 实用命令实例默认启动tcpdump...
2016-06-09 09:14:58
154
原创 windows命令行寻找使用某一端口的进程
有时因为各种需要,希望找到自己 电脑上占用某个端口的进程,使用图形界面要特点工具,在命令行下,只要netstat命令和tasklist命令配合,很方便就可以找到。首先,使用netstat -anob|find "本机IP:端口" 命令,可以列出使用这个端口的进程号,如查看 本机使用端口49620的进程号:或使用netstat -anob|findstr 127.0.0.1:4962...
2016-06-09 09:10:16
342
原创 windows命令行统计端口的连接数
习惯了linux的系统管理员,对linux的命令行工具总是印象极深,几乎所有的管理都可以在命令行下完成。命令行工具是linux系统管理的主流。 而使用windows是,因为图形化的界面,大家习惯了图形化的管理,但很多时间会发现,在图形界面下缺少很多管理功能,一些在linux下很简单的管理功能,在windows下很难实现。很多人为了解决这个问题,上网寻找各种不同的工具...
2016-06-09 09:07:05
1825
原创 haproxy+keepalived实现高可用负载均衡
haproxy+keepalived实现高可用负载均衡 软件负载均衡一般通过两种方式来实现:基于操作系统的软负载实现和基于第三方应用的软负载实现。LVS就是基于Linux操作系统实现的一种软负载,HAProxy就是开源的并且基于第三应用实现的软负载。HAProxy相比LVS的使用要简单很多,功能方面也很丰富。当 前,HAProxy支持两种主要的代理模式:"tcp"也即4层(大...
2016-06-08 15:03:39
128
原创 Sublime Text 3使用
转自:http://zh.lucida.me/blog/sublime-text-complete-guide/安装(Installation)Sublime Text官方网站提供了Sublime Text各系统各版本的下载,目前Sublime Text的最新版本是Sublime Text 3。这里以Windows版本的Sublime Text安装为例。注意在安装时勾选Add t...
2016-05-28 16:51:55
138
原创 git status 显示中文
在中文情况下git status是 "\345\274\200\345\217\221\344\273\273\345\212\241\346\226\207\346\241\243/Openfire\347\246\273\347\272\277\346\266\210\346\201\257\345\274\200\345\217\221\344\273\273\345\21...
2016-05-23 09:32:59
357
原创 @SuppressWarnings抑制警告的关键字
关键字用途allto suppress all warningsboxing to suppress warnings relative to boxing/unboxing operationscastto suppress warnings relative to cast operationsdep-annto suppress war...
2016-05-16 15:45:19
328
原创 XMPP JID 和通信原语有3种:message、presence和iq
JIDXMPP的地址叫做JabberID(简写为JID),它用来标示XMPP网络中的各个XMPP实体。JID由三部分组成:domain,node identifier和resource。JID中domain是必不可少的部分。注意:domain和user部分是不分大小写的,但是resource区分大小写。jid = [ node "@" ] domain [ "/" resource ...
2016-05-16 14:41:00
608
原创 mongodb 地理位置处理
我只记录我用到的部分,没有完整分析mongodb对地理位置的支持 1. 使用mongodb 3.2.6版,mongodb-driver 3.2.2版 2. 使用GeoSpatial索引: use dbNamedb.collectionName.ensureIndex({"location": "2dsphere"}) 3. 查询一定距离范围内...
2016-05-16 13:39:18
392
原创 在浏览器判断是否安装app,并打开相应的页面
前段时间一直在搞app的下载页面和详情页,当时有个想法是 先判断用户是否安装了app,如果安装了,详情页直接在app内打开,如果未安装则打开微信内的H5页面,并在详情页加入下载链接。可惜当时微信内部不支持app跳转。找了半天资料终究是没有写到项目里。今天回头看的时候发现已经忘的差不多了。当初的资料却怎么也找不到。果然资料还得靠自己整理。以下是在网上搬过来的。暂时存放,以后可能...
2016-04-20 17:34:40
528
原创 JMeter多机测试配置方法
利用JMeter进行负载测试的时候,使用单台机器模拟测试超过1000个行程的并发就有些力不从心,在执行的过程中,JMeter自身会自动关闭,要解决这个问题,可以使用分布式测试,运行多台机器运行所谓的 Agent 来分担 JMeter自身的压力,并借此来获取更大的并发用户数,但是需要进行相关的一些修改,具体如下: 1、在所有期望运行 JMeter 作为 Load Generator 的机器上...
2016-04-13 18:07:33
640
原创 JMeter测试命令行执行方法
Example : jmeter -n -t test.jmx -l log.jtl -H my.proxy.server -P 8000 (-H -P是代理服务器,没代理不用设置) 参数说明:For non-interactive testing, you may choose to run JMeter without the GUI. To do so, use the fol...
2016-04-13 18:01:14
278
原创 JMeter测试入门教程
Apache JMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,它最初被设计用于Web应用测试但后来扩展到其他测试领域。 它可以用于测试静态和动态资源例如静态文件、Java小服务程序、CGI脚本、Java 对象、数据库, FTP服务器, 等等。JMeter 可以用于对服务器、网络或对象模拟巨大的负载,来在不同压力类别下测试它们的强度和分析整体性能。另外,JMe...
2016-04-13 17:23:50
164
原创 logback 常用配置简解
一:根节点 包含的属性:scan: 当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true。scanPeriod: 设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒。当scan为true时,此属性生效。默认的时间间隔为1分钟。debug: 当此属性设置为true时,将打印出logback内部日志信息,实时查看logback...
2016-04-08 14:46:45
90
原创 logback 常用配置详解
一、logback 简介 Ceki Gülcü在Java日志领域世界知名。他创造了Log4J ,这个最早的Java日志框架即便在JRE内置日志功能的竞争下仍然非常流行。随后他又着手实现SLF4J 这个“简单的日志前端接口(Façade)”来替代Jakarta Commons-Logging 。 LOGBack,一个“可靠、通用、快速而又灵活的Java日志框架”。 要在工...
2016-04-08 14:39:24
171
原创 Log4J日志配置详解
一、Log4j简介Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局)。这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出。综合使用这三个组件可以轻松地记录信息的类型和级别,并可以在运行时控制日志输出的样式和位置。1、LoggersLoggers组件在此系统中被分为五个级别:DEBUG、INFO、WARN、ERROR和FATAL...
2016-04-07 14:05:45
88
原创 Apache的DbUtils框架学习
一、commons-dbutils简介 commons-dbutils 是 Apache 组织提供的一个开源 JDBC工具类库,它是对JDBC的简单封装,学习成本极低,并且使用dbutils能极大简化jdbc编码的工作量,同时也不会影响程序的性能。因此dbutils成为很多不喜欢hibernate的公司的首选。 commons-dbutilsAPI介绍:org.apa...
2016-04-01 19:47:17
121
原创 Dubbo与Zookeeper、SpringMVC整合和使用(负载均衡、容错)
互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,Dubbo是一个分布式服务框架,在这种情况下诞生的。现在核心业务抽取出来,作为独立的服务,使前端应用能更快速和稳定的响应。 第一:介绍Dubbo背景 大规模服务化之前,应用可能只是通过RMI或Hessian等工具,简单的暴露和引用远程服务,...
2016-03-30 20:13:43
77
原创 WEB网站架构演变
最开始,由于某些想法,于是在互联网上搭建了一个网站,这个时候甚至有可能主机都是租借的,但由于这篇文章我们只关注架构的演变历程,因此就假设这个时候已经是托管了一台主机,并且有一定的带宽了,这个时候由于网站具备了一定的特色,吸引了部分人访问,逐渐你发现系统的压力越来越高,响应速度越来越慢,而这个时候比较明显的是数据库和应用互相影响,应用出问题了,数据库也很容易出现问题,而数据库出问题的时候,应用也容易...
2016-03-30 20:00:20
79
原创 Java GC 详解
1、基本回收算法(1) 引用计数(Reference Counting)比较古老的回收算法。原理是此对象有一个引用,即增加一个计数,删除一个引用则减少一个计数。垃圾回收时,只用收集计数为0的对象。此算法最致命的是无法处理循环引用的问题。 (2) 标记-清除(Mark-Sweep) 此算法执行分两阶段。第一阶段从引用根节点开始标记所有被引用的对象,第二阶段遍历整个堆,把未标记的对象清除。此算法...
2016-03-30 19:54:42
545
原创 JVM(Java虚拟机)优化大全和案例实战
堆内存设置原理JVM堆内存分为2块:Permanent Space 和 Heap Space。Permanent 即 持久代(Permanent Generation),主要存放的是Java类定义信息,与垃圾收集器要收集的Java对象关系不大。Heap = { Old + NEW = {Eden, from, to} },Old 即 年老代(Old Generation)...
2016-03-30 19:53:34
82
原创 Spring事务的传播行为和隔离级别
http://blog.csdn.net/paincupid/article/details/48180589http://blog.csdn.net/paincupid/article/details/48185597http://blog.csdn.net/qinpeng100423/article/details/8114217
2016-02-20 22:32:05
93
原创 java中什么是bridge method(桥接方法)
在看spring-mvc的源码的时候,看到在解析handler方法时,有关于获取桥接方法代码,不明白什么是桥接方法,经过查找资料,终于理解了什么是桥接方法。什么是桥接方法桥接方法是 JDK 1.5 引入泛型后,为了使Java的泛型方法生成的字节码和 1.5 版本前的字节码相兼容,由编译器自动生成的方法。我们可以通过Method.isBridge()方法来判断一个方法是否是桥接方法,...
2016-01-31 19:19:05
109
原创 @SuppressWarnings的使用、作用、用法
在java编译过程中会出现很多警告,有很多是安全的,但是每次编译有很多警告影响我们对error的过滤和修改,我们可以在代码中加上@SuppressWarnings(“XXXX”) 来解决例如:@SuppressWarnings("deprecation")表示不显示使用了不赞成使用的类或方法时的警告具体的XXXX的意义可以参考博文http://www.thebuzzmedia.c...
2016-01-06 16:45:43
108
原创 往vmware里的ubuntu虚拟机拷贝文件的缓存目录
最近发现往vmware里的ubuntu虚拟机拷贝大文件时,拷贝完毕后,目标文件夹里没有文件,但是磁盘空间已用空间却正常增大,猜测是在缓存目录里,经查找,缓存目录为:~/.cache/vmware/drag_and_drop,在这里可以找到拷贝的文件。...
2015-12-28 18:49:56
4041
1
原创 fastjson遇到的无限递归的问题
fastjson是用反射的,如果在实体类里存在getXxx()方法,生成的json字符串中就会存在一个key为xxx的值,而无需实体类中有xxx这个属性,如果getXxx()方法中调用了JSON.toJSONString(this),就会引起无限递归,最后虚拟机内存溢出,报java.lang.StackOverflowError。...
2015-09-13 18:09:02
2145
原创 当spring 容器初始化完成后执行某个方法
在做web项目开发中,尤其是企业级应用开发的时候,往往会在工程启动的时候做许多的前置检查。 比如检查是否使用了我们组禁止使用的Mysql的group_concat函数,如果使用了项目就不能启动,并指出哪个文件的xml文件使用了这个函数。而在Spring的web项目中,我们可以介入Spring的启动过程。我们希望在Spring容器将所有的Bean都初始化完成之后,做一些操作,这个时候我们...
2015-08-11 14:56:59
99
原创 javac命令初窥
注:以下红色标记的参数在下文中有所讲解。用法: javac <options> <source files>其中, 可能的选项包括: -g 生成所有调试信息 -g:none 不生成任何调试信息 -g:{lines,vars,source} 只生成某些...
2015-07-30 14:05:26
126
原创 update-rc.d使用
在Linux系统下,一个Services的启动、停止以及重启通常是通过/etc/init.d目录下的脚本来控制的。然而,在启动或改变运行级别时, 是在/etc/rcX.d中来搜索脚本。其中X是运行级别的number。本文将解释如何启动、关闭和修改服务的运行。当你在Debian下安装一个新的 服务,比如Apache2,安装完成后,默认情况下它会启动,并在下一次重启后自动启动。但是如果你不是一直需要...
2015-07-29 09:31:20
261
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人