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

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

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

redis自2.8.0之后版本提供Keyspace Notifications功能,允许客户订阅Pub / Sub频道,以便以某种方式接收影响Redis数据集的事件。 可能收到的事件的例子如下: 所有影响给定键的命令。 所有接收LPUSH操作的密钥。 所有密钥在数据库中过...

2018-05-02 18:42:07

阅读数:8708

评论数:1

Spring事务不生效问题汇总

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

2017-06-03 15:03:27

阅读数:1242

评论数:0

Spring event应用

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

2017-05-25 00:32:51

阅读数:1983

评论数:0

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

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

2017-05-22 22:55:24

阅读数:7459

评论数:0

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

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

2017-05-05 23:10:51

阅读数:4134

评论数:3

MySQL使用规范备注

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

2017-05-05 22:33:17

阅读数:971

评论数:0

RabbitMQ学习之Flow Control

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

2017-04-17 17:05:27

阅读数:3793

评论数:2

Spring Boot探路者之应用配置

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

2017-04-09 22:20:19

阅读数:896

评论数:0

Spring Boot探路者之helloworld

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

2017-04-09 20:35:18

阅读数:760

评论数:0

Jenkins插件开发hellworld

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

2017-04-04 21:39:55

阅读数:1737

评论数:0

SonarQube静态代码分析实战

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

2017-04-04 14:54:59

阅读数:5252

评论数:0

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

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

2017-03-31 10:19:30

阅读数:4215

评论数:0

Jenkins分布式集群配置

Jenkins是一个开源项目,它提供了一个容易使用的持续集成系统,并且提供了大量的plugin满足各式的集成需求。通过配置jenkins分布式环境,将不同的任务下发到多台机器执行,提高jenkins处理能力。1.安装jenkins实验使用版本2.52.war,将部署到tomcat运行,具体安装步骤...

2017-03-30 00:23:24

阅读数:8842

评论数:0

RabbitMQ学习之队列监控

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

2017-01-02 21:53:49

阅读数:6182

评论数:1

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

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

2017-01-02 02:21:07

阅读数:2616

评论数:3

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

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

2017-01-02 01:53:47

阅读数:4163

评论数:7

RabbitMQ学习之exchange总结

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

2017-01-02 00:11:17

阅读数:2032

评论数:8

ActiveMQ消息的延时和定时投递

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

2016-12-11 23:47:33

阅读数:6901

评论数:0

RabbitMQ学习之延时队列

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

2016-12-11 20:13:04

阅读数:7965

评论数:8

Centos7安装RabbitMQ-3.6.6

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

2016-12-11 16:07:55

阅读数:4150

评论数:1

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