李老湿的Blog

  • Java
  • PHP
  • Mysql
  • Linux
  • 系统设计
  • 随笔
regan
一个低调的全栈工程师
PHP

PHP8.1发布

php8.1发布,该版本带来了许多改进和新功能 枚举 使用枚举而不是一组常量并立即进行验证。 enum Status { case draft; case published; case archived; public function color(): string { return match($this) { Status::draft => 'grey', Status::published => 'green', Status::archived => 'red', }; } } 只读…

2021年11月26日 0条评论 6467点热度 1人点赞 regan 阅读全文
系统设计

rabbitmq如何保证消息不丢失

  RabbitMq如何保证消息不丢失 1.消息持久化配置 RabbitMQ 的消息默认存放在内存上面,如果不特别声明设置,消息不会持久化保存到硬盘上面的,如果节点重启或者意外crash掉,消息就会丢失。 所以就要对消息进行持久化处理。如何持久化,下面具体说明下: 要想做到消息持久化,必须满足以下三个条件,缺一不可。 1) Exchange 设置持久化 2)Queue 设置持久化 3)Message持久化发送:发送消息设置发送模式deliveryMode=2,代表持久化消息 2.ACK确认机制 多个消费者…

2021年9月29日 0条评论 12593点热度 10人点赞 regan 阅读全文
未分类

Google SRE

Google SRE 右键下载查看

2021年9月5日 0条评论 6323点热度 0人点赞 regan 阅读全文
Laravel

面试大纲

  完整思维导图:https://qiniu.likephp.cn/%E7%9F%A5%E8%AF%86%E5%9B%BE%E8%B0%B1_simple.png    

2018年9月16日 0条评论 7339点热度 0人点赞 regan 阅读全文
未分类

docker network_mode host模式

注意事项 严重警告:host模式主机网络驱动程序仅适用于Linux主机,并且不支持Docker for Mac,Docker for Windows或Docker EE for Windows Server。

2022年7月1日 0条评论 3596点热度 0人点赞 regan 阅读全文
系统设计

守护进程之PM2

PM2的优势 PM2是一个带有负载均衡功能的Node应用的进程管理! 内建负载均衡(使用Node cluster 集群模块) 可以在后台运行 可以0秒停机重载,(可以理解为不需要停机重启,在用户愉快的浏览页面时我们已经程序更新了) 控制台检测 日志管理 热重载 { "apps": { "name": "wuwu", // 项目名 "script": "./bin/www", // 执行文件 "cwd": "./", // 根目录 "args": "", // 传递给脚本的参数 "interpreter": "", …

2022年1月13日 0条评论 3921点热度 0人点赞 regan 阅读全文
系统设计

系统设计-网关-何为API网关

  一、何为API网关? 在传统项目迭代中、每个服务会有单独的鉴权、签名、要单独开发独立的限流、熔断、链路追踪等等功能、每个项目又会有单独的域名、当我们的客户端对接多个项目时,往往要给每个项目单独处理,大大浪费开发效率,提高风险 而微服务的出现会导致我们的服务数量增加,那么就需要一种可以抽离的公共组件帮我们完成这些功能、网关则应运而生 APIGateway 即API网关 所有请求首先会经过这个网关,然后到达后端服务,有点类似于Facade模式。API网关作为系统接口对外的统一出口,可以减少调用方对服务实现…

2021年10月1日 0条评论 10887点热度 7人点赞 regan 阅读全文
随笔

数据结构与算法-设计模式-观察者模式

  Intent 定义对象之间的一对多依赖,当一个对象状态改变时,它的所有依赖都会收到通知并且自动更新状态。 主题(Subject)是被观察的对象,而其所有依赖者(Observer)称为观察者。 Class Diagram 主题(Subject)具有注册和移除观察者、并通知所有观察者的功能,主题是通过维护一张观察者列表来实现这些操作的。 观察者(Observer)的注册功能需要调用主题的 registerObserver() 方法。 Implementation 天气数据布告板会在天气信息发生改变时更新其…

2021年9月14日 0条评论 7351点热度 0人点赞 regan 阅读全文
页面

计算机基础-网络-Socket

一、I/O 模型 一个输入操作通常包括两个阶段: 等待数据准备好 从内核向进ĸ…

2021年8月12日 0条评论 6584点热度 0人点赞 regan 阅读全文
Java

Java-Map中BinaryOperator的作用

在使用 java.util.stream.Collectors 类的 toMap()方法转为 Map 集合时,一定要使 用含有参数类型为 BinaryOperator,参数名为 mergeFunction 的方法,否则当出现相同 key 值时会抛出 IllegalStateException 异常。 说明:参数 mergeFunction 的作用是当出现 key 重复时,自定义对 value 的处理策略。 正例: List<Pair<String, Double>> pairArrayLis…

2021年7月21日 0条评论 7304点热度 9人点赞 regan 阅读全文
随笔

redis缓存过期和内存淘汰策略

缓存过期设置 1. maxmemory 不限制过期时间 Redis的key是固定的,不会增加 Redis作为DB使用,保证数据的完整性,不能淘汰 , 可以做集群,横向扩展 缓存淘汰策略:禁止驱逐 (默认) Redis是作为缓存使用,不断增加Key maxmemory : 默认为0 不限制 问题:超过物理内存后性能急剧下架,甚至崩溃。内存与硬盘交换(swap) 虚拟内存 ,频繁IO 性能急剧下降 设置多少?与业务有关 1个Redis实例,保证系统运行 1 G ,剩下的就都可以设置Redis 如:物理内存的3/4 sl…

2021年7月1日 0条评论 7114点热度 0人点赞 regan 阅读全文
12345…8
归档
  • 2022 年 7 月
  • 2022 年 1 月
  • 2021 年 11 月
  • 2021 年 10 月
  • 2021 年 9 月
  • 2021 年 8 月
  • 2021 年 7 月
  • 2021 年 6 月
  • 2021 年 4 月
  • 2021 年 3 月
  • 2021 年 2 月
  • 2021 年 1 月
  • 2020 年 12 月
  • 2020 年 11 月
  • 2020 年 10 月
  • 2020 年 9 月
  • 2020 年 8 月
  • 2020 年 6 月
  • 2020 年 3 月
  • 2020 年 2 月
  • 2020 年 1 月
  • 2019 年 12 月
  • 2019 年 11 月
  • 2019 年 10 月
  • 2019 年 9 月
  • 2019 年 8 月
  • 2019 年 4 月
  • 2019 年 3 月
  • 2019 年 2 月
  • 2019 年 1 月
  • 2018 年 11 月
  • 2018 年 10 月
  • 2018 年 9 月
  • 2018 年 7 月
  • 2018 年 5 月
  • 2018 年 4 月
  • 2018 年 3 月
  • 2017 年 12 月

COPYRIGHT © 2025 likephp.cn. ALL RIGHTS RESERVED.

THEME KRATOS MADE BY VTROIS

皖ICP备17010166号-2