点滴成长

在程序开发中寻找一份属于自己的快乐

用redis实现分布式锁

一、简介 通常我们的程序会部署在多个容器上运行(负载均衡),但是我们程序中有时需要加锁(比如多台机器同时运行定时任务,但是我们其实只希望运行一次)。Redis采用的是基于内存的采用的是单进程单线程模型的KV数据库,由C语言编写。我们可以根据Redis单线程特性可以用来实现分布式锁。比较常见的错误...

2018-07-25 22:43:48

阅读数 157

评论数 0

利用ThreadLocal保存登录Session信息

ThreadLocal(线程本地变量)通常理解为“采用了空间换时间的设计思想,主要用来实现在多线程环境下的线程安全和保存线程上下文中的变量”。在实际的项目开发中(比如2C APP程序的服务器端程序),通常在APP调用服务端API接口的时候,需要token(登录)验证并且在具体的方法中可能会使用到当...

2018-07-21 16:02:04

阅读数 1644

评论数 0

Redis集群批量删除key

一、说明 通常为了减轻数据库的压力提高性能,我们会使用数据缓存(我使用的redis)。但是有时出于各种目的(比如有个配置需要立即刷新)我们需要将redis中某种类型(通常是有固定的前缀)的数据批量删除。下面就是介绍一个批量删除命令。实现这个命令后回想,发现该命令非常简单,但是实现的过程中也遇到了...

2017-09-13 20:58:15

阅读数 4844

评论数 0

NATAPP-一个提供可供外网环境访问内网环境URL的通道工具

一、介绍 NATAPP基于ngrok的反向代理软件,通过在公网和本地运行的Web服务器之间建立一个安全的通道。NATAPP可捕获和分析所有通道上的流量,便于后期分析和重放。简单点说就是提供给你一个外网可访问的地址,比如在本机环境调试第三方回调信息等。十分地方便实用。 二、安装过程 1、首先登录...

2017-09-12 15:01:53

阅读数 1310

评论数 0

抓包工具Fiddler使用(主要用于监听APP对外访问请求)

一、介绍 本人最近在做android开发,有时会遇到线上APP版本显示的数据“不符合预期”,查找问题时,特别需要查看一下请求参数是否有问题,但是直接通过线上日志又不是很方便,如果此时能有个抓包工具查看一下就好了。下面就介绍一款比较好用的抓包工具Fiddler。 二、安装设置步骤 1、下载软件F...

2017-06-08 19:03:04

阅读数 1857

评论数 0

Spring集成RabbitMQ并实现延迟队列

一、说明 在实际业务场景中可能会用到延时消息发送,例如异步回调失败时的重发机制。 RabbitMQ本身不具有延时消息队列的功能,但是可以通过rabbitmq-delayed-message-exchange来实现(也可以通过TTL(Time To Live)、DLX(Dead Letter Ex...

2017-01-12 16:41:53

阅读数 5698

评论数 6

GitLab集成LDAP登录并解决OpenLDAP的memberOf问题

LDAP是Light weight Directory Access Protocol(轻量级目录访问协议)的缩写,其前身是更为古老的DAP协议。该文章的亮点(也是写这篇文章的主要目的)是解决了 OpenLDAP(我使用的版本号为2.4.*)加载memberof模块,并通过groupOfNames...

2016-09-14 17:22:47

阅读数 15786

评论数 0

RabbitMQ安装与使用

AMQP,即Advanced Message Queuing Protocol,高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。

2016-06-12 17:15:09

阅读数 3085

评论数 2

Netty+Zookeeper实现一个类似Dubbo的RPC框架

一、说明 1、RPC,即 Remote Procedure Call(远程过程调用),说得通俗一点就是:调用远程计算机上的服务,就像调用本地服务一样。RPC 可基于 HTTP 或 TCP 协议,Web Service 就是基于 HTTP 协议的 RPC,它具有良好的跨平台性,但其性能却不如基于 T...

2016-05-15 19:22:46

阅读数 14594

评论数 2

JavaWeb项目优化之MySQL数据库优化

#开启慢查询日志 set global log_slow_queries=on; #打开日志 set global log_output='Table,File'; set global long_query_time=3.000 #超过3秒视为ma

2016-04-20 21:34:06

阅读数 674

评论数 0

安装Maven并搭建Maven私有仓库

一、说明 Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。我们在进行Java代码开发的时候,Eclipse+Maven+Jetty是一个十分经典的组合,通过它们能够十分方便的进行项目组织和运行调试。 二、Maven安装 1、访问M...

2016-04-19 18:50:35

阅读数 11468

评论数 1

创建虚拟机并搭建GitLab代码管理环境

一、说明 本文章的主要目的是搭建一个GitLab代码管理环境 参考文档:

2016-04-13 10:53:10

阅读数 3748

评论数 0

Dubbo+Zookeeper简介

Dubbo是一个分布式服务框架。Zookeeper也是一个分布式的服务框架,它被作为作为Dubbo服务的注册中心。Dubbo能与Zookeeper做到集群部署,当提供者出现断电等异常停机时,Zookeeper注册中心能自动删除提供者信息,当提供者重启时,能自动恢复注册数据,以及订阅请求。 一、使...

2016-01-06 16:49:28

阅读数 1941

评论数 0

Redis的订阅发布机制

redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及...

2015-12-13 20:22:04

阅读数 2432

评论数 0

使用yuicompressor-maven-plugin插件压缩JS和CSS静态资源

本文介绍通过使用yuicompressor-maven-plugin插件实现js及css代码的自动压缩,加快访问速度,同时方便集成到持续集成环境中。 一、更改pom.xml配置文件,添加yuicompressor-maven-plugin插件 ...... ...

2015-12-13 15:35:21

阅读数 4163

评论数 2

Spring整合Ehcache缓存

EhCache 是一个纯Java的进程内缓存框架,具有快速、精干等特点,是Hibernate中默认的CacheProvide。 第一步:添加项目相关jar包(下面配置只写明了ehcache其它spring相关的jar请参考其它网上资料添加) net.sf.ehcache ...

2015-12-07 17:45:13

阅读数 1212

评论数 0

SpringMVC整合Swagger框架

Swagger可视化API,不仅能查看API,还能测试。 第一步:项目中引入相关jar包: .... com.mangofactory swagger-springmvc 1.0.2 ...

2015-12-07 12:03:28

阅读数 5599

评论数 0

Https请求忽略证书验证最新实现

最近工作中需要和一个第三方公司进行https交互请求,但是对方的证书有一些问题,所以在发送请求的时候需要忽略证书验证。百度之后,发现已经有很多这方面的介绍,不过在使用其代码的时候总会有一些类不推荐使用了。下面是参考网上的常见方面并结合最新的官方API实现的一个最新方法(使用的主要jar包括http...

2015-10-08 11:16:50

阅读数 4721

评论数 1

tomcat优化方案探析

tomcat优化   在线上环境中我们是采用了tomcat作为Web服务器,它的处理性能直接关系到用户体验,在平时的工作和学习中,归纳出以下七种调优经验。 1. 服务器资源     服务器所能提供CPU、内存、硬盘的性能对处理能力有决定性影响。     (1) 对于高并发情况...

2015-09-16 09:13:20

阅读数 421

评论数 0

腾讯应用宝(道具直购模式)支付经验总结

腾讯应用宝

2015-09-11 16:49:18

阅读数 3762

评论数 2

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