分享传递价值

一个健全的心态比一百种智慧都有力量。

排序:
默认
按更新时间
按访问量

Mysql慢查询日志详解(slow_query_log)

引言 Mysql中比较重要的日志包括二进制日志、relay_log(中继日志)、慢查询日志、redo_log、undo_log等,本篇来聊一聊mysql的慢查询日志。 程序中定位一个执行慢的SQL可以根据慢查询日志,默认情况下,慢查询日志禁用,因为开启慢查询日志或多或少的会对mysql的性能产...

2018-11-03 16:13:38

阅读数:48

评论数:0

nginx实现静态资源代理、动静分离、代理服务(负载均衡)

Nginx是什么? 开源且高性能、可靠的HTTP中间件、代理服务。 类似于nginx的? HTTPD-apache基金会、IIS-微软、GWS-Google 为什么使用nginx? IO多路复用epoll 轻量级(功能模块少、代码模块化) CPU亲和:把CPU核心...

2018-10-24 18:19:46

阅读数:21

评论数:0

代理模式、JDK动态代理、Cglib动态代理、静态代理

如上图,代理模式可分为动态代理和静态代理,我们比较常用的有动态代理中的jdk动态代理和Cglib代理,像spring中AOP实现即采用了JDK动态代理,下面将结合代码阐述两种代理模式的使用与区别。 静态代理 静态代理的代理对象和被代理对象在代理之前就已经确定,它们都实现相同的接口或继承相同...

2018-08-22 15:14:11

阅读数:72

评论数:0

基于Redis实现分布式Session

常见分布式session会话方案 实现分布式session的方案非常多,选型时需要一种可靠、简单的实现方式,结合我们项目中的使用经验来看,使用基于Redis实现的分布式session方案还是比较靠谱的,同时,项目中还把session信息存储在cookie里面,多一层保障。 基本原理 使用R...

2018-08-16 14:59:46

阅读数:127

评论数:0

Guava RateLimiter实现接口API限流

Guava提供的RateLimiter可以限制物理或逻辑资源的被访问速率,咋一听有点像java并发包下的Samephore,但是又不相同,RateLimiter控制的是速率,Samephore控制的是并发量。RateLimiter的原理类似于令牌桶,它主要由许可发出的速率来定义,如果没有额外的配置...

2018-07-07 11:37:16

阅读数:271

评论数:0

Jmeter压测java接口、Jmeter自定义变量模拟多用户压测

场景:作为开发人员经常需要进行java接口的压测,比如商品抢购、并发量大的活动接口,需要模拟多用户进行并发压测,这个时候就需要使用到Apache的Jmeter压测工具了,本篇讲述的是使用Jmeter自定义变量模拟多用户压测,通俗点讲:就是把参数都放在一个文件中,Jmeter调用接口时动态的去读取,...

2018-06-20 21:55:57

阅读数:151

评论数:0

高并发处理之接口限流

最近开发的抢购活动上线后发现了两个比较明显的问题,其一:活动一开始,接口访问量剧增;其二:黑名单中增加了一大批黑名单用户(或者说IP),这其中就包含了一些恶意用户或机器人刷接口。   针对一些高并发的接口,限流是处理高并发的几大利剑之一。一方面,限流可以防止接口被刷,造成不必要的服务层压力,另...

2018-06-13 18:24:56

阅读数:2061

评论数:2

原子操作类AtomicInteger详解

为什么需要AtomicInteger原子操作类?对于全局变量的数值类型操作 num++,若没有加synchronized关键字则是线程不安全的,num++解析为num=num+1,明显,这个操作不具备原子性,多线程时必然会出现问题。不信你看:public class AtomicIntegerTe...

2018-06-08 15:33:17

阅读数:9531

评论数:4

Redis缓存穿透、缓存雪崩、redis并发问题分析

把redis作为缓存使用已经是司空见惯,但是使用redis后也可能会碰到一系列的问题,尤其是数据量很大的时候,经典的几个问题如下: (一)缓存和数据库间数据一致性问题 分布式环境下(单机就不用说了)非常容易出现缓存和数据库间的数据一致性问题,针对这一点的话,只能说,如果你的项目对缓存的要求是强...

2018-06-01 22:16:35

阅读数:3326

评论数:0

java时间戳与Date相互转换、日期格式化、给日期加上指定时长、判断两时间点是否为同一天

项目经常涉及到时间戳和Date类型的相互转换、时间类型处理等,我有时候一段时间不写就又忘记了,故而写篇笔记备忘下! 本文主要包含的有: 时间戳与Date类型的相互转换 判断是否为同一天 日期格式化 给日期加上指定时长 得到指定时间节点的Date 1、时间戳转Date 注:以下的方法中...

