- 博客(127)
- 资源 (1)
- 收藏
- 关注
原创 seajs源码阅读
seajs主要解决的问题包括:命名冲突、文件依赖、异步加载和模块化等问题,具体怎么实现的呢?通过阅读源码一探究竟。源码地址:https://github.com/seajs/seajs seajs-debug.js/** * Sea.js 3.0.0 */(function(global, undefined) {//多次加载seajs.js保证只有一个seaj...
2017-06-21 17:28:00
321
原创 基于注解的Spring AOP
原文 : http://www.cnblogs.com/davidwang456/p/4013631.html AOP是OOP的延续,是Aspect Oriented Programming的缩写,意思是面向切面编程。可以通过预编译方式和运行期动态代理实现在不修改源代码的情况下给程序动态统一添加功能的一种技术。AOP实际是GoF设计模式的延续,设计模式孜孜不倦追求的是调用者和被调用者之...
2016-12-21 10:39:58
224
原创 idea代码注释生成
安装javadoc插件,安装之后重启idea 修改C:\Users\Administrator\.IntelliJIdea15\config\options目录下java doc的配置intellij-javadocs.xml,主要是修改author。 修改javadoc快捷键 生成的注释如下 ...
2016-12-16 10:33:20
514
原创 一条SQL引发的血案
问题场景: mysql数据库的配置为8核16G,数据库单表45k条记录,通过两个未加索引的字段进行查询,返回的记录数小于等于1,绝对并发6k,每个SQL的查询时间为1s。 出现问题: 数据库CPU利用率一直处于100%,导致其他sql操作超时,应用down掉。实际上不到6k并发cpu利用率就到100%。解决方法:对涉及的两个字段加索引,问题解决,相同的问题场景下数据库CPU基本没有出现...
2016-11-26 23:41:37
297
原创 mysql数据库保存记录时中文乱码
在java后台中获取的中文参数正确,但是保存数据库之后,提示乱码,DB及数据库表配置解决方式参考以下图。如果出现乱码排查步骤为:1.http请求是否有乱码。tomcat编码是否设置,http请求是否设置了编码格式。2.数据库编码方式。3.表编码方式。 ...
2016-10-12 14:50:30
248
原创 centos中命令自动补全
centos下命令自动提示功能通过安装:# yum install -y bash-completion# [[ $PS1 && -f /usr/share/bash-completion/bash_completion ]] && . /usr/share/bash-completion/bash_completion bash-completion...
2016-07-05 16:45:48
865
原创 基于openvswitch的不同宿主机docker容器网络互联
场景:同一台宿主机的docker容器之间网络是联通的,但是不同宿主机之间的docker容器之间不能直接通信。在使用docker容器为不同宿主机部署分部署服务的时候,必须要实现不同宿主机的docker容器之间的网络互通,保证服务调用端能够直接访问服务。 软件版本:centos:7.1docker版本:1.11.1openvswitch :2.3.0 测试虚拟机:s...
2016-07-02 14:26:53
606
原创 svn环境搭建
环境 centos6.5 + svnserve1.6 使用yum安装 检查是否已经安装 : rpm -qa subversion 移除安装:yum remove subversion 执行安装: yum install -y subversion 检验是否安装成功: subserve --ve...
2016-05-23 15:42:51
123
原创 应用监控插件pinpoint安装
pinpoint pinpoint首页:https://github.com/naver/pinpoint , 截止目前为止pinpoint的最新版本为1.6.0。 安装环境及插件版本:centos6.5 + jdk1.8 + hadoop2.6.5 + hbase1.0.3 + tomcat7.0 hadoop安装 pin...
2016-05-21 11:27:03
428
原创 ngnix的平滑重启
在研发过程中,修改nginx的配置文件nginx.conf是很平常的事,需要重启nginx。如果我们直接reload是有一定风险的,我们可以通过发送系统信号给nginx主进程的方式来进行。 第一步:确认nginx配置文件的语法是否正确,否则nginx将不会加载新的配置文件。如果出现这样的信息说明配置文件是正确的。 第二步:平滑重启kill -HUP nginx进程号...
2016-05-20 10:22:31
177
原创 基于jenkins的持续集成
使用jenkins要实现目标:SVN内容变更之后,能够自动由SVN更新代码到持续集成服务器 , 或手动执行构建。在持续集成服务器,自动构建项目;构建完成之后,自动部署到服务器。可以查看每次构建的过程日志。构建和部署过程中失败 或 成功,需要发送邮件提醒。设置账号和密码,只有持续集成负责人能够进行构建。实现过程:部署jenkins。下载jenkins部署包,下...
2016-04-19 17:11:09
291
原创 基于maven的seajs打包
场景: 业务相关的js使用seajs基础库,项目打包部署时需要使用seajs的spm命令将业务js逐个进行打包。 为了避免新打包js文件的浏览器缓存,每次打包需要设置一个版本号文件夹,打包时将js文件打到版本号文件夹下。 项目使用maven构建。 因此,在使用maven命令打包执行,需要在配置文件中设置版本号和批量执行spm命令。...
2016-02-16 10:29:33
172
原创 seajs兼容ie8
场景:js等静态资源存储在七牛云服务器;使用seajs加载静态资源。存在问题:IE8对ajax跨域做了限制,在服务端不对跨域请求单独处理的情况下,在seajs中ajax无法获取到远程js文件的内容。解决:修改seajs-wrapper-debug文件,首先去七牛请求静态资源,如果请求失败,再由应用服务器加载静态资源。采用这种方式同时能够解决,七牛服务器因为欠费等其它问题down机的问题,...
2016-02-01 12:39:06
408
原创 Druid中sql解析
基于druid解析查询sql,在JDBC API基础上进行插件开发的时候需要。import com.alibaba.druid.sql.SQLUtils;import com.alibaba.druid.sql.ast.statement.SQLSelect;import com.alibaba.druid.sql.ast.statement.SQLSelectItem;imp...
2016-01-19 11:03:43
1936
原创 springmvc集成swagger-ui
引入基于maven的swagger依赖<dependency> <groupId>com.mangofactory</groupId> <artifactId>swagger-springmvc</artifactId> <version>...
2016-01-06 09:00:03
243
原创 dubbo方法调用的timeout设置
参考dubbo用户手册,方法调用的默认超时时间为1s,但是具体的超时时间受限于服务端方法性能、服务端个数、客户端的并发数等因素,所以超时时间需要根据不同的场景进行调试。基本步骤为:测试服务端的TPS,单位为 任务数或线程个数/S,即每秒能够处理的任务数。TPS能够表示出每秒能够处理的任务个数。根据客户端的并发量要求和服务端的服务能力设置超时时间。例如客户端并发量为R,单个服务端的...
2015-12-28 09:06:12
2107
原创 centos快速部署
场景:需要在N台服务器上,部署一个相同的项目包。目标:使用centos命令或脚本与远程机器交互,拷贝部署包、停止或启动servlet容器。工具:Expect :一个用来实现自动交互功能的软件套件(Expect [is a] software suite for automating interactive tools)。使用它系统管理员可以创建脚本用来实现对命令或程序提供输入,而这...
2015-12-01 17:23:46
184
原创 placeholder在不同浏览器下的兼容
原文:http://www.zhangxinxu.com/wordpress/?p=2169一、HTML5 placeholder相关的引言placeholder在英汉词典中解释成了“占位符”。要理解并不难,请看此场景:“咦?”您可能会疑问,“这不是就是狗狗树下撒尿尿”。确实,该场景可以较好的诠释placeholder“占位符”之意。我们不妨将placeholder来个临时拆分:pl...
2015-11-19 17:17:46
284
原创 数据库文件版本管理工具flyway
flyway 是一个敏捷工具,用于数据库的移植。采用 Java 开发,支持所有兼容 JDBC 的数据库。主要用于在你的应用版本不断升级的同时,升级你的数据库结构和里面的数据。官方网站:http://flywaydb.org/支持俩种模式迁徙:1、基于sql文件迁徙:http://flywaydb.org/documentation/migration/sql.html2、基...
2015-09-22 20:10:31
267
原创 nginx支持MP4模块
nginx的安装参考:http://lpyyn.iteye.com/blog/2224379nginx对MP4的支持模块使用Mod-H264-Streaming-Nginx-Version2 ,可以在其官网下载:http://h264.code-shop.com/trac/wiki/Mod-H264-Streaming-Nginx-Version2安装步骤:下载http://h...
2015-09-07 08:54:52
5135
原创 redis HA策略
Redis提供的HA策略包括master-slave配置和sentinel策略。其中master-slave能够进行主从配置,redis支持异步的主从配置,性能不是问题,参考:http://www.redis.cn/topics/replication.html 。sentinel策略,也称为哨兵模式,可以理解为单独开了一个线程监控master-slave的运行状态,在mast...
2015-08-26 16:50:17
380
原创 redis主从配置
原文:http://www.cnblogs.com/zhaoguihua/p/redis-004.htmlRedis 的主从复制配置非常容易,但我们先来了解一下它的一些特性。redis 使用异步复制。从 redis 2.8 开始,slave 也会周期性的告诉 master 现在的数据量。可能只是个机制,用途应该不大。一个 master 可以拥有多个 slave,废话,这也是业界...
2015-08-25 10:59:20
84
原创 redis集群
redis集群安装参考:http://www.cnblogs.com/zhaoguihua/p/redis-005.html集群技术是构建高性能网站架构的重要手段,试想在网站承受高并发访问压力的同时,还需要从海量数据中查询出满足条件的数据,并快速响应,我们必然想到的是将数据进行切片,把数据根据某种规则放入多个不同的服务器节点,来降低单节点服务器的压力。上一篇我们讲到了 Redis 的主...
2015-08-25 10:52:54
101
原创 JS类以面向对象的方式继承
场景:项目环境中使用了SeaJS做模块化加载,每个js文件是相对独立的一个模块,模块之间的耦合度降低了,但是它没有提供JS类之间的继承机制。怎样通过类继承的方式打通类之间的关联,充分使用对象对象带来的好处呢,可以参考motools( http://mootools.net/ )提供的类继承机制。 motools在提供了类继承机制的同时也扩展了很多JS底层的类和方法...
2015-08-20 09:09:10
119
原创 基于seajs的前端开发
使用seajs主要解决了现有项目前端开发中的如下问题:js文件依赖,js文件的加载顺序。js命名空间。js模块化开发。业务模块的版本问题。性能提升,主要是网络传输。js文件跨域异步加载问题。js、css文件打包和压缩合并。简单的做了一个demo,项目使用maven构造,结构如下: webapp/resources:静态资源目录webapp/reso...
2015-08-14 11:00:39
217
原创 spm安装
安装nodejs 由官网下载nodejs源码包,目前版本是0.12.7,在centos上编译并安装。在安装完nodejs之后默认已经将npm安装了。配置nodejs的环境变量,在/etc/profile.d创建nodejs.sh,并添加nodejs的安装路径到PATH中。NODEJS_HOME=/usr/local/nodejsexport PATH=$PATH:$NO...
2015-08-04 10:24:48
2435
原创 基于redis的二级缓存
以下内容是在github上项目hibernate-redis(https://github.com/debop/hibernate-redis)的基础上做的优化,优化的版本号为1.6.1。关于二级缓存的配置方法和使用方法可以参考github上的项目。 在hibernate二级缓存需要实现的主要接口有:RegionFactory、Region、RegionAcc...
2015-07-29 08:46:06
4107
原创 linux软连接和硬链接
1.Linux链接概念Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link)。默认情况下,ln命令产生硬链接。【硬连接】硬连接指通过索引节点来进行连接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在Linux中,多个文件名指向同一索引节点是存在的。一般这种...
2015-07-15 13:55:53
131
原创 nginx集群和动静分离初步配置
nginx安装 参考《Nginx教程从入门到精通》中的nginx安装说明,为了能够方便nginx中location的调试,最好安装nginx-echo模块,添加nginx-echo模块方式如下: 1. 首先下载nginx-echo模块源码:https://github.com/agentzh/echo-nginx-module/tags ...
2015-07-05 12:51:38
267
原创 centos定时任务
原文:http://li200429.iteye.com/blog/1608758 1.Cron的启动与关闭由于Cron是Linux的内置服务,可以用以下的方法启动.关闭这个服务:/sbin/service crond start //启动服务/sbin/service crond stop //关闭服务/sbin/service cro...
2015-06-12 15:42:20
203
原创 JMX监控centos下的tomcat
通过JMX远程监控tomcat的堆内存 、线程、CPU等信息,便于并发参数调试。环境: Tomcat部署容器:Centos Tomcat版本:7.0 JDK版本:1.7-x64Tomcat配置: 1.将catalina-jmx-remote.jar放到tomcat目录的lib文件夹下。 2....
2015-06-07 16:28:50
256
原创 powerdesigner数据库设计技巧
1. 逻辑视图转物理视图时,转换逻辑视图和物理视图对应的code值。对于一个数据库管理系统,不论大小,其实体名和属性名称都是有限的。对于大型应用系统更是如此。在PowerDesigner 中对实体建PDM时,如果每一个CODE都手工输入一个名称,不但累而且一旦变更,将要多处改变,不太合理。可以针对系统中设写一个CODE NAME的 CSV 文件,即naming code 文件,使用其命名空间的...
2015-05-31 11:25:14
240
原创 由spring的@Transactional继承机制探索@Inherited作用域
原文->http://elf8848.iteye.com/blog/1621392 子类可以继承到父类上的注解吗?-----------------------------------------------------------------我们知道在编写自定义注解时,可以通过指定@Inherited注解,指明自定义注解是否可以被继承。但实现情况又可细分为多种。 ...
2015-04-23 13:38:51
935
原创 集群session共享机制
现在集群中使用的Session共享机制有两种,分别是session复制和session粘性。Session复制 该种方式下,负载均衡器会根据各个node的状态,把每个request进行分发,使用这样的测试,必须在多个node之间复制用户的session,实时保持整个集群中用户的状态同步。其中jboss的实现原理是使用拦截器,根据用户的同步策略拦截requ...
2015-04-06 12:16:31
246
原创 redis安装
Centos是minimal版本,安装redis的过程 和 遇到的问题记录如下:下载:在Redis中文官方网站下载最新版本redis,http://www.redis.cn/在本地环境中编译和安装redis。tar -xf redis-3.0.0.star.gz //解压redis-3.0.0.tar.gzcd redis-3.0.0 //进入解压后的redis目录make te...
2015-04-05 10:42:29
84
原创 uploadify3.2.1初始化基于当前页面和uploadify.swf发送多次请求
uploadify3.2.1初始化基于当前页面和uploadify.swf发送多次请求,纠结了很久,以为是自己代码的问题,弄了半天还是uploadify的问题,苦于没有其他还用的web页面上传插件,还是查了很久解决了。 修复后的uploadify见附件。...
2015-03-30 18:36:20
215
原创 logback
参数配置整理配置实例:<?xml version="1.0" encoding="UTF-8"?><configuration> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <!-- en
2015-03-28 09:57:23
148
原创 java注解用法
元数据的作用如果要对于元数据的作用进行分类,目前还没有明确的定义,不过我们可以根据它所起的作用,大致可分为三类:l 编写文档:通过代码里标识的元数据生成文档。l 代码分析:通过代码里标识的元数据对代码进行分析。l 编译检查:通过代码里标识的元数据让编译器能实现基本的编译检查。 基本内置注释 @Override注释...
2015-03-24 11:28:11
120
原创 spring基于注解的AOP配置
原文->http://blog.csdn.net/xiaoxian8023/article/details/17285809依旧采用的jdk代理,接口和实现类代码请参考上篇博文。主要是将Aspect类分享一下: [java] view plaincopy package com.tgb.aop; import org.aspectj....
2015-03-10 15:52:18
159
原创 spring数据源动态切换
原文->http://exceptioneye.iteye.com/blog/1698064 在Spring 2.0.1中引入了AbstractRoutingDataSource, 该类充当了DataSource的路由中介, 能有在运行时, 根据某种key值来动态切换到真正的DataSource上。 Spring动态配置多数据源,即在大型应用中对数据进...
2015-03-10 15:50:17
125
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人