自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

任何技能都是从模仿开始,逐步升华。

好的架构是进化而来的,好的产品是推广而来的。

  • 博客(577)
  • 资源 (68)
  • 问答 (3)
  • 收藏
  • 关注

转载 如何利用redis key过期事件实现过期提醒

redis自2.8.0之后版本提供Keyspace Notifications功能,允许客户订阅Pub / Sub频道,以便以某种方式接收影响Redis数据集的事件。 可能收到的事件的例子如下: 所有影响给定键的命令。 所有接收LPUSH操作的密钥。 所有密钥在数据库中过期0。因为 Redis 目前的订阅与发布功能采取的是发送即忘(fire and forget)策...

2018-05-02 18:42:07 35587 8

原创 Spring事务不生效问题汇总

在实际项目开发中,经常会由于配置错误或使用不当,导致spring事务管理不生效。

2017-06-03 15:03:27 3469

原创 Spring event应用

当我们在实现某些特定业务逻辑时,通常会通过发送事件的方式实现代码解耦,这也是观察者模式的一种体现。从spring 3.0.5为我们实现了用annotation实现event和eventListner。

2017-05-25 00:32:51 4077

原创 简易DNS服务器搭建,适用小型公司

dnsmasq是一个小巧且方便地用于配置DNS和DHCP的工具,适用于小型网络,相比bind和dhcpd,配置起来更简单。dnsmasq能够提供本地解析和外部dns服务器代理,通常将将其作为一个DNS中继代理。openstack就是采用的dnsmasq。

2017-05-22 22:55:24 12641

原创 使用shell通过微信公众号发送模板消息

如下通过shell脚本实现,通过微信公众号发送模板消息到个人微信号。1.配置微信公众号由于没有认证的公众号,只能通过自己申请的个人订阅号(可以自行申请),并到开发者工具中开通公众平台测试帐号实现该功能。

2017-05-05 23:10:51 7241 11

原创 MySQL使用规范备注

如下规范来源于58到家数据库30条军规解读和阿里巴巴JAVA开发手册,以及自己在实际项目应用汇总。1.基础规范1.必须使用InnoDB存储引擎支持事务、行级锁、并发性能更好、CPU及内存缓存页优化使得资源利用率更高。2.新库必须使用utf8mb4字符集utf8mb4是utf8的超集,emoji表情以及部分不常见汉字,MySQL 8.0.1以上默认使用utf8mb43.数

2017-05-05 22:33:17 1685

原创 RabbitMQ学习之Flow Control

当RabbitMQ发布消息速度快于消费速度或者系统资源不足时,RabbitMQ将降低或阻断发布消息速度,以免服务器资源饱满而宕机,可以通过rabbitmqctl和web管理页面查看连接的状态为flow,当服务器资源不足时,连接会被blocked。连接被流控后和正常使用没有什么区别,体现可网络带宽不足情况一样。这个流控不需要配置RabbitMQ默认处理流控。

2017-04-17 17:05:27 7568 2

原创 Spring Boot探路者之应用配置

spring boot支持properties和yaml两种配置格式,properties在spring项目中很常见,key value形式配置参数,而yaml 是一种通用的数据串行化格式,专门用来写配置文件的语言,比 JSON 格式方便,支持对象、数组、纯量三种数据结构。建议在spring boot项目中采用yaml方式,让配置结构更加清晰。

2017-04-09 22:20:19 1343

原创 Spring Boot探路者之helloworld

Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。

2017-04-09 20:35:18 1046

原创 Jenkins插件开发hellworld

jenkins本身提供了一套插件的管理机制,这些插件允许可插拨形式存在。jenkins插件虽然能提供很多种插件,但还是不能满足我们持续集成的需要,所以需要定制一些插件来支撑整个持续集成平台的运行。

2017-04-04 21:39:55 6087

原创 SonarQube静态代码分析实战

Sonar是一个用于代码质量管理的开源平台,用于管理源代码的质量,可以从七个维度检测代码质量,可以通过使用插件机制与 eclipse 和 JIRA 等其他外部工具集成,从而实现了对代码的质量的全面自动化分析和管理。支持包括java,C#,C/C++,PL/SQL,Cobol,JavaScrip,Groovy等二十几种编程语言的代码质量管理与检测。

