- 博客(65)
- 收藏
- 关注
原创 Git+Jenkins+Kubernetes+Harbor+consul+SpringCloud
目的:学习、实践K8S 各组件介绍:1. git 无2. Harbor当镜像仓库,如果你的k8s master slave在一台机器上则不用搭建3. jenkins 做CI CD,从GIT拉取代码,打包,生成docker镜像、推送Harbor仓库,然后deploy服务到k8s4. consul 用来做服务发现注册中心和配置中心5. springcloud 做2个...
2017-12-30 17:29:52 822
原创 Docker Swarm 和zookeeper整合
网上都是和docker官方结合做服务发现的,其实docker里面doc就说不推荐那么玩了。0. 软件清单zookeeper 192.168.6.62host1 192.168.160.132host2 192.168.160.133host3(manager) 192.168.160.134 每一台都设置 /...
2016-03-29 13:26:58 683
Docker1.9 overlay 新特性
1. 安装好 Swarm 2. 修改 守护进程参数 (红色地方,每台机器设置不同)DOCKER_OPTS=" --label name=server-1 -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock --cluster-store zk://192.168.6.62/store --cluster-advertise e...
2016-03-29 13:24:06 212
原创 Curator Service discovery
Service Discovery 服务发现,我以前不是很明白zookeeper怎么做集群,只知道注册啥的,突然有一天悟了,不得不佩服一套文件系统可以变化出很多伟大的应用。说说思路。 场景:提供一个分布式Restful 服务让客户端去调用,支持动态加减机器。 分析:server端并不复杂,启动webserver后,暴露http://url:8088/rs/xx 出去即可,那...
2014-04-25 13:48:52 239
原创 Curator Barrier
分布式Barrier,直接看代码好了:package curator.barrier;import java.util.ArrayList;import java.util.List;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;import or...
2014-03-03 11:34:28 98
原创 Curator counters
这个比较好理解,分布式数字,类似AtomicInteger系列,Curator有2个实现:第一个:package curator.counters;import org.apache.curator.RetryPolicy;import org.apache.curator.framework.CuratorFramework;import org.apache.cura...
2014-03-03 11:32:57 112
原创 Curator selector
zookeeper最经典的用法,选举。Curator的实现有2个种:LeaderLatch: 这种是有阻塞的,就是大家一起上,谁先上了,就一直阻塞着,直到方法执行完成。如果执行结束,那么其他的兄弟就选一个出来。我觉得这种适合主备,比如开2 个 job,一个挂了另一个就上。代码,这种代码最好是开2个eclipse看效果,顺序打开,看效果,再领悟:package cura...
2014-03-03 11:30:01 119
原创 Curator lock
Curator 提供的分布式锁用法,很简单: package curator.lock;import org.apache.curator.RetryPolicy;import org.apache.curator.framework.CuratorFramework;import org.apache.curator.framework.CuratorFramewo...
2014-03-03 11:21:34 198
原创 Curator Framework
Framework 比较简单,就是一些CRUD,Watch :package curator.framework;import java.util.List;import org.apache.curator.RetryPolicy;import org.apache.curator.framework.CuratorFramework;import org.apac...
2014-03-03 11:20:38 204
zookeeper session过期 Curator
zookeeper 中 session 过期解释: 当client 和 server 连接后,不是100%保证一直可以连上的。比如网络问题。那么client需要重连,这种机制自己实现比较复杂,还在有Curator客户端帮我们解决了,只需要在连接后注册一个监听器就可以了。模拟服务端线路不通可以开启防火墙方法,或者,开启81端口:iptables -I INPUT -i eth0 ...
2014-02-19 18:30:00 435
原创 Python启动、停止脚本
#!/usr/bin/python# -*- coding: UTF-8 -*-import platform,osimport timeimport subprocessimport sysimport ctypesdef get_sysinfo(): sys = platform.system() return os.getpid(),sy...
2013-09-18 14:22:14 1317
原创 IM解决方案
曾今做过web im ,总结下目前我所了解到的web im解决方案。做 web im ,有2个难题,一个是http长链接,一个是服务端,互相搭配起来也很多,比如: 1.pushlet + map pushlet基于事件模式的,是个js库,这个我架了个demo,感觉深入比较复杂,当时略过。服务端就是自己搞个线程安全的map处理业务逻辑,主要是发消息,所有在线人员 2. dwr...
2013-07-18 17:31:34 449
原创 记录一次线上慢查询解决
今天早上公司数据库服务器top查看,cpu 99.8% load average 123,非常严重,首先想到的是mysql肯定是死锁了,因为我入职不久,对很多设计不是很清楚,也不知道是哪张表,翻阅文章后是如下解决的: 查询比较久的事务SELECT * FROM INFORMATION_SCHEMA.INNODB_TRX发现sql SELECT EndDate FROM ...
2013-06-18 10:15:06 189
原创 maven-resources-plugin 导致 编译后文件丢失问题
maven-resources-plugin 2.6 有个奇怪的现象,project-clean的时候,会导致src/test/resources下面的资源文件,编译后在 target/test-classes下面没有,后来试验了几个空项目,都有这样的问题,换成2.5就好了 。也和 maven.test.skip参数有关系,如果采用默认值,不会有此问题,当设置为 true的时候,会出现。...
2013-05-04 17:07:19 521
原创 maven-antrun-plugin中无法调用 jsch shell target
将Maven项目的一键部署从原来的http上传改为:compile的时候连接linux,关闭tomcat,删除logs、work,再启动tomcat,最后打包部署。考虑了采用maven-antrun-plugin插件,但是开始一直报错,找不到jsch这些jar,但是单独运行build.xml又是好的。后来干脆直接在build.xml里面引入jar了,解决问题了,配置文件如下: P...
2013-04-27 14:23:54 271
原创 Redis 主从安装、备份
1.安装(不是重点)wget http://redis.googlecode.com/files/redis-2.6.7.tar.gztar zxvf redis-2.6.7.tar.gzcd redis-2.6.7make redis-server:Redis服务器的daemon启动程序redis-cli:Redis命令行操作工具。当然,你也可以用telne...
2013-04-16 14:32:40 102
原创 HAProxy安装
wget http://haproxy.1wt.eu/download/1.4/src/haproxy-1.4.9.tar.gz make TARGET=linux26 PREFIX=/usr/local/haproxy make install PREFIX=/usr/local/haproxy ./sbin/haproxy -f haproxy.cfg./h...
2013-04-16 14:21:45 99
原创 Keepalived 部署
keepalived在线上发现的一些问题:虚拟IP(VIP)最好在同一网段 ./configure --prefix=/usr/local/keepalived --with-kernel-dir=/usr/src/kernels/2.6.32-279.el6.x86_64/ cp /usr/local/keepalived/sbin/keepalived /usr/...
2013-04-02 20:40:44 127
原创 为什么使用Maven?
前言:我学的第一个项目构建工具是ANT,但是在项目开发中并没有被使用,那时呆的公司完全作坊型的,直接用MyEclipse打包的。后来在华为做项目的时候里面有一整套CI平台,那是第一次感受到构建之美。看过网上很多文章都是copy的,我很想站在新手基础上说说为什么要使用Maven。 1.我现在使用MyEclipse工具,她帮我编译,打包,自动部署一直很方便,而且就这样用了几年了,难得这还...
2011-07-07 10:08:02 108
原创 Maven + Grails 配置
我用的 Maven3 JDK1.6,说明下,grails1.3.7的文档里是用的Maven2和JDK1.5的,但是影响不大,步骤: 1. 运行如下命令:mvn org.apache.maven.plugins:maven-archetype-plugin:2.0:generate -DarchetypeGroupId=org.grails -DarchetypeArtifactId=g...
2011-07-05 16:49:39 249
原创 Grails 复用查询条件并分页
看过几篇写grails分页的,大都把简单的东西搞复杂了,而且里面都没有对查询条件复用,在分页时,求count和list的时候where条件是一样的,好点的程序员都会把where条件复用一下,在grails里面肯定是利用闭包特性重复利用了,看看下面的代码就懂了~ def serach = { if (!params.max) params.max = 10 if (!params...
2011-07-04 11:16:28 282
在Grails下查看真实的SQL
以往我们都是在hibernate里面开启sql,在grails里面只需要在 DataSource.groovy 里面的一个dataSource加入一个logSql = true即可,但是这样加后发出的SQL是这样的 , insert into t_user values(?,?,?) 看不到 ? 里面的值 如果我想看到里面真实的值,即:insert into t_user v...
2011-07-04 11:02:14 165
原创 CI样板DEMO - mybatis
私人用的,顺便学习下mybaits,里面几乎涵盖了CI大部分用到的东东,亮点:POM.XML贴下报告,嘿嘿,代码见附件。 1. mvn cobertura 2. Hudson 里面的效果 持续集成真好玩,能让项目质量高 :)...
2011-05-21 14:01:40 118
原创 Maven-Nexus-Jenkins-Sonar-JIRA
原来做华为的项目,里面用的自己的一套CI,主要依靠ANT,比较凶残。后来做的项目都没华为的规范,自己没事在网上找到有这么一套开源的东西,灰常不错,记录下。 自己整理滴一个图,整体的组织架构 其他后续。。...
2011-05-20 20:25:49 116
原创 resolve maven [Request to merge when 'filtering' is not identical]. issue
1:mvn archetype:generate -B -DarchetypeGroupId=org.appfuse.archetypes -DarchetypeArtifactId=appfuse-basic-struts-archetype -DarchetypeVersion=2.1.0 -DgroupId=com.mycompany -DartifactId=myproject -Da...
2011-04-02 19:42:03 256
原创 SpringSide_5技术分析_查询参数封装(亮点,高亮)
待,查看mini-web里面的UserDao 一个方法都不写CRUD+分页完了,重点PropertyFilter.javaHibernateDAO.java//-- 属性过滤条件(PropertyFilter)查询函数 --//
2011-03-26 00:35:36 130
原创 SpringSide_2技术分析_Velocity创建动态SQL
这里主要介绍SpringSide使用Velocity+Spring创建动态SQL,有点类似ibatis参考文件1. showcase org.springside.examples.showcase.common.dao.UserJdbcDao类里面的 属性 private String searchUserSql; 2. showcase applicationCont...
2011-03-26 00:27:40 230
原创 SpringSide_1技术分析_整合
SpringSide出自白衣之手,里面用的是最潮的技术,而且对框架再次封装。可以说是一个最佳实践。我个人从里面学到了不少知识,写此博客记录下。再次感谢江南白衣无私奉献!!好了,废话不多说了,开始。 1. 整合技术之项目管理 Maven SpringSide采用Maven+Nexus管理,也集成了ANT任务,先说他的Maven管理 查看 parent 文件夹里面的POM....
2011-03-26 00:16:58 107
原创 java.lang.NoClassDefFoundError: javax/mail/Message
正在搞james这个邮件服务器,写了个邮件账户管理的类,在eclipse 里用一个test函数测试没有问题,但部署到tomcat后总是报java.lang.NoClassDefFoundError: javax/mail/Message的错误。后来从网上下载了一个activation.jar 和 mail.jar 两个包导入tomcat的\shared\lib目录后,又出现了新的错误,ja...
2011-01-21 02:06:26 113
原创 解决开发中Win Linux差别(持续更新)
1 目录分隔符 Winxp “\” Linux “/” 解决办法 采用 File.separator web目录 request.getSession().getServletContext().getRealPath("/") 数据库中图片目录用“/” serverInfo_icon/icon26.gif2 编码问题 ...
2011-01-11 10:57:08 91
ibatis中调用存储过程
<!-- param_5 --><parameterMap id="queryChar_spcall_param" class="java.util.HashMap"> <parameter property="IBEGINTIME" javaType="java.lang.String" jdbcType="VARCHAR"
2010-12-26 15:08:27 110
ibatis中N+1问题
背景:User Role UserRole 3个表的关系我现在的需求:查找出所有用户,并且把他的角色也显示出来一个用户可以有多个角色,那么User: id,name, Role1.User ResultMap<!-- 注意groupBy属性 --><resultMap id="user-result-map" class="com.mmblue.entity...
2010-12-26 15:03:25 106
原创 ibatis中如何优化SQL
1. 杜绝SELECT *表连接时,绝不允许写select * ,否则按照编码错误Bug处理. 单表查询,一般情况下可以使用select *,但以下几种情况禁用: a、表中包含lob字段(BLOB、CLOB、LONG、LONG RAW等)。 b、表中包含长度较大的字段,如varchar2(1000)以上的字段, 但该SQL实际上并不需要取出...
2010-12-26 14:46:42 226
原创 ibatis中动态SQL_SELECT(代码复用)
SQL中最复杂的还是查询了,IBATIS的动态SELECT和<include/>配合起来的确很猛,比如ORACLE中分页:select * from ( select rownum rn, t.* from ( select * from myivr_trole -- 真正的SQL语句 ) t where rownum <...
2010-12-26 14:30:03 399
原创 ibatis中动态SQL_delete
其实这个不是动态的,不过要写就把CRUD全写一边了,因为IBATIS很简单,就不放JAVA代码,直接上XML<delete id="delete_role_id" parameterClass="java.util.Map"> delete myivr_trole where ROLEID in <iterate open="(" close=")" conj...
2010-12-26 14:03:18 216
原创 ibatis中动态SQL_update
如何知道上一篇的动态INSERT的话,动态UPDATE就很简单了,直接上XML注意:如果<isNotEmpty>是写在一行的话,并且是第一个的话<isNotEmpty property="realName" prepend=","><![CDATA[ REALNAME = #realName# ]]></isNotEmpty>...
2010-12-26 13:45:42 423
原创 ibatis中动态SQL_insert
ibatis的动态SQL非常强大,记录一些细节的东西。1.正常的动态INSERT,即全部遍历一次,这种是通用的,如下: <insert id="addUser" parameterClass="com.mmblue.domain.User"> INSERT INTO USER ( <dynamic prepend=" "> <isNot...
2010-12-26 13:41:39 943
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人