- 博客(21)
- 收藏
- 关注
原创 从Memcache转战Redis,聊聊缓存使用填过的“坑”
文章来源:51CTO 原文链接:http://developer.51cto.com/art/201807/579238.htm 在高并发场景下,很多人都把 Cache(高速缓冲存储器)当做可以“续命”的灵丹妙药,哪里高并发压力大,哪里就上传 Cache 来解决并发问题。但有时候,即使使用了 Cache,却发现系统依然卡顿宕机,是因为 Cache 技术不好吗?非也,其实这是缓存的治理...
2019-04-29 19:19:06 472
原创 【开发环境搭建三】IntelliJ IDEA lombok插件的安装和使用
IntelliJ IDEA lombok插件的安装和使用百度经验:https://jingyan.baidu.com/article/0a52e3f4e53ca1bf63ed725c.html
2019-04-29 16:20:35 386
原创 【开发环境搭建一】Intellij IDEA构建SpringBoot项目
一、点击create New Project, 界面点击Spring Initializr, 默认配置,点击next二、填写Group和Artifact, 点击next三、选择web,点击next四、填写项目名称,点击next五、删除项目无用的配置,建立测试类六、点击启动启动信息,表明请求成功七、验证网址...
2019-04-28 23:07:53 444
原创 Java并发编程-对象共享
本文将介绍Java并发编程中的对象共享问题和解决办法。java并发访问共享数据的三种方式:1、synchronized 对共享变量进行变更的方法、代码块 使用synchronized关键字(或者Lock)。2、对共享变量使用volatile关键字。3、使用Atomic包中的原子性操作类。...
2019-04-27 17:23:47 650
原创 Redis高级数据结构GEO用法
需求怎么实现一个“附件的人”或者附近的“商店”功能?需求分析可以基于数据库去做,给定一个坐标,以这个坐标为半径r, j使用sql选出近似圆的的元素进行展示。select id from positions where x > x0-r and x < x0+r and y < y0+r and y> y0-r但是如果访问量非常大,那数据库就无能为力,幸好Redi...
2019-04-22 13:21:31 1690
转载 美团点评基于MGR的CMDB高可用架构搭建之路
一、背景以MHA作为切换工具,CMDB管理元数据,结合中间件的高可用方案在MySQL生态中是比较常见的架构。在这个体系中,CMDB作为基础组件之一,不能再依赖这个架构实现自身的高可用,而需要一套自成体系的高可用架构保障。2017年下半年开始,美团点评数据库计划全面升级上线5.7版本,也正是这个契机,基于MGR的CMDB高可用想法应运而生。二、关于MGRMGR是以Plugin的形式嵌入在M...
2019-04-19 16:48:13 414
原创 Redis高级数据结构HyperLogLog原理详解和应用场景
本文将介绍Redis的数据结构HyperLogLog原理和应用场景。Redis高级数据结构HyperLogLogHyperLogLog类似set的使用方法,可以接受元素添加,并给出key包含的唯一元素的近似数量。为什么说是近似数量,这和其实现有关系,先看完api再看实现原理和应用场景。> PFADD key element [element … //将任意数量的元素添加到指定的 Hy...
2019-04-17 20:49:13 4078
原创 Redis如何实现消息队列
Redis 利用 其 专有的数据结构list可以实现简单的消息队列和异步发送的需求,当然可专业的mq相比,在消息投递的可靠性和及时性上还是有差距,如果对异步发送要求比较高,则建议还是采用专业的mq中间件。
2019-04-14 12:55:21 5608 1
原创 悲观锁、乐观锁的区别和实现
通过阅读本篇文章,将为您解决以下四个疑问。1、何为乐观锁?2、何为悲观锁?3、乐观锁如何实现?4、悲观锁如何实现?乐观锁乐观锁的实现悲观锁悲观锁的实现...
2019-04-13 17:33:53 2286
原创 Redis实现分布式锁的正确姿势
在服务端的开发中,经常会遇到并发问题,并发问题大家能想到的就是并行变串行,锁就是一种并行变串行的方式,redis就可以利用其单线程的特性实现分布式锁。
2019-04-12 13:34:51 303
原创 一文读懂PHP最新加载规范PSR-4
FIG制定的PHP规范,简称PSR,是PHP开发的事实标准。PSR原本有四个规范,分别是:PSR-0 自动加载PSR-1 基本代码规范PSR-2 代码样式PSR-3 日志接口2013年底,新出了第5个规范——PSR-4。 PSR-4规范了如何指定文件路径从而自动加载类定义,同时规范了自动加载文件的位置。这个乍一看和PSR-0重复了,实际上,在功能上确实有所重复。区别在于...
2019-04-11 23:29:13 5620
原创 Redis开发规范(基于阿里云Redis开发规范)
Redis键值规范1、键设计易识别和管理遵从 业务名称:子业务名称:应用场景:自定义部分例如:key = “aliyun:forum:cache:comments:64529021”;2、简洁性在保证语义的前提下,控制key的长度,在大数据量场景下,key的内存占用不可小视。3、不要包含特殊字符包含空格、换行、单双引号以及其他转义字符4、控制bigvalue, 防止网卡流量、慢查询...
2019-04-10 09:43:27 710
原创 初识Redis—常用命令操作
Redis能做什么?Redis是一种缓存型数据库,数据完全存储在内存中,存取速度非常快,qps据说可以达到10w/s。
2019-04-09 23:12:20 990
原创 单例模式
定义单例模式确保一个类只有一个实例,自行实例化并向系统提供这个实例。使用场景比如在PHP一个进程中,访问数据库需要的是同一个资源,这些配置的加载是同一个,必须保证只有一个实例,这时候可以用单例实现,在初始化的时候连接数据库资源,再次请求数据库时,依然复用同一连接。代码实现class XXXProxy extends BaseProxy{ public function __co...
2019-04-08 22:47:20 293
原创 工厂模式
定义工厂设计模式定义了一组创建对象的接口,同时使调用方避免确定将要实例化的类名称的步骤。在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。使用场景工厂模式属于创建型设计模式,在创建若干个对象集合时,每个对象都实现相同的基对象(可以理解为接口),但每个对象的表现或特征。解决问题对调用者屏蔽具体实现,只需要关心接口即可。可扩展,只需要...
2019-04-06 13:37:41 286
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人