常见的缓存更新策略剖析

缓存一般是为了应对高并发场景、缓解数据库读写压力,而将数据存储在读写更快的某种存储介质中(如内存),以加快读取数据的速度。缓存一般分为本地缓存(如 java 堆内存缓存)、分布式缓存(如 redis)等。

作者:何轩
链接:https://zhuanlan.zhihu.com/p/86396877

阅读更多

使用 backport 更新 Debian

Backport 的含义是”向后移植”,就是将软件新版本的某些功能移植到旧版本上来,这就称为 backport。

Debian 向来以稳定性著称,所以就存在一个问题,官方源分发的软件版本比软件本身的版本总是要慢不少,所以就有了 backports 源。 backports 主要从 testing 源,部分安全更新从 unstable 源重新编译包,使这些包不依赖于新版本的库就可以在 debian 的 stable 发行版上面运行。所以 backports 是 stable 和 testing 的一个折衷。

阅读更多

如何防止CSRF攻击?

随着互联网的高速发展,信息安全问题已经成为企业最为关注的焦点之一,而前端又是引发企业安全问题的高危据点。在移动互联网时代,前端人员除了传统的 XSS、CSRF 等安全问题之外,又时常遭遇网络劫持、非法调用 Hybrid API 等新型安全问题。当然,浏览器自身也在不断在进化和发展,不断引入 CSP、Same-Site Cookies 等新技术来增强安全性,但是仍存在很多潜在的威胁,这需要前端技术人员不断进行“查漏补缺”。

作者:美团技术团队
链接:https://juejin.cn/post/6844903689702866952

阅读更多

Docker Engine API 初始

Engine API是 Docker Engine 提供的 HTTP API。它是 Docker 客户端用于与引擎通信的API,因此 Docker 客户端可以做的所有事情都可以通过 API 来完成。

默认 Docker Engine API 只能通过 socket 访问,如果想通过端口访问则需要手动修改服务。

阅读更多

什么是 JWT,JWS与JWE

随着移动互联网的兴起,传统基于 session/cookie 的 web 网站认证方式转变为了基于 OAuth2 等开放授权协议的单点登录模式(SSO),相应的基于服务器 session+ 浏览器 cookie 的 Auth 手段也发生了转变,Json Web Token 出现成为了当前的热门的 Token Auth 机制。

作者:0xCoffee
链接:https://www.jianshu.com/p/50ade6f2e4fd

阅读更多

解决 Electron 安装慢

使用npm安装electron中,即使npm已经替换了 taobao 源镜像依然很慢,因为安装中脚本会下载境外的特定版本的 electronprebuild 版本

Window

使用 Window 平台,可以设置系统变量,将 ELECTRON_MIRROR 设定为 http://npm.taobao.org/mirrors/electron ,然后重新开启终端执行安装,此时脚本就会通过国内源进行下载

阅读更多

什么是 QPS、响应时间、吞吐量

峰值时间每秒请求数(QPS)

原理:每天 80%的访问集中在 20%的时间里,这 20%时间叫做峰值时间

公式:( 总 PV 数 _ 80% ) / ( 每天秒数 _ 20% ) = 峰值时间每秒请求数(QPS)

机器:峰值时间每秒 QPS / 单台机器的 QPS = 需要的机器

每天 300w PV 的在单台机器上,这台机器需要多少 QPS?

例如:( 3000000 _ 0.8 ) / (86400 _ 0.2 ) = 139 (QPS),因此一般需要达到 139QPS

每秒查询率 QPS 是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准。

每秒查询率,因特网上,经常用每秒查询率来衡量域名系统服务器的机器的性能,其即为 QPS。对应 fetches/sec,即每秒的响应请求数,也即是最大吞吐能力。

阅读更多

Github 常出现的缩写含义

这里整理一下经常看到 Github 的缩写都是什么含义

  • PR: Pull Request. 拉取请求,给其他项目提交代码
  • LGTM: Looks Good To Me. 朕知道了 代码已经过 review,可以合并
  • SGTM: Sounds Good To Me. 和上面那句意思差不多,也是已经通过了 review 的意思
  • WIP: Work In Progress. 传说中提 PR 的最佳实践是,如果你有个改动很大的 PR,可以在写了一部分的情况下先提交,但是在标题里写上 WIP,以告诉项目维护者这个功能还未完成,方便维护者提前 review
    部分提交的代码。
  • PTAL: Please Take A Look. 你来瞅瞅?用来提示别人来看一下
  • TBR: To Be Reviewed. 提示维护者进行 review
  • TL , DR: Too Long; Didn’t Read. 太长懒得看。也有很多文档在做简略描述之前会写这么一句
  • TBD: To Be Done(or Defined/Discussed/Decided/Determined). 根据语境不同意义有所区别,但一般都是还没搞定的意思
  • PRD : Product Requirement Document. 产品需求文档
  • TBH :to be honest 老实说
  • IMAO :laugh my ass off 笑到不行,超爆笑
  • BTW :by the way 顺带一提
  • TTYL:talk to you later 晚点聊
  • IDK :l don’t know 我不知道
  • AKA:as known as 也就是,以…为人所知
  • plz:please 拜托
  • thx:thanks 谢谢
  • tmr:tomorrow 明天
  • ppl:people 人们,大家
  • IMHO:in my humble opinion 依我浅见

像素尺寸

一张图片的打印出来的实际尺寸是由电子图片的像素和分辨率共同决定的,像素(Pixel)是指构成图片的小色点,分辨率(单位 DPI)是指每英寸(Inch)
上的像素数量,可以看做是这些小色点的分布密度;像素相同时,分辨率越高则像素密度越大,实际打印尺寸越小,图像也越清晰。

实际尺寸(英寸)=像素/分辨率; 1 英寸=2.54 厘米; 如一张图片宽为 600 像素,分辨率为 300,那么实际打印宽度为:600/300=2 英寸,约为 5 厘米。

通常手机、电脑上用的照片分辨率都是 72,如果照片要打印或印刷出来,分辨率要 300 或 300 以上。