大家好,我是满天星,欢迎来到我的技术角落,本期我将带你一起来了解 HTTPS. 前言 其实网上写 HTTPS 的文章也不少了,但是不少文章都是从原理上泛泛而谈,只讲概念,没有讲原因,作为小白,看完还是会有一种似懂非懂的感觉. 本文尝试从 HTTP 开始,一步一步深入到 HTTPS,告诉你 HTTPS 到底是什么.为什么需要 HTTPS.以及 HTTPS 到底是怎么做的.相信你在阅读完本文后,一定会对 HTTPS 有深入的了解. 纸上得来终觉浅,除开原理部分外,本文还提供了 HTTP 和 HTTP…
目录 redis源码分析系列文章 前言 API使用 embstr和raw的区别 SDSHdr的定义 SDS具体逻辑图 SDS的优势 更快速的获取字符串长度 数据安全,不会截断 SDS关键代码分析 获取常见值(抽象出常见方法) 创建对象 删除 添加字符(扩容)重点!!! 总结 参考资料 redis源码分析系列文章 [Redis源码系列]在Liunx安装和常见API 为什么要从Redis源码分析 前言 上篇我们已经了解了Redis是什么,在Linux上如何安装,常见的数据类型和API使用,如果有不明…
Nginx是一款轻量级的Web服务器.反向代理服务器,由于它的内存占用少,启动极快,高并发能力强,在互联网项目中广泛应用. 图基本上说明了当下流行的技术架构,其中Nginx有点入口网关的味道. 反向代理服务器? 经常听人说到一些术语,如反向代理,那么什么是反向代理,什么又是正向代理呢? 正向代理: 反向代理: 由于防火墙的原因,我们并不能直接访问谷歌,那么我们可以借助VPN来实现,这就是一个简单的正向代理的例子.这里你能够发现,正向代理“代理”的是客户端,而且客户端是知道目标的,而目标是不知道客…
文章每周持续更新,「三连」让更多人看到是对我最大的肯定.可以微信搜索公众号「 后端技术学堂 」第一时间阅读(一般比博客早更新一到两篇) 单体式应用程序 与微服务相对的另一个概念是传统的单体式应用程序( Monolithic application ),单体式应用内部包含了所有需要的服务.而且各个服务功能模块有很强的耦合性,也就是相互依赖彼此,很难拆分和扩容. 说在做的各位都写过单体程序,大家都没意见吧?给大家举个栗子,刚开始写代码你写的helloworld程序就是单体程序,一个程序包含所有功能,…
❝ 文章每周持续更新,各位的「三连」是对我最大的肯定.可以微信搜索公众号「 后端技术学堂 」第一时间阅读(一般比博客早更新一到两篇) ❞ 单体式应用程序 与微服务相对的另一个概念是传统的「单体式应用程序」( Monolithic application ),单体式应用内部包含了所有需要的服务.而且各个服务功能模块有很强的耦合性,也就是相互依赖彼此,很难拆分和扩容. 说在做的各位都写过单体程序,大家都没意见吧?给大家举个栗子,刚开始写代码你写的helloworld程序就是单体程序,一个程序包含所有…
前言? Netflix Hystrix断路器是什么? Netflix Hystrix是SOA/微服务架构中提供服务隔离.熔断.降级机制的工具/框架.Netflix Hystrix是断路器的一种实现,用于高微服务架构的可用性,是防止服务出现雪崩的利器. 为什么需要断路器 在分布式架构中,一个应用依赖多个服务是非常常见的,如果其中一个依赖由于延迟过高发生阻塞,调用该依赖服务的线程就会阻塞,如果相关业务的QPS较高,就可能产生大量阻塞,从而导致该应用/服务由于服务器资源被耗尽而拖垮. 另外,故障也会在…
JavaScript中实现继承的6种方案 01-原型链的继承方案 function Person(){ this.name="czx"; } function Student(){} var p1=new Person(); Student.prototype=p1; var student1=new Student(); console.log(student1); // Person{} console.log(student1.name); // czx 这是最简单的一种方案,同…
ES2017 标准引入了 async 函数,使得异步操作变得更加方便. async 函数是什么?一句话,它就是 Generator 函数的语法糖.研究 async 的原理,就必须先弄清楚 Generator 是个啥. Generator 函数是 ES6 提供的一种异步编程解决方案,语法行为与传统函数完全不同. 形式上,Generator 函数是一个普通函数,但是有两个特征.一是,function关键字与函数名之间有一个星号:二是,函数体内部使用yield表达式,定义不同的内部状态(yield在英…
之前,你大概都是通过搜索别人的经验来解决问题.如果能够理解MySQL的工作原理,那么在遇到问题的时候,是不是就能更快地直戳问题的本质? 以实战中的常见问题为切入点,带你剖析现象背后的本质原因.为你串起各个零散的知识点,再由线到面带你构建MySQL知识体系.旨在给你一个从理论到实战的系统性指导,让你少走弯路,彻底搞懂MySQL. 林晓斌,网名丁奇,前阿里资深技术专家.作为活跃的MySQL社区贡献者,丁奇专注于数据存储系统.MySQL性能优化和功能改进,热衷于解决MySQL疑难问题. MySQL实战…
前言 在之前的文章中,壹哥给大家讲解了Java的第一个案例HelloWorld,并详细给大家介绍了Java的标识符,而且现在我们也已经知道该使用什么样的工具进行Java开发.那么接下来,壹哥会集中精力带大家学习Java的各种细节内容,比如什么是变量?Java里有哪些数据类型?请大家赶紧拿出小本本,做好笔记哦. ------------------------------前戏已做完,精彩即开始---------------------------- 全文大约[4000]字,不说废话,只讲可以让你学…