2017-04-04 14:54:59 10252

原创 Jenkins集成findbugs插件静态代码分析

FindBugs 是一个静态分析工具,它检查类或者 JAR 文件,将字节码与一组缺陷模式进行对比以发现可能的问题。有了静态分析工具,就可以在不实际运行程序的情况对软件进行分析。不是通过分析类文件的形式或结构来确定程序的意图,而是通常使用 Visitor 模式来鉴别代码是否符合一些固定的规范。 官网:http://findbugs.sourceforge.net/ maven插件:http://g

2017-03-31 10:19:30 6940

原创 Jenkins分布式集群配置

Jenkins是一个开源项目,它提供了一个容易使用的持续集成系统,并且提供了大量的plugin满足各式的集成需求。通过配置jenkins分布式环境,将不同的任务下发到多台机器执行,提高jenkins处理能力。1.安装jenkins实验使用版本2.52.war,将部署到tomcat运行,具体安装步骤略。安装默认插件,启动好配置完管理员账号。2.配置集群系统管理,进入管理节点页面 节点列表:jen

2017-03-30 00:23:24 14788

原创 RabbitMQ学习之队列监控

对于RabbitMQ的监控,除了服务器基本信息(硬盘、CPU、内存、IO等)以及MQ的进程和端口,我们也可以通过请求url访问管理API监控其集群和队列的情况。在java api 3.6.0以后,channel接口为我们

2017-01-02 21:53:49 8979 1

原创 RabbitMQ学习之集群消息可靠性测试

之前介绍过关于消息发送和接收的可靠性:RabbitMQ学习之消息可靠性及特性 下面主要介绍一下集群环境下,rabbitmq实例宕机的情况下,消息的可靠性。验证rabbitmq版本【3.4.1】。 集群环境要求: 1.集群中至少有一台硬盘节点 2.加入集群中有一台内存节点,一台硬盘节点,需要先启动硬盘节点。单节点不能设置为内存节点 集群环境: 节点名称 节点类型 vm-129

2017-01-02 02:21:07 3385 3

原创 RabbitMQ学习之消息可靠性及特性

下面主要从队列、消息发送、消息接收方面了解消息传递过的一些可靠性处理。

2017-01-02 01:53:47 5116 7

原创 RabbitMQ学习之exchange总结

前面介绍了几类exchange的作用,这个总结一下: direct:消息会被推送至绑定键(binding key)和消息发布附带的选择键(routing key)完全匹配的队列。默认有”AMQP default”,它用一个空字符串表示,它是direct类型的exchange,任何发往这个exchange的消息都会被路由到routing key的名字对应的队列上,如果没有对应的队列,则消息会被丢弃。

2017-01-02 00:11:17 2756 8

原创 ActiveMQ消息的延时和定时投递

ActiveMQ对消息延时和定时投递做了很好的支持,其内部启动Scheduled来对该功能支持,也提供了一个封装的消息类型:org.apache.activemq.ScheduledMessage,只需要把几个描述消息定时调度方式的参数作为属性添加到消息,broker端的调度器就会按照我们想要的行为去处理消息。

2016-12-11 23:47:33 11647

原创 RabbitMQ学习之延时队列

在实际的业务中我们会遇见生产者产生的消息,不立即消费,而是延时一段时间在消费。RabbitMQ本身没有直接支持延迟队列功能,但是我们可以根据其特性Per-Queue Message TTL和 Dead Letter Exchanges实现延时队列。也可以通过改特性设置消息的优先级。

2016-12-11 20:13:04 10862 8

原创 Centos7安装RabbitMQ-3.6.6

之前通过源码编译的方式安装rabbitmq(http://blog.csdn.net/zhu_tianwei/article/details/40832185),安装麻烦,需要安装很多依赖,而且在版本升级后,按照之前安装会有写问题,下面我们通过centos的yum方式安装。1、安装erlang下载rpm仓库:wget http://packages.erlang-solutions.com

2016-12-11 16:07:55 5679

原创 java延时队列使用

在实际的业务中会遇到如下场景:1)过1分钟失败任务重试2)过1小时发送邮件等等,需要延时一段时间处理,在java的juc包中给我提供了DelayQueue延时队列处理,过一会该处理的事儿。DelayQueue,一个无界阻塞队列,只有在延迟期满时才能从中提取元素。该队列的头部是延迟期满后保存时间最长的Delayed元素。如果延迟都还没有期满,则队列没有头部,并且 poll 将返回 n

