前言 本文接着上文应用限流进行讨论。 之前谈到的限流方案只能针对于单个 JVM 有效,也就是单机应用。而对于现在普遍的分布式应用也得有一个分布式限流的方案。 基于此尝试写了这个组件: github.com/crossov…
分类:开发基础
老题常谈之跨域
javascript http “跨域”可以说是web开发中最经常遇到的问题之一,虽然比较简单,也容易比较解决。但是从这个问题却可以了解到相当多的知识点。这里也详细总结一下吧。 什么是跨域 由于安全的原因,浏览器做了很多…
前后端常见的几种鉴权方式
最近在重构公司以前产品的前端代码,摈弃了以前的session-cookie鉴权方式,采用token鉴权,忙里偷闲觉得有必要对几种常见的鉴权方式整理一下。 目前我们常用的鉴权有四种: HTTP Basic Authenti…
掌握HTTP的方法
无论前端程序员,还是后端程序员,稍微系统的学习HTTP是非常值得的。实际上,它是日常开发一直在用的,之所以没有怎么太学习也可以工作,现存的各种框架帮了很多的忙。然而,想要快速理解概念,理解安全,使得开发性能高效的程序称为…
【英】七年开发之后的Go HTTP server 最佳实践
How I write Go HTTP services after seven years I’ve been writing Go (Golang when written down) since r59 …
Fetch 的手动终止
今天在写一个前端页面的时候发现,我需要实现一个类似 Google 搜索的联想功能时,我需要手动终止自己发出去的请求,比如: 类似输入联想 在这个时候,假如用户一直输入,如果不做处理那么就会导致 1s 内很多的请求,这是不…
图解HTTP缓存
官方解释 先来一段百度百科的解释: 浏览器缓存(Browser Caching)是为了节约网络的资源加速浏览,浏览器在用户磁盘上对最近请求过的文档进行存储,当访问者再次请求这个页面时,浏览器就可以从本地磁盘显示文档,这样…
[译]构建第一个Go微服务
第二部分: Go微服务 – 构建我们的第一个服务 第二部分包含: 设置我们的Go工作空间。 构建我们第一个微服务。 通过HTTP使用Gorilla Web Toolkit来提供一些JSON服务。 介绍 虽然通…
REST接口设计规范总结
简介 Representational State Transfer 简称 REST 描述了一个架构样式的网络系统。REST 指的是一组架构约束条件和原则。满足这些约束条件和原则的应用程序或设计就是 RESTful。 概…
升级NGINX支持HTTP/2服务端推送
内容概览 NGINX从1.13.9版本开始支持HTTP/2服务端推送,上周找时间升级了下NGINX,在博客上试验新的特性。 升级工作主要包括: 升级NGINX 修改NGINX配置 修改wordpress主题 升级NGIN…
Node.Js实现端口重用原理解析
起源,从官方实例中看多进程共用端口 const cluster = require('cluster'); const http = require('http'); const numCPUs = require('o…
如何深入Python虚拟机追查HTTP服务core dump导致502的问题
概述 今日头条目前大部分 Python 的 HTTP 服务都是用 uWSGI 托管 Python 多进程的 Django 或者 Flask 框架的 App。而多进程模型就会有进程间通信的问题,对此 uWSGI 提供了 s…