遗忘悠剑-北京微缘科技有限公司

🍀 记录精彩的程序人生 开始使用
HTTP 和 HTTPS 协议,看一篇就够了

HTTP 和 HTTPS 协议,看一篇就够了

一、前言:先来观察这两张图,第一张访问域名 http://www.12306.cn,谷歌浏览器提示不安全链接,第二张是 https://kyfw.12306.cn/otn/regist/init,浏览器显示安全,为什么会这样子呢?2017 年 1 月发布的 Chrome56 浏览器开始把收集密码或信用卡数据的 HTTP 页面标记为“不安全”,若用户使用 2017 年 10 月推出的 Chrome62,带有输入数据的 HTTP 页面
http 和 https 的区别是什么?具体原理是什么?

http 和 https 的区别是什么?具体原理是什么?

前言无论是在校学习还是找工作的时候,老师和面试官都问过同学 HTTP 和 HTTPS 的区别。平时上网的时候也没有关注这个问题,只是知道计算机网络里 HTTP 的概念,所以最近才查资料好好补补这一块。其实这一块的知识延伸很广,如果之前不太了解加密算法和 SSL 协议,可以在学习了这个问题的基础上再做研究。TLS/SSL 工作原理及握手过程详解:https://tyler-zx.blog.csdn.net/articl
Nginx 所使用的 epoll 模型是什么?让我们一起复习下吧!

Nginx 所使用的 epoll 模型是什么?让我们一起复习下吧!

对于 Nginx,相信有过 Web 服务部署经验的同学都不陌生,它有以下特点:是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。Nginx 相较于 Apache 具有占有内存少,稳定性高等优势,并且依靠并发能力强,丰富的模块库以及友好灵活的配置而闻名。Nginx 目前部署量逐渐增加,大多数运维人员多多少少都懂点 Nginx,但是真正其明白原理的可能少之又少,在许多面试中可能就 N
PHP-fpm 生命周期是怎样的?

PHP-fpm 生命周期是怎样的?

PHP 在 Web 方式中如何改了文件就立即生效的,重要的几个概念:sapi:可以简单的理解为 PHP 引擎对外的一个统一接口,使得 PHP 可以和外部程序进行交互 PHP 的生命周期中关键四个调用:MINT->RINT->RSHUTDOWN->MSHUTDOWNfpm:fastcgi 进程管理器 fpm 方式的流程就是:fpm 通过 sapi 接口与 PHP 进程交互 1.fpm 启动会调用各扩展的 MINT 方法,进行一些数据初始化(长
redis 的六大数据类型详细用法

redis 的六大数据类型详细用法

我们说 Redis 相对于 Memcache 等其他的缓存产品,有一个比较明显的优势就是 Redis 不仅仅支持简单的 key-value 类型的数据,同时还提供 list,set,zset,hash 等数据结构的存储。本篇博客我们就将介绍这些数据类型的详细使用以及顺带介绍 Redis 系统的相关命令用法。注意:Redis 的命令不区分大小写,但是 key 严格区分大小写!!!0、写在前面下面介绍的 Redis 命令有很多,如果你想
乐观锁、悲观锁、【多线程系列】CAS、AQS 等的介绍和典型用法~

乐观锁、悲观锁、【多线程系列】CAS、AQS 等的介绍和典型用法~

一、并发控制当程序中可能出现并发的情况时,就需要通过一定的手段来保证在并发情况下数据的准确性,通过这种手段保证了当前用户和其他用户一起操作时,所得到的结果和他单独操作时的结果是一样的。这种手段就叫做并发控制。并发控制的目的是保证一个用户的工作不会对另一个用户的工作产生不合理的影响。没有做好并发控制,就可能导致脏读、幻读和不可重复读等问题。常说的并发控制,一般都和数据库管理系统(DBMS)有关。在 DB
Mysql 的索引原理,让我们一起复习一下吧

Mysql 的索引原理,让我们一起复习一下吧

一、初识索引 1.1 为什么要有索引?一般的应用系统,读写比例在 10:1 左右,而且插入操作和一般的更新操作很少出现性能问题,在生产环境中,我们遇到最多的,也是最容易出问题的,还是一些复杂的查询操作,因此对查询语句的优化显然是重中之重。说起加速查询,就不得不提到索引了。1.2 什么是索引?索引在 MySQL 中也叫是一种“键”,是存储引擎用于快速找到记录的一种数据结构。索引对于良好的性能非常关键,尤其是当表中的
和我一起学习 go 语言: 2. 看完了基础写个冒泡排序吧

和我一起学习 go 语言: 2. 看完了基础写个冒泡排序吧

碎碎念提笔,居然写了半天没写好 ~,后来终于成功了 ~ 但是又迷茫了 ~ 因为百度了下发现还有别的写法代码 packagemainimport"fmt"funcmain(){ar:=[]int{9,8,0,4,2,7,1,6,3,5,11}varout=sort(ar)fmt.Println(out)ar1:=[...]int{9,8,0,4,2,7,1,6,3,5}out1:=bubble_sort(ar1)
[转] 蝉的传奇一生,真的很悲惨啊~

[转] 蝉的传奇一生,真的很悲惨啊~

夏天到了,知了在树上叫。可是,大部分都不知道知了的一生,比我们想象的要传奇。“蝉的卵产在树上,到第二年春夏,蝉卵才孵化出幼虫来。刚孵出的幼虫顺着树干爬到地上或掉落地面,然后找松土钻入地下,幼虫在地下靠刺吸式口器吸取树根的汁液。幼虫长大后爬出地面,脱去外壳,等翅膀变硬,雄蝉就在树枝上高唱:“知了”,与雌蝉交配。蝉交配产卵后不久就死去。”我们来整理一下,大概是这样的,你看到的蝉在树上叫,它找到爱人产的卵
laravel 队列 (调度任务) 最大重试次数配置以及单任务最大执行时间配置

laravel 队列 (调度任务) 最大重试次数配置以及单任务最大执行时间配置

首先官方文档队列:https://learnku.com/docs/laravel/5.8/queues/3923 任务调度:https://learnku.com/docs/laravel/5.8/scheduling/3924 总结配置方法方法一:artisan 命令,增加—tries 或者—timeoutphpartisanqueue:listen--tries=3//失败任务尝试 3 次 phpartis