2016-12-10 00:51:51 12370 2

原创 MySQL数据库高可用性架构汇总

一、MHAMHA通过管理节点自动化主服务器故障转移,快速将从服务器晋级为主服务器(通常在10-30s),而不影响复制的一致性,适用于任何存储引擎。管理节点需要ssh链接myql服务器,高可用方面是一个相对成熟的解决方案。主要特性:1. 主服务器的自动监控和故障转移2. 交互式主服务器故障转移3. 非交互式的主故障转移4. 在线切换主从服务

2016-12-04 22:09:19 1983

原创 mysql高可用双主配置

1.环境配置master A  192.168.0.109master B  192.168.0.112都已安装完毕mysql 版本为5.7.122.复制配置ABserver-id=1server-id=2log-bin=mysql-master-bin

2016-12-04 22:04:45 2971

原创 mysql自带备份还原工具

mysql自带的mysqldump备份工具,将制定的数据库或表导出都一样的sql文件,以便备份或数据还原,但如果数据量很大,会耗费会很长时间,且锁表。对于大规模备份,考虑使用物理方法,如:mysqlbackup(适于InnoDB、MyISAM及其他表)、mysqlhotcopy(适于MyISAM表)、Xtrabackup(适于InnoDB及MyISAM表)、LVM(适于各类表)等。一、数据备份

2016-12-04 22:03:07 2158

原创 mysql在线将基于日志的复制和基于事务的复制互换

在mysql5.7之前,变更复制类型,需要重启master。基于事务的复制能够更好的保证数据的完整性。1.在线将基于日志的复制变更为基于事务的复制条件:1)集群中所有的服务器版本要高于5.7.62)集群中所有服务器的gtid_mode都设置为off处理步骤:(1) 主从上执行  set @@global.enforce_gtid_consistency=warn

2016-12-04 22:02:27 928

原创 mysql主从复制配置(基于GTID)

MySQL 5.6 的新特性之一,是加入了全局事务 ID (GTID) 来强化数据库的主备一致性,故障恢复,以及容错能力。GTID(Global Transaction Identifiers)是全局事务标识。当使用GTIDS时,在主上提交的每一个事务都会被识别和跟踪,并且运用到所有从MySQL,而且配置主从或者主从切换时不再需要指定 master_log_files和master_log_p

2016-12-04 22:01:38 1267

原创 mysql主从复制配置(基于日志点)

MySQL主从是基于binlog日志,所以在安装好数据库后就要开启binlog。这样好处是,一方面可以用binlog恢复数据库,另一方面可以为主从做准备。查看日志开启状态:show variables like 'log_bin';一、主从配置1.master[mysqld]server-id=1 #主从复制ID必须不一样log-bin=mysql-master-bin

2016-12-04 22:00:07 1794

原创 mysql多源复制

