最新文章

  • Redis 应用-分布式锁
    当多个进程不在同一个系统中,就需要用分布式锁控制多个进程对资源的访问。
  • Redis 应用-异步消息队列与延时队列
    说道消息队列,你肯定会想到 Kafka、Rabbitmq 等消息中间件,这些专业的消息中间件提供了很多功能特性,当然他的部署使用维护都是比较麻烦的。如果你对消息队列没那么高要求,想要轻量级的,使用 Redis 就没错啦。
  • Redis 应用-位图
    我们都知道 8bit = 1b = $2^{-10}$kb,bitmap 就是通过最小的单位 bit 来进行 0 或者 1 的设置,表示某个元素对应的值或者状态。
  • Redis 应用-HyperLogLog
    如果你要统计网站的 PV,你可以使用 Redis 计数器就好了,每来一个请求,调用一次 incrby 即可。但是如果要统计 UV 就没那么简单呢,它需要去重,当然你肯定想到了 Redis 中的去重的 Set 集合,当一个请求过来使用 sadd 添加用户 ID, 通过 scard 取出集合的大小。但是如果上千万的 UV,使用集合来统计,就非常浪费空间了。而 Redis 提供的 HyperLogLog 数据结构正是来解决这类统计问题的,当然在数据量很大的情况下,他会有一定的误差。
  • Redis 应用-布隆过滤器
    布隆过滤器可以理解为一个不怎么精确的 set 结构,当你使用它的 contains 方法判断某个对象是否存在时,它可能会误判。但是布隆过滤器也不是特别不精确,只要参数设置的合理,它的精确度可以控制的相对足够精确,只会有小小的误判概率。
  • Redis 应用-限流
    在高并发场景下有三把利器保护系统:缓存、降级、和限流。缓存的目的是提升系统的访问速度和增大系统能处理的容量;降级是当服务出问题或影响到核心流程的性能则需要暂时屏蔽掉。而有些场景则需要限制并发请求量,如秒杀、抢购、发帖、评论、恶意爬虫等。
  • Redis Geo应用-使用Redis来解决搜附近的问题
    移动互联网时代 LBS 应用越来越多,交友软件中附近的小姐姐、外卖软件中附近的美食店铺、打车软件附近的车辆等等,那这种附近各种形形色色的 XX 是如何实现的呢?
  • 微服务的那些事
    参考:极客专栏:从 0 开始学微服务
  • 使用 Laravel IDE helper + Laravel plugin 提升开发效率
    使用 Laravel 时,我们常常会用到拓展包 Laravel IDE helper 来帮助本地开发。而 Laravel plugin 是一款 PHPStorm 的插件,将这两者配合使用,可以较大的提升开发效率。
  • Laravel中Redis的使用
    Redis 是一款开源且先进的键值对数据库。由于它的键指向的数据包含了 字符串、哈希、列表、集合 和 有序集合 这些数据类型,因此常被用作数据结构服务器。
  • php不用第三个中间临时变量交换变量值
    编程最简单的算法之一,莫过于变量交换。交换变量的常见算法需要一个中间变量进行变量的临时保存,而在面试中常常会“刁难”你,不允许你使用第三个中间临时变量的情况下,如何交换变量值。
  • 项目中常用的解决方案介绍
    介绍包括:前后端分离式开发解决方案、电商秒杀抢购解决方案、分布式全文搜索解决方案、对象存储与融合CDN解决方案、直播电商解决方案、协同过滤解决方案等等
  • Laravel框架中如何使用 Presenter 模式?
    若将显示逻辑都写在view,会造成view肥大而难以维护,基于SOLID原则,我们应该使用Presenter模式辅助view,将相关的显示逻辑封装在不同的presenter,方便中大型项目的维护。
  • Laravel框架中如何使用Service模式?
    若将商业逻辑都写在controller,会造成controller肥大而难以维护,基于SOLID原则,我们应该使用Service模式辅助controller,将相关的商业逻辑封装在不同的service,方便中大型项目的维护。
  • Laravel框架中如何使用 Repository 模式?
    若将数据库逻辑都写在model,会造成model的肥大而难以维护,基于SOLID原则,我们应该使用Repository模式辅助model,将相关的数据库逻辑封装在不同的repository,方便中大型项目的维护。

最新评论

扫码关注