自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

全菜工程师小辉的博客

计算机视觉菜鸟去做服务器开发咯~

  • 博客(17)
  • 资源 (17)
  • 收藏
  • 关注

原创 关于三次握手与四次挥手你要知道这些

TCP的整个连接过程如果没有基础的话,直接看这张图或者网络上各种文字描述,十分生涩,所以先看懂接下来的握手挥手的图,理解之后,再看这个有限状态机就感觉原来如此简单。三次握手握手过程第一次握手:主机A发送位码为syn=1,随机产生seq number=x的数据包到服务器,客户端进入SYN_SEND状态,等待服务器的确认;主机B由SYN=1知道A要求建立连接。第二次握手:主机B收到请...

2019-05-31 21:55:48 5601

原创 你该用HTTP2了

HTTP版本简史HTTP/0.9:(1991年)基于GET请求的文本传输协议HTTPS:(1994年)安全的HTTP传输协议HTTP/1.0:(1996年)增加HTTP头、扩展PUT、POST等方法HTTP/1.1:(1999年)长连接、流水线支持,最广泛使用的HTTP传输协议SPDY:(2012年)针对HTTP的增强,工作在SSL层之上、HTTP层之下HTTP/2:(2...

2019-05-29 23:08:06 5533

原创 Redis哨兵(Sentinel)模式快速入门

当主服务器宕机后,需要手动把一台从服务器切换为主服务器,这就需要人工干预,费事费力,还会造成一段时间内服务不可用。 所以更多时候,我们优先考虑哨兵(sentinel) 模式。Redis sentinel是Redis高可用实现方案:故障发现、故障自动转移、配置中心、客户端通知。从Redis的2.6版本开始提供的,但是当时这个版本的模式是不稳定的,直到Redis的2.8版本以后,这个哨兵模式才稳定...

2019-05-29 08:00:00 5948

原创 还在用Executors创建线程池?小心内存溢出

线程池不建议使用Executors去创建,而是通过ThreadPoolExecutor的方式,这样的处理方式让写的同学更加明确线程池的运行规则,规避资源耗尽的风险。Executors各个方法的弊端:newFixedThreadPool和newSingleThreadExecutor:主要问题是堆积的请求处理队列可能会耗费非常大的内存,甚至OOM。(笔者注:阻塞队列均采用LinkedBloc...

2019-05-28 22:06:56 8738

原创 Redis主从复制的原理

在Redis集群中,让若干个Redis服务器去复制另一个Redis服务器,我们定义被复制的服务器为主服务器(master),而对主服务器进行复制的服务器则被称为从服务器(slave),这种模式叫做主从复制模式。数据流向是单向的,只能是从master到slave一个slave只能有一个master主从复制的作用 为数据提供多个副本,实现高可用 实现读写分离(主节点...

2019-05-28 08:00:00 6062 1

原创 Redis持久化的原理及优化

Redis提供了将数据定期自动持久化至硬盘的能力,包括RDB和AOF两种方案,两种方案分别有其长处和短板,可以配合起来同时运行,确保数据的稳定性。RDB保存数据快照至一个RDB文件中,用于持久化。RDB操作和Mysql Dump相似。执行方式save。同步操作,会阻塞Redis。bgsave。调用linux的fork(),然后使用新的线程执行复制。但是fork期间也会阻塞Redis,但...

2019-05-26 09:00:56 5515

原创 Redis的高级特性一览

应用场景:缓存系统:用于缓解数据库的高并发压力计数器:使用Redis原子操作,用于社交网络的转发数,评论数,粉丝数,关注数等排行榜:使用zset数据结构,进行排行榜计算实时系统:使用Redis位图的功能实现布隆过滤器,进而实现垃圾邮件处理系统消息队列:使用list数据结构,消息发布者push数据,多个消息订阅者通过阻塞线程pop数据,以此提供简单的消息队列能力之所以说简单,是Re...

2019-05-25 19:27:48 5561

原创 session一致性的解决方案

什么是session?服务器为每个用户创建一个会话,存储用户的相关信息,以便多次请求能够定位到同一个上下文,这个相关信息就是session。这样,当用户在应用程序的Web页之间跳转时,存储在session对象中的变量将不会丢失,而是在整个用户会话中一直存在下去。session是对http无状态协议的补充,达到状态保持的目的什么是session一致性问题?假设用户包含登录信息的sessio...

2019-05-22 07:57:58 5845

原创 快速了解会话管理三剑客cookie、session和JWT

存储位置三者都是应用在web中对http无状态协议的补充,达到状态保持的目的cookie:cookie中的信息是以键值对的形式储存在浏览器中,而且在浏览器中可以直接看到数据。下图为safari的cookie截图:session:session存储在服务器中,然后发送一个cookie存储在浏览器中,cookie中存储的是session_id,之后每次请求服务器通过session_id可以获取...

2019-05-21 22:31:58 5582

原创 动态规划快速入门

动态规划算法一直是面试手撕算法中比较有挑战的一种类型。很多的分配问题或者调度问题实际上都可能用动态规划进行解决。(当然,如果问题的规模较大,有时候会抽象模型使用动归来解决,有时候则可以通过不断迭代的概率算法解决查找次优解)所以,动归很重要,至少算法思想很重要。文章目录什么是动态规划?分治与动态规划动态规划的步骤问题建模问题求解的各个方法暴力枚举:递归:备忘录算法:动态规划算法:例题什么是动态...

2019-05-19 16:07:56 6083

原创 图解一致性hash算法和实现

一致性hash算法是什么?一致性hash算法,是麻省理工学院1997年提出的一种算法,目前主要应用于分布式缓存当中。一致性hash算法可以有效地解决分布式存储结构下动态增加和删除节点所带来的问题。在Memcached、Key-Value Store、Bittorrent DHT、LVS中都采用了一致性hash算法,可以说一致性hash算法是分布式系统负载均衡的首选算法。传统hash算法的弊...

2019-05-18 18:35:13 6128

原创 Spring与后端模板引擎的故事

现在很多开发,都采用了前后端完全分离的模式,随着近几年前端工程化工具和MVC框架的完善,使得这种模式的维护成本逐渐降低。但是这种模式目前并不利于SEO(前后端分离的SEO问题会慢慢改善),而且某些场景使用模板引擎会更方便,比如说邮件模板以及数据变化不频繁的后台系统。Spring,确切来说是Spring MVC除了可以实现RESTful web服务之外,还可以使用它提供动态HTML内容。Sprin...

2019-05-18 10:51:11 5552

原创 SpringIoC和SpringMVC的快速入门

Spring的优势?降低了组件之间的耦合性 ,实现了软件各层之间的解耦可以使用容易提供的众多服务,如事务管理,消息服务等容器提供单例模式支持容器提供了AOP技术,利用它很容易实现如权限拦截,运行期监控等功能Spring的IoC机制降低了业务对象替换的复杂性容器提供了众多的辅助类,能加快应用的开发Spring对于主流的应用框架提供了集成支持,如Hibernate,JPA,Mybati...

2019-05-12 21:05:01 5890

原创 markdown的快速入门干货(持续更新,欢迎收藏)

本文目录:文章目录1. markdown入门2. markdown的一些使用技巧2.1 如何定义页内跳转:2.2 如何生成目录树:2.3 如何将md文件放到微信公众号中:1. markdown入门markdown入门其实很简单,以前我很喜欢用有富文本编辑的编辑器来记录东西,总觉得像Word一样修改格式很方便。但是这样写出来的文章或者笔记有个很致命的问题,就是如果将笔记粘贴到另一个平台或者软件...

2019-05-08 23:47:45 5629

原创 Swoole引擎原理的快速入门干货

过去半年使用PHP和Java两种技术栈完成了一个游戏服务器项目。由于项目中有高频的网络请求,所以PHP技术栈尝试使用Swoole引擎(基于事件的高性能异步并行网络通信引擎)来完成部分游戏业务。Swoole的安装安装swoole很简单,由于是国人做的项目,很多issue可以在官网文档找到答案。安装分两种:编译安装。直接去github或者gitee去下载官方的发行版,编译安装后,将so拓展写入...

2019-05-04 22:24:11 6342

原创 Jetbrains好用的插件(经验总结)

笔者使用过idea,phpstorm,webstorm,pycharm和goland开发过项目,不得不说,Jetbrain的编辑器每一款都挺好用的。非要挑毛病的话,可能就是内存占用大啊,不如sublime,atom或者vscode轻量这样类似的论调吧,暂且不谈(毕竟编辑器话题一直是程序员互撕的话题之一)。本文列举了java开发和php开发中,笔者使用的IDE插件:IDEA插件汇总:Alib...

2019-05-04 14:38:47 12391

原创 JDK8函数式编程快速入门干货

Java8引入函数式编程,极大地提高了编码效率,对于习惯了原有Java代码风格的coder,确实需要好好熟悉一番才能熟练地coding。本文每一条讲解都配置了最简短的代码,适合快速入门或者字典使用,但阅读之后还是需要多看函数原型多看源码,灵活使用为好。本文目录:文章目录函数式编程语法常见的Java函数式接口ConsumerSupplierFunctionPredicateBinaryOper...

2019-05-03 06:33:27 5971

世界地理(大陆和港澳台同级关系版).sql

包含世界各国以及主要城市的信息(简体,繁体,英文名称),国内精确到区县,国外精确到市。以树形结构存储,可以获取当前国家下属城市,也可以获取当前城市所属国家或洲

2020-10-09

世界地理(大陆和港澳台层级关系版).sql

包含世界各国以及主要城市的信息(简体,繁体,英文名称),国内精确到区县,国外精确到市。以树形结构存储,可以获取当前国家下属城市,也可以获取当前城市所属国家或洲

2020-10-09

大数据技术之高频面试题.docx

大数据技术之高频面试题.docx

2020-05-19

Spring的69个问题.docx

有关spring框架的69个问答题,有详细答案,全面总结Spring常见的问题。

2019-08-21

mit最新的人脸数据集

mit最新的人脸数据集

2016-02-10

SPAMS_matlab_v2.5

一个功能强大,为解决各种稀疏估计问题的开源优化工具箱

2016-01-22

Python.Machine.Learnin

15年新书,有关Python和机器学习的,非常好的书,英文版·

2016-01-21

Learn Python The Hard Way 第三版

学习Python的经典书籍。。。。。。。。。。。。。。。。。。

2016-01-21

structured sparsity:thesis algorithms and applications

关于结构稀疏十分适合入门的好资源,里面有很多彩图,只是简单易懂。

2015-08-27

《好学的c..》的代码和习题答案

《好学的c++》第二版的资源,刚从官网下载的

2015-08-11

冈萨雷斯matlab版数字图像处理的最新源文件,刚下载的

源代码是需要购买正版书,用书后的序列号发邮件,才能得到源代码,所以很难的。。。

2015-06-01

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除