多源复制就是多个master复制,允许一个slave对应多个master;change master语法(参考:http://dev.mysql.com/doc/refman/5.7/en/change-master-to.html):CHANGE MASTER TO option [, option] ... [ channel_option ] option:

2016-12-04 21:56:08 3215

原创 mysql5.7新特性

一、MySQL服务功能增强1.数据库初始化方式变更mysql 5.7之前通过初始化脚本初始化:scripts/mysql_install_db --user=mysql\--datadir=/var/lib/mysql \--socket=/var/lib/mysql/mysql.sock \ --pid-file=/var/run/mysqld/mysqld.pid

2016-12-04 21:53:50 1604

原创 mysql复制基础

mysql支持单向、异步复制,复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器。mysql复制基于主服务器在二进制日志中跟踪所有对数据库的更改(更新、删除等等)。因此,要进行复制,必须在主服务器上启用二进制日志。每个从服务器从主服务器接收主服务器已经记录到其二进制日志的保存的更新。当一个从服务器连接主服务器时,它通知主服务器从服务器在日志中读取的最后一次成功更新的位置。从服务器

2016-12-04 21:49:37 536

原创 mysql实现读写分离中间件Amoeba

Amoeba(变形虫)项目,该开源框架于2008年 开始发布一款 Amoeba for Mysql软件。这个软件致力于MySQL的分布式数据库前端代理层,它主要在应用层访问MySQL的 时候充当SQL路由功能,专注于分布式数据库代理层(Database Proxy)开发。座落与 Client、DB Server(s)之间,对客户端透明。具有负载均衡、高可用性、SQL 过滤、读写分离、可路由相关的到

2016-12-04 21:42:58 2397

原创 mysql实现读写分离中间件MySQL Proxy

MySQL Proxy是一个处于你的client端和MySQL server端之间的简单程序,它可以监测、分析或改变它们的通信。它使用灵活,没有限制,常见的用途包括:负载平衡,故障、查询分析,查询过滤和修改等等。MySQL Proxy就是这么一个中间层代理,简单的说,MySQL Proxy就是一个连接池,负责将前台应用的连接请求转发给后台的数据库,并且通过使用lua脚本,可以实现复杂的连接控制

2016-12-04 21:41:23 2779

原创 mysql实现读写分离中间件Atlas

Atlas是由 Qihoo 360公司Web平台部基础架构团队开发维护的一个基于MySQL协议的数据中间层项目。它在MySQL官方推出的MySQL-Proxy 0.8.2版本的基础上,修改了大量bug,添加了很多功能特性。目前该项目在360公司内部得到了广泛应用,很多MySQL业务已经接入了Atlas平台,每天承载的读写请求数达几十亿条。同时,有超过50家公司在生产环境中部署了Atlas,超过80

2016-12-04 21:38:35 1287

转载 使用spring的动态路由实现数据库负载均衡

在spring2.0.1发布之前,各个项目中可能存在多种针对这种情况下的多数据源管理方式, 不过,spring2.0.1发布之后,引入了AbstractRoutingDataSource,可以通过集成org.springframework.jdbc.datasource.lookup.AbstractRoutingDataSource类,自定义动态数据源。配置如下: datasource-

2016-12-04 14:55:15 2200

原创 mysql实现读写分离自带java驱动

MySQL 数据库的读写分离和负载均衡一般是通过第三方软件来实现的。 也可以通过mysql驱动程序来实现,如com.mysql.jdbc.ReplicationDriver。官网网址:多主机连接配置1.主备配置2.负载连接配置3.主从复制链接配置4.高级负载和主备配置如下为java实现读写分离demo            mysql  

2016-12-04 14:48:51 3270

原创 mysql开启慢查询日志和profile

mysql慢查询日志对于跟踪有问题的查询非常有用,可以分析出当前程序里有很耗费资源的sql语句,以便后期跟踪优化。mysqld在语句执行完并且所有锁释放后记入慢查询日志。

2016-12-01 08:54:19 3112

原创 Centos7 yum安装mysql

1.安装最新版mysql从MySQL开发者网站下载Yum仓库文件,导入Yum库:http://dev.mysql.com/downloads/repo/yum/wget http://repo.mysql.com//mysql57-community-release-el6-8.noarch.rpm这里获取的是mysql 5.7.12安装yum 仓库列表:

2016-12-01 08:49:43 8156

转载 Mybatis Generator最完整配置详解

<!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN""http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"><!-- 可以用于加载配置项或者配置文件,在整个配置文件中就可以使用${pr

2016-12-01 08:41:00 564

原创 myql设置utf8mb4字符,使支持emoji 表情符号

Mysql5.5.3以上的版本才支持utf8mb4字符集。1.修改配置文件vi /etc/my.cnf增加如下配置-----------------------------------[client]default-character-set=utf8mb4[mysql]default-character-set=utf8mb4

2016-11-29 22:20:22 2182

转载 MySQL数据库性能优化之存储引擎选择

MySQL 的存储引擎可能是所有关系型数据库产品中最具有特色的了,不仅可以同时使用多种存储引擎,而且每种存储引擎和MySQL之间使用插件方式这种非常松的耦合关系。由于各存储引擎功能特性差异较大,这篇文章主要是介绍如何来选择合适的存储引擎来应对不同的业务场景。

2016-11-04 23:10:24 486

thrift-spring-http代码实例

本文借鉴spring对hessian的支持,实现spring对Thrift的支持。服务端主要使用了spring的HttpRequestHandler接口和RemoteExporter接口。HttpRequestHandler接口用于暴露http服务,这样就可以接受http的请求,这个如果使用servlet也是可以的。RemoteExporter这块其实主要就是使用了它getServiceInterface和getProxyForService两个方法,这个和thrift服务端代码结合暴露内部的服务。客户端主要使用spring的MethodInterceptor和UrlBasedRemoteAccessor以及代理来实现对服务端的远程调用。

2015-03-02

spring-httpinvoker-demo

Spring HTTP Invoker是spring框架中的一个远程调用模型,执行基于HTTP的远程调用,也就是说,可以通过防火墙,并使用java的序列化机制在网络间传递对象。客户端可以很轻松的像调用本地对象一样调用远程服务器上的对象,要注意的一点是,服务端、客户端都是使用Spring框架。

2015-03-02

comet4j-demo

Comet4J Comet for Java 是一个纯粹基于AJAX XMLHTTPRequest 的服务器推送框架 消息以JSON方式传递 具备长轮询 长连接 自动选择三种工作模式

2015-02-26

olingo实例代码

Apache Olingo 是个 Java 库,用来实现 Open Data Protocol (OData)。 Apache Olingo 包括服务客户端和 OData 服务器方面。当前支持 OData 2.0 ,未来会支持 OData 4.0。Apache Olingo 扩展部分支持 JPA 持久性或者注释 bean 类。The Open Data Protocol (OData) 是个 web 协议,为了增强各种网页应用程序之间的数据兼容性,微软公司启动了一项旨在推广网页程序数据库格式标准化的开源数据协议(OData)计划,于此同时,他们还发 布了一款适用于OData协议的开发工具,以方便网页程序开发者们使用。

2015-02-02

Postman-REST-Client_v0.8.1

Postman 是一个非常棒的Chrome扩展,提供功能强大的API & HTTP 请求调试。它能够发送任何类型的HTTP requests (GET, HEAD, POST, PUT..),附带任何数量的参数+ headers。

2015-02-02

MQTT实现wmqtt

我们使用java实现生产者和消费者(MQTT使用wmqtt.jar),服务器采用mosquitto。

2015-01-20

PhpMQTTClient

MQTT协议是为大量计算能力有限,且工作在低带宽、不可靠的网络的远程传感器和控制设备通讯而设计的协议,它具有以下主要的几项特性: 1、使用发布/订阅消息模式,提供一对多的消息发布,解除应用程序耦合; 2、对负载内容屏蔽的消息传输; 3、使用 TCP/IP 提供网络连接; 4、有三种消息发布服务质量: “至多一次”,消息发布完全依赖底层 TCP/IP 网络。会发生消息丢失或重复。这一级别可用于如下情况,环境传感器数据,丢失一次读记录无所谓,因为不久后还会有第二次发送。 “至少一次”,确保消息到达,但消息重复可能会发生。 “只有一次”,确保消息到达一次。这一级别可用于如下情况,在计费系统中,消息重复或丢失会导致不正确的结果。 5、小型传输,开销很小(固定长度的头部是 2 字节),协议交换最小化,以降低网络流量; 6、使用 Last Will 和 Testament 特性通知有关各方客户端异常中断的机制;

2015-01-19

AndroidPushNotificationsDemo

MQTT协议是为大量计算能力有限,且工作在低带宽、不可靠的网络的远程传感器和控制设备通讯而设计的协议,它具有以下主要的几项特性: 1、使用发布/订阅消息模式,提供一对多的消息发布,解除应用程序耦合; 2、对负载内容屏蔽的消息传输; 3、使用 TCP/IP 提供网络连接; 4、有三种消息发布服务质量: “至多一次”,消息发布完全依赖底层 TCP/IP 网络。会发生消息丢失或重复。这一级别可用于如下情况,环境传感器数据,丢失一次读记录无所谓,因为不久后还会有第二次发送。 “至少一次”,确保消息到达,但消息重复可能会发生。 “只有一次”,确保消息到达一次。这一级别可用于如下情况,在计费系统中,消息重复或丢失会导致不正确的结果。 5、小型传输,开销很小(固定长度的头部是 2 字节),协议交换最小化,以降低网络流量; 6、使用 Last Will 和 Testament 特性通知有关各方客户端异常中断的机制;

2015-01-19

rsmb安装包

MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是轻量级基于代理的发布/订阅的消息传输协议,设计思想是开放、简单、轻量、易于实现。有可能成为物联网的重要组成部分。该协议支持所有平台,几乎可以把所有联网物品和外部连接起来,被用来当做传感器和致动器(比如通过Twitter让房屋联网)的通信协议。

2015-01-19

haproxy-1.5.8.tar.g

HAProxy提供高可用性、负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费、快速并且可靠的一种解决方案。HAProxy特别适用于那些负载特大的web站点,这些站点通常又需要会话保持或七层处理。HAProxy运行在当前的硬件上,完全可以支持数以万计的并发连接。并且它的运行模式使得它可以很简单安全的整合进您当前的架构中,同时可以保护你的web服务器不被暴露到网络上.

2014-11-14

rocketmq实例代码

RocketMQ是一个纯java、分布式、队列模型的开源消息中间件,前身是Metaq,当 Metaq 3.0发布时,产品名称改为 RocketMQ。

2014-11-09

RocketMQ安装源码

RocketMQ是一个纯java、分布式、队列模型的开源消息中间件,前身是Metaq,当 Metaq 3.0发布时,产品名称改为 RocketMQ。

2014-11-09

RocketMQ学习文档

RocketMQ是一个纯java、分布式、队列模型的开源消息中间件,前身是Metaq,当 Metaq 3.0发布时,产品名称改为 RocketMQ。

2014-11-09

RocketMQ安装包

RocketMQ是一个纯java、分布式、队列模型的开源消息中间件,前身是Metaq,当 Metaq 3.0发布时,产品名称改为 RocketMQ。 具有以下特点: 1、能够保证严格的消息顺序 2、提供丰富的消息拉取模式 3、高效的订阅者水平扩展能力 4、实时的消息订阅机制 5、亿级消息堆积能力。

2014-11-09

rabbitmq-demo学习实例

rabbitmq学习实例,几种交换类型的demo和与spring结合的demo

2014-11-08

spring-rabbitmq-demo

基于spring-rabbitmq的异步消息发送和RPC远程调用实例

2014-11-08

kafka学习实例

kafka集群测试,生产、消费实例代码,kafka-demo.rar

2014-11-02

dubbo实例代码

dubbo测试实例,使用zookeeper注册中心。

2014-11-02

linux文件共享服务汇总

1、samba服务器 Windows与Linux文件共享 (主局域网) 1.1samba服务器介绍 1.2samba服务的启动和进程 1.3Samba 配置 1.4samba服务器端常用命令 1.5Samba应用示例一:linux用户在window端访问宿主目录 1.6Samba应用示例二:linux用户在window端访问服务器指定目录 1.7Samba应用案例三:建立一个公共的只读目录 2、FTP应用-vsftpd 2.1、FTP服务器介绍 2.2、FTP服务器配置 2.3、匿名用户访问 2.4、取消匿名用户登录 2.5、限定哪些用户可以访问ftp 2.6、限定哪些用户不可以访问其他目录 2.7、其他选项设置 3、UNIX类操作系统文件共享-NFS 3.1NFS说明 3.2NFS示意图 3.3安装和启动NFS服务器 3.4NFS服务器端设置 3.5NFS客户端设置 3.6NFS开机自动挂载 4、SSH与rsync 4.1介绍和使用ssh 4.2远程传输,备份 4.3使用rsync实现增量备份

2014-03-14

Android adb命令使用详解

Android 调试桥 adb 是多种用途的工具 该工具可以帮助你你管理设备或模拟器 的状态 可以通过下列几种方法加入adb: 在设备上运行shell命令 通过端口转发来管理模拟器或设备 从模拟器或设备上拷贝来或拷贝走文件 下面对adb进行了介绍并描述了常见的使用 ">Android 调试桥 adb 是多种用途的工具 该工具可以帮助你你管理设备或模拟器 的状态 可以通过下列几种方法加入adb: 在设备上运行shell命令 通过端口转发来管理模拟器或设备 从模拟器或设备上拷贝来或拷贝走文件 [更多]

2014-03-07

Selenium chrome和iE webdriver

selenium 测试iedriverserver和chromedriver

2017-04-02

selenium自动化测试工具Firefox以及插件

基于selenium开发工具

2017-04-02

Hive用户指南(Hive_user_guide)_中文版

Hive 是建立在 Hadoop 上的数据仓库基础构架。它提供了一系列的工具,可以用来进行数据提取转化加载(ETL),这是一种可以存储、查询和分析存储在 Hadoop 中的大规模数据的机制。Hive 定义了简单的类 SQL 查询语言,称为 QL,它允许熟悉 SQL 的用户查询数据。同时,这个语言也允许熟悉 MapReduce 开发者的开发自定义的 mapper 和 reducer 来处理内建的 mapper 和 reducer 无法完成的复杂的分析工作。

2015-10-08

PowerMock实战手册

PowerMock 也是一个单元测试模拟框架,它是在其它单元测试模拟框架的基础上做出的扩展。通过提供定制的类加载器以及一些字节码篡改技巧的应用,PowerMock现了对静态方法、构造方法、私有方法以及 Final 方法的模拟支持,对静态初始化过程的移除等强大的功能。因为 PowerMock在扩展功能时完全采用和被扩展的框架相同的 API, 熟悉PowerMock 所支持的模拟框架的开发者会发现 PowerMock 非常容易上手。PowerMock的目的就是在当前已经被大家所熟悉的接口上通过添加极少的方法和注释来实现额外的功能,目前,PowerMock 仅支持 EasyMock 和 Mockito。

2015-06-03

TestNG官方文档中文版

TestNG是一个测试框架,其灵感来自JUnit和NUnit的,但引入了一些新的功能,使其功能更强大,使用更方便。

2015-06-02

smack开发文档

Smack是一个用于和XMPP服务器通信的类库,由此可以实现即时通讯和聊天。

2015-06-01

基于xmpp_openfire_smack开发之smack类库介绍和使用

关于Smack编程库,前面我们提到,它是面向Java端的api,主要在PC上使用,利用它我们可以向openfire服务器注册用户,发送消息,并且可以通过监听器获得此用户的应答消息,以及构建聊天室,分组,个人通讯录等等。

2015-06-01

ActiveMQ集群

ActiveMQ具有强大和灵活的集群功能,ActiveMQ的集群方式主要由两种:Master-Slave和Broker Cluster。

2015-06-01

FastDFS安装软件包

FastDFS是一个开源的轻量级分布式文件系统,由跟踪服务器(tracker server)、存储服务器(storage server)和客户端(client)三个部分组成,主要解决了海量数据存储问题,特别适合以中小文件(建议范围:4KB < file_size <500MB)为载体的在线服务。在生成环境FastDFS一般都是用集群配置,以提高FastDFS的可用性,并发能力。

2015-05-27

分布式文件系统fastdfs架构剖析及配置优化

FastDFS是一款开源的轻量级分布式文件系统 纯C实现,支持Linux、FreeBSD等UNIX系统 类google FS,不是通用的文件系统,只能通过专有API访问,目前提供了C、Java和PHP API 为互联网应用量身定做,解决大容量文件存储问题,追求高性能和高扩展性 FastDFS可以看做是基于文件的key value pair存储系统,称作分布式文件存储服务更为合适

2015-05-27

fastdfs 5.01 + nginx + cache 集群安装配置手册

FastDFS是一个开源的分布式文件系统,她对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册网站、视频网站等等。

2015-05-27

dlz-dns-web

DLZ不是一个dns服务器,只是bind9的一个补丁,为简化了管理,减少了内存的使用和启动时间。使用DLZ可以将ZONE文件数据库数据存储在数据库,当数据库变化时,可以及时通知bind,并更新数据,不需要重启或重新加载配置。DLZ支持数据库 PostgreSQL, MySQL, Berkeley DB, ODBC (thus Firebird, DB2, Oracle, Sybase, SAPDB) and LDAP,它也可以使用一个标准的文件系统作为数据库,如果现有的驱动不满足,也支持API实现自定义驱动开发。DLZ不会影响bind现有的特性,你仍然可以使用标准的dns zone文件。

2015-04-23

dlz-dns-etc

DLZ不是一个dns服务器,只是bind9的一个补丁,为简化了管理,减少了内存的使用和启动时间。使用DLZ可以将ZONE文件数据库数据存储在数据库,当数据库变化时,可以及时通知bind,并更新数据,不需要重启或重新加载配置。DLZ支持数据库 PostgreSQL, MySQL, Berkeley DB, ODBC (thus Firebird, DB2, Oracle, Sybase, SAPDB) and LDAP,它也可以使用一个标准的文件系统作为数据库,如果现有的驱动不满足,也支持API实现自定义驱动开发。DLZ不会影响bind现有的特性,你仍然可以使用标准的dns zone文件。

2015-04-23

使用bind构建高可用智能dns服务器

目前智能DNS的实现主要有两种方式,一种是使用F5公司的BIG-IP GTM,另一种是使用bind自带的view来实现。BIG-IP GTM是一款商业产品,功能、性能极为强大,但是由于价格昂贵,中小型企业基本不会考虑花巨资购买此产品,所以只有一些门户网站将此用于核心业务,比如百度、阿里巴巴、金山;bind是一款开源程序,利用其自带的view可轻松实现智能DNS功能,其功能、性能都很好,一台普通配置的服务器,可每秒可处理2-4千查询请求。下面我们看一下利用bind的view功能是如何实现智能DNS的。

2015-04-19

spring-data-redis-demo

Spring-data-redis是spring大家族的一部分,提供了在srping应用中通过简单的配置访问redis服务,对reids底层开发包(Jedis, JRedis, and RJC)进行了高度封装,RedisTemplate提供了redis各种操作、异常处理及序列化,支持发布订阅,并对spring 3.1 cache进行了实现。

2015-04-07

memcache-demo

XMemcached 是一个新 java memcached client。下面我们以XMemcached为例,结合spring演示一下其使用。

2015-03-26

mongodb 备份恢复工具

mongobackup 是用于复制集的增量备份与恢复工具,恢复时,需要结合全量备份与恢复使用。

2015-03-20

thrift-zookeeper-rpc

对于Thrift服务化的改造,主要是客户端,可以从如下几个方面进行: 1.服务端的服务注册,客户端自动发现,无需手工修改配置,这里我们使用zookeeper,但由于zookeeper本身提供的客户端使用较为复杂,因此采用curator-recipes工具类进行处理服务的注册与发现。 2.客户端使用连接池对服务调用进行管理,提升性能,这里我们使用Apache Commons项目commons-pool,可以大大减少代码的复杂度。 3.关于Failover/LoadBalance,由于zookeeper的watcher,当服务端不可用是及时通知客户端,并移除不可用的服务节点,而LoadBalance有很多算法,这里我们采用随机加权方式,也是常有的负载算法,至于其他的算法介绍参考:常见的负载均衡的基本算法。

2015-03-08

protobuf-demo

protobuf-rpc-pro是一个Java类库,提供了基于 Google 的 Protocol Buffers 协议的远程方法调用的框架。基于 Netty 底层的 NIO 技术。支持 TCP 重用/ keep-alive、客户端和服务端双向调用、SSL加密、RPC 调用取消操作、嵌入式日志等功能。

2015-03-05

burlap-spring-demo

Burlap是一个轻量级的XML RPC协议 这使得他可以移植到任何可以解析XML的语言中 比起Hessian 它的可读性更强 和其他基于Xml的远程技术(如SOAP和XML RPC)不同 它的消息结构尽可能简单 不需要额外的外部定义语言 如WSDL或IDL Hessian Burlap是Caucho提供的两种基于Http的轻量级远程服务 Burlap现在已经集成到hessian jar中 不作为一个单独的项目了 ">Burlap是一个轻量级的XML RPC协议 这使得他可以移植到任何可以解析XML的语言中 比起Hessian 它的可读性更强 和其他基于Xml的远程技术(如SOAP和XML RPC)不同 它的消息结构尽可能简单 不需要额外的外部定义语言 如WSDL或IDL [更多]

2015-03-03

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

TA关注的人

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