持续集成之②:整合jenkins与代码质量管理平台Sonar并实现构建失败邮件通知 一:Sonar是什么?Sonar 是一个用于代码质量管理的开放平台,通过插件机制,Sonar 可以集成不同的测试工具,代码分析工具,以及持续集成工具.与持续集成工具(例如 Hudson/Jenkins 等)不同,Sonar 并不是简单地把不同的代码检查工具结果(例如FindBugs,PMD等)直接显示在Web页面上,而是通过不同的插件对这些结果进行再加工处理,通过量化的方式度量代码质量的变化,从而可以方便地对不同…
文章目录 持续集成管理平台介绍 持续集成介绍 持续集成管理平台的组成 持续集成实践介绍 即将学习 SVN版本管理系统的安装 安装 Subversion + Apache 安装 jsvnadmin 简单介绍(可以不看) 安装jsvnadmin 持续集成管理平台介绍 持续集成介绍 持续集成是一种软件开发实践 团队开发成员经常集成他们的工作,每次集成都通过自动化的构建 (包括自动化编译.测试.发布)来验证,从而尽快地发现集成错误. 持续集成的价值.要素.原则- 请自行找资料了解- 谈谈我对持续集成的好…
文章目录 安装Hudson 使用Hudson tips:自动化部署 附录:两个脚本 安装Hudson IP:192.168.4.221 8G 内存(Hudson 多个工程在同时构建的情况下比较耗内存) 环境:CentOS 6.6.JDK7 Hudson 不需要用到数据库,Hudson 只是一个持续集成服务器(持续集成工具),要想搭建一套完整的持续集成管理平台, 还需要用到前面课程中所讲到的 SVN.Maven.Sonar 等工具,按需求整合则可. 上图可以看出hudson对项目进行构建,构建完成…
文章目录 部署(单节点) 一.前期准备 二.对部署环境进行规划 创建数据库 调整公共配置文件 应用部署前期准备 部署服务 部署 Web 应用 部署定时任务 一. 工程结构 第三方支付系统架构 pay-common-parent 项目的 Maven 父配置工程 pay-common 公共工程,所有项目均可引用 pay-common-config 公共配置工程 pay-common-core 公共核心工程,service 工程共用 pay-common-web 公共 web 工程,web 工程共用…
文章目录 SonarQube的介绍 SonarQube的安装 安装简介 详细安装过程 详细使用过程 SonarQube的介绍 SonarQube是一个管理代码质量的开放平台. 可以从七个维度检测代码质量(为什么要用SonarQube): (1) 复杂度分布(complexity):代码复杂度过高将难以理解.难以维护 (2) 重复代码(duplications):程序中包含大量复制粘贴的代码是质量低下的表现 (3) 单元测试(unit tests):统计并展示单元测试覆盖率 (4) 编码规范(co…
文章目录 改造思路 样例工程:传统的单工程项目(edu-demo) 模型结构 思路 改成dubbo调用方式后的工程结构 部署环境规划 改造 愚公移山 迁移包 迁移页面: 迁移配置相关 新项目的主要作用 涂涂改改 公布服务 Dubbo架构说明 改造思路 样例工程:传统的单工程项目(edu-demo) 模型结构 思路 改成dubbo调用方式后的工程结构 部署环境规划 改造 愚公移山 迁移包 迁移页面: 迁移配置相关 新项目的主要作用 涂涂改改 公布服务 Dubbo架构说明 注册中心安装(Zookee…
文章目录 ZooKeeper集群的安装.配置.高可用测试 ZooKeeper 与 Dubbo 服务集群架构图 1. 修改操作系统的/etc/hosts 文件,添加 IP 与主机名映射: 2. 下载或上传 zookeeper-3.4.6.tar.gz 到/home/wusc/zookeeper 目录: 3. 解压 zookeeper 安装包,并按节点号对 zookeeper 目录重命名: 4. 在各 zookeeper 节点目录下创建以下目录: 5. 将 zookeeper/node-0X/con…
文章目录 Redis集群的安装(Redis3+CentOS) 参考文档 Redis 集群介绍.特性.规范等(可看提供的参考文档+视频解说) Redis 集群的安装(Redis3.0.3 + CentOS6.6_x64) 接下来准备创建集群 集群简单测试 将 Redis 配置成服务 其它供参考资料 Redis集群的高可用测试(含Jedis客户端的使用) Redis 集群的使用测试(Jedis 客户端的使用) Redis 集群的高可用性测试 Redis集群的扩展测试 一.安装新的 Redis 节点,…
文章目录 介绍 Maven私有库和本地库的安装与配置 Nexus安装 Nexus 配置(登录后) 介绍 如果构建的Maven项目本地仓库没有对应的依赖包,那么就会去Nexus私服去下载, 那么如果Nexus私服也没有此依赖包,就回去远程中央仓库下载依赖, Nexus私服下载成功后再下载至本地Maven库供项目引用 myeclipse中集成了maven,如果它连接的是中央仓库,不是私有库,如果没有配置本地库,下载的依赖默认是在~/.me/repository文件加下面,如果配置了本地库,就会下载到…
文章目录 MyCat在MySQL主从复制的基础上实现读写分离 一.环境 二.依赖课程 三.MyCat 介绍 ( MyCat 官网:http://mycat.org.cn/ ) 四.MyCat 的安装 五.配置 MyCat MyCat 集群部署(HAProxy + MyCat) 一.本节课程的依赖课程 二.软件版本 三.部署环境规划 四.MyCat 集群部署架构图如下: 五.MyCat 节点 2 的部署 六.配置 MyCat 状态检查服务(在 MyCat 节点主机上配置) 七.HAProxy 介绍…
文章目录 ActiveMQ的安装与使用(单节点) 安装(单节点) 使用 目录结构 edu-common-parent edu-demo-mqproducer edu-demo-mqconsumer 测试 Redis的安装与使用(单节点) 安装(单节点) 使用 FastDFS分布式文件系统的安装与使用(单节点) FastDFS介绍 安装(单节点) 使用 FastDFS配置文件详解 ActiveMQ的安装与使用(单节点) 安装(单节点) IP:192.168.4.101 环境:CentOS 6.6.…
文章目录 Dubbo管理控制台 1.Dubbo管理控制台的主要作用: 2.管理控制台主要包含: 3.管理控制台版本: 安装 Dubbo 管理控制台 使用Maven构建Dubbo服务的可执行jar包 Dubbo服务的运行方式: 1.使用Servlet容器运行(Tomcat.Jetty等)----不可取 2.自建Main方法类来运行(Spring容器) ----不建议(本地调试可用) 3.使用Dubbo框架提供的Main方法类来运行(Spring容器)----建议使用 maven配置文件 在Linu…
文章目录 1.单节点访问http://192.168.1.61:8082/pay-web-boss/: 2.增加多一个消费者节点:192.168.1.62,以同样的方式部署pay-web-boss工程. 3.在Keepalived+Nginx组成的反向代理集群中的两个节点同步增加如下两处配置: 4.重启Nginx 5.通过反向代理集群的VIP访问pay-web-boss时,有时可以登录成功,但有时又会提示验证码错误,原因就是Session没有同步. 6.下载 7.下载 8.添加Tomcat的环境…
文章目录 FastDFS集群的安装 FastDFS 介绍(参考:http://www.oschina.net/p/fastdfs) FastDFS 上传文件交互过程: FastDFS 下载文件交互过程: FastDFS 集群规划: 一.FastDFS 的安装(所有跟踪服务器和存储服务器均执行如下操作) 二.配置 FastDFS 跟踪器 Tracker (192.168.1.131 .192.168.1.132) 三.配置 FastDFS 存储 ( 192.168.1.135 .192.168.1…
文章目录 Keepalived+Nginx实现高可用Web负载均衡 Keepalived+Nginx实现高可用Web负载均衡 高可用架构篇 Keepalived + Nginx 实现高可用 Web 负载均衡 一.场景需求(请看视频解说): 虽然实现了tomcat的高可用,可是nginx是单点的,nginx没有实现高可用 二.Keepalived 简要介绍 Keepalived 是一种高性能的服务器高可用或热备解决方案,Keepalived 可以用来防止服务器单点故障的发生,通过配合 Nginx…
文章目录 Dubbo消费端直连提供者(开发调试) Dubbo服务只订阅(开发调试) Dubbo服务只注册 Dubbo消费端直连提供者(开发调试) Dubbo 官方文档: 用户指南 >> 示例 >> 直连提供者 注意点: 1. 直连提供者只需要在消费端设置,url指向本地的服务地址,如此便可以直接调用本地服务. 通过打断点本地调试,客户端可能回报错:"服务异常,异常代码:2:如有疑问:请联系管理员!",是正常的,因为我们断点拦截了,dubbo请求超时. 2. ${…
文章目录 Dubbo服务启动依赖检查 Dubbo负载均衡策略 Dubbo线程模型(结合Linux线程数限制配置的实战分享) 实战经验分享( ** 属用性能调优**): Dubbo服务启动依赖检查 Dubbo 官方文档: 用户指南 >> 示例 >> 启动时检查 举个…
文章目录 dubbo服务集群 Dubbo服务集群部署 Dubbo服务集群容错配置--集群容错模式 1.Failover Cluster 失败自动切换,当出现失败,重试其它服务器.`(缺省) 通常用于读操作,但重试会带来更长延迟. 可通过retries="2"来设置重试次数(不含第一次).默认是retries="2" 2.Failfast Cluster 3.Failsafe Cluster 4.Failback Cluster 5.Forking Cluster D…
文章目录 架构简单介绍 消息中间件在分布式系统中的作用介绍 消息中间件的定义 消息中间件的作用 应用场景 JMS(Java Message Service) JMS消息模型 实现了JMS规范的消息中间件产品 架构简单介绍 结合应用架构,实现分布式系统架构所需的第三方应用和中间件: (1) 消息队列 ----------- ActiveMQ (2) 分布式缓存 --------- Redis (3) 分布式文件系统 ---- FastDFS (4) 反向代理服务器 ---- Nginx.Apach…
文章目录 MySQL 源码编译安装(CentOS-6.6+MySQL-5.6) 一.服务器配置: 二.源码安装 MySQL5.6.26: MySQL主从复制的配置 环境 依赖课程 MySQL 主从复制官方文档 MySQL 主从复制的方式 MySQL 主从复制(也称 A/B 复制)的原理 主从配置的简要步骤 单向主从环境(也称 MySQL A/B 复制)的搭建 MySQL 主从数据同步延迟问题的调优 MySQL 源码编译安装(CentOS-6.6+MySQL-5.6) 部署环境 操作系统:Cent…
文章目录 ActiveMQ 高可用集群安装.配置.高可用测试( ZooKeeper + LevelDB) ActiveMQ高可用+负载均衡集群的安装.配置.高可用测试 准备 正式开始 ActiveMQ 高可用集群安装.配置.高可用测试( ZooKeeper + LevelDB) (ZooKeeper + LevelDB) 从 ActiveMQ 5.9 开始,ActiveMQ 的集群实现方式取消了传统的 Master-Slave 方式,增加了基于 ZooKeeper + LevelDB 的 Mas…
以下内容是学习<MySQL数据库应用 从入门到精通>过程中总结的一些内容提要,供以后自己复现使用. 一:数据库查看所有数据库: SHOW DATABASES创建数据库: CREATE DATABSE database_name切换数据库: USE database_name删除数据库: DROP DATABASE database_name 二:存储引擎查看MYSQL支持的引擎: SHOW ENGINES \G (\G 使显示格式更好看)查看所支持的存储引擎: SHOW VARIABLES L…
书名:<Oracle从入门到精通:视频实战版>秦靖.刘存勇等编著 第4章 SQL基础 1.SQL语言分类 数据定义语言 --- DDL,Data Definition Language 数据操纵语言 --- DML,Data Manipulation Language 数据查询语言 --- DQL,Data Query Language 数据控制语言 --- DCL,Data Control Language 2.常用数据类型 字符型 --- varchar2.char.long 数字型 --…
样例视频教程:http://www.roncoo.com/course/view/85d6008fe77c4199b0cdd2885eaeee53 一.SonarQube的配置(前提,先用admin用户登录) 1. 安装中文汉化包: Setting >> Update Center >> Available Plugins >> LOCALIZATION >> Chinese Pack >> Install 安装完汉化包之后需要重启SonarQu…
视频教程:http://www.roncoo.com/course/view/85d6008fe77c4199b0cdd2885eaeee53 IP:192.168.4.221 环境:CentOS 6.6.JDK7.MySQL5.1 .SonarQube-4.5.4(LTS) root用户操作 准备工作:已安装JDK7并配置好了环境变量 1 .安装MySQL5.1 (可参考前面SVN管理平台的MySQL安装步骤,如果已安装则无需安装) # rpm -qa | grep mysql      ##…
1.SonarQube的介绍 SonarQube是一个管理代码质量的开放平台. 可以从七个维度检测代码质量(为什么要用SonarQube): (1)复杂度分布(complexity):代码复杂度过高将难以理解.难以维护(2)重复代码(duplications):程序中包含大量复制粘贴的代码是质量低下的表现 (3)单元测试(unit tests):统计并展示单元测试覆盖率 (4)编码规范(coding rules):通过Findbugs,PMD,CheckStyle等规范代码编写 (5)注释(co…
好久没有写博客了,今天抽空继续写MEF系列的文章.有园友提出这种系列的文章要做个目录,看起来方便,所以就抽空做了一个,放到每篇文章的最后. 前面四篇讲了MEF的基础知识,学完了前四篇,MEF中比较常用的基本已经讲完了,相信大家已经能看出MEF所带来的便利了.今天就介绍一些MEF中一些较为不常用的东西,也就是大家口中的所谓的比较高级的用法. 前面讲的导出都是在每个类上面添加Export注解,实现导出的,那么有没有一种比较简便的方法呢?答案是有的,就是在接口上面写注解,这样只要实现了这个接口的类都会…
Qt Model/View 学习笔记 (五) View 类 概念 在model/view架构中,view从model中获得数据项然后显示给用户.数据显示的方式不必与model提供的表示方式相同,可以与底层存储数据项的数据结构完全不同. 内容与显式的分离是通过由QAbstractItemModel提供的标准模型接口,由QAsbstractItemview提供的标准视图接口共同实现的.普遍使用model index来表示数据项.view负责管理从model中读取的数据的外观布局. 它们自己可以去渲染…
java之jvm学习笔记五(实践写自己的类装载器) 课程源码:http://download.csdn.net/detail/yfqnihao/4866501 前面第三和第四节我们一直在强调一句话,类装载器和安全管理器是可以被动态扩展的,或者说,他们是可以由用户自己定制的,今天我们就是动手试试,怎么做这部分的实践,当然,在阅读本篇之前,至少要阅读过笔记三. 下面我们先来动态扩展一个类装载器,当然这只是一个比较小的demo,旨在让大家有个比较形象的概念. 第一步,首先定义自己的类装载器,从Clas…
中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Programming Second Edition学习笔记(五) indigo computer vision FireWire IEEE1394 cameras无USB cameras--sudo apt-get install ros-indigo-usb-cam--roslaunch chapt…