2018-05-31 23:20:44

阅读数:5384

评论数:1

深入ConcurrentHashMap实现原理与使用

线程安全的HashMap虽然经常被我们使用,但是也存在两个比较明显的缺点: 线程不安全,效率比较低; 并发编程时容易死循环; 而使用HashTable虽然能解决并发问题,但是由于使用了synchronized来实现锁机制,也使得在并发时读写效率较低。基于以上几点的话,我们会考虑使用Concurre...

2018-05-24 15:52:27

阅读数:141

评论数:0

java内部类详解

定义: 将一个类的定义放在另一个类的内部为什么要内部类?1.内部类提供通向外部类的窗口;2.内部类中定义了和外部类相关的内容,利于维护;3.每个内部类自身都能单独的继承基类或实现接口,而不受外部类的约束;4.围绕第三点来看,内部类从一定程度上解决了java中单继承的限制;内部类经常被使用,例如很多...

2018-05-23 20:11:23

阅读数:170

评论数:0

CyclicBarrier(同步屏障)的简单使用

CyclicBarrer简介 CyclicBarrer,可循环使用的屏障,功能是让多个线程到达某个点时被阻塞,直到最后一个线程达到这个屏障便释放所有线程,和CountDownLatch的区别即在于线程释放后屏障是否可重用。 实例化:通过带参数的new CyclicBarrer(N)可实例化Cy...

2018-04-12 17:11:00

阅读数:73

评论数:0

CountDownLatch(闭锁)的简单使用

CountDownLatch简介 有这么一种场景,某个线程需要等待其他线程任务完成后才能继续执行,比如,需要统计计算三个sheet页面上的数据,于是我就需要开启三个线程来做这个事情,一个线程计算一个sheet页,最后三个线程都计算完了再汇总结果。java.util.concurrent包下的Co...

2018-04-09 22:13:03

阅读数:77

评论数:0

Java中的线程池和异步任务详解

引言 java中经常需要用到多线程来处理一些业务,我们非常不建议单纯使用继承Thread或者实现Runnable接口的方式来创建线程,那样势必有创建及销毁线程耗费资源、线程上下文切换问题,这个时候引入线程池比较合理。有些时候也需要把多线程的逻辑给异步话,接口不需要等待子线程逻辑执行完就马上返回,...

2018-04-08 19:07:23

阅读数:117

评论数:0

Json和Bean间的序列化和反序列化(JSONObject、Gson、FastJson的使用)

json格式校验 日常开发经常涉及到和json的交互,以下原因会常常会使json格式错误: 1、json串的非数字型的键值没有双引号 2、json中存在\t这样的表符,这个比较难发现 3、json中缺少{}或[]导致结构不完整 可以通过FE助手或网页版的json校验json格式正确与否,...

2017-10-16 10:13:22

阅读数:262

评论数:0

Mysql主从复制-基于GTID的复制

前言 mysql的复制能减轻数据库的读负载压力,同时可作为主库的数据备份。mysql的复制功能(异步,可能会导致同一时间点上数据不一致问题)是基于二进制日志增量进行的。建议在同一个IDC机房中进行复制,以减少网络带来的问题。 mysql的复制方式主要有两种,SBR(基于SQL语句复制)和RBR...

2017-04-16 18:40:25

阅读数:392

评论数:0

Mysql主从复制-基于日志点的复制

前言 mysql的复制能减轻数据库的读负载压力。mysql的复制功能(异步,可能会导致同一时间点上数据不一致问题)是基于二进制日志增量进行的。同时建议在同一个IDC机房中进行复制,以减少网络问题带来的问题。 mysql的复制方式主要有两种,SBR(基于SQL语句复制)和RBR(基于行复制),实...

2017-04-16 16:51:53

阅读数:203

评论数:0

Mysql二进制日志详解

引言 注:图片取自网络 提一下比较重要的几个: 重做日志(Redo Log):重做日志是实现mysql事务的持久性的原理之一,当新增数据时,Redo Log会备份新数据,在事务提交前,只要持久化Redo Log即可,而不需要持久化实际数据,如果这时候mysql系统崩溃,虽然数据还没有持久化...

2017-04-16 08:49:50

阅读数:826

评论数:0

intellij idea推荐几款非常实用的插件

更多intellij idea使用教程请点这里:Intellij Idea使用教程汇总篇 intellij idea,开发利器,素以方便快捷著称,使用者越来越多,今天介绍几款idea中非常实用的插件。 插件安装 Windows平台上的IDEA: File > Set...

2018-11-15 14:11:06

阅读数:5

评论数:0

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