左耳听风 第四十九周

左耳听风 第四十九周

每周完成一个ARTS: 每周至少做一个 leetcode 的算法题、阅读并点评至少一篇英文技术文章、学习至少一个技术技巧、分享一篇有观点和思考的技术文章。(也就是 Algorithm、Review、Tip、Share 简称ARTS)

Algorithm

开始按照类型来刷题,本周为:双指针、排序贪心 相关,以下为个人题解:

LeetCode633. 平方数之和

LeetCode345. 反转字符串中的元音字母

LeetCode524. 通过删除字母匹配到字典里最长单词

LeetCode347. 前 K 个高频元素

LeetCode75. 颜色分类

LeetCode455. 分发饼干

LeetCode435. 无重叠区间

LeetCode452. 用最少数量的箭引爆气球

LeetCode605. 种花问题

LeetCode763. 划分字母区间

review

「What I’m Telling Business People About Why Relational Databases Are So Bad」(强化你的 HTTP 安全头)

我们只需要通过一些简单的 HTTP 安全头配置就可以提高我们 web应用的安全性,让我们来了解下 HTTP 安全头相关的知识吧。

HTTP 安全头是什么

当浏览器向服务器请求一个页面时,服务器会回应带有 HTTP 响应头的内容,包括:内容编码、缓存控制、响应状态等,这些都是 HTTP 安全头。HTTP 安全头告诉请求的浏览器,如何处理你的页面内容,例如使用严格传输安全,你可以强制浏览器使用 HTTPS 通讯。

七种不同的 HTTP 安全头:

Content Security Policy Header(内容安全策略头):提供一个额外的安全层,同过定义网站内容的来源以帮助网站抵御跨站脚本攻击、代码注入 等网络攻击。

X-XSS-Protection Header (防跨站脚本攻击头)面对跨站脚本进行过滤,以保护网站的安全。

HTTP Strict Transport Security Header(HTTP 严格传输头)。采用 HTPPS 来传输内容,而不是通过有可能被感染的 HTPP 来传输内容建立连接。

X-Frame-Options Header 通过禁止网站的 iframes 加载来防止网站被挟持。

Expect-CT Header 通过记录和验证浏览器请求证书的合法性来保护网站安全。

X-Content-Type-Options Header 通过阻止浏览器的从已声明内容中窃取响应来阻止偷渡式下载,已确保内容的正确。

Feature-Policy Header 提供禁止嵌入框架的能力已保护网站。

如何验证我们的 HTTP 安全头

1、使用 KeyCDN’s HTTP Header Checker Tool 等验证工具来验证

2、使用谷歌浏览器的开发者工具来查看响应头

3、使用 securityheaders.io 来查看我们的网站。

Tip

如何定位并优化慢查询 SQL?(以 MySQL 数据库为例)
1、 开启慢 SQL 日志,根据慢 SQL 日志定位慢 SQL 语句。show variables like '%quer'% 可查询数据库设置,看是否开启慢 SQL 日志服务以及相应的存储位置

set global slow_query_log=on; # 开启慢 SQL 日志
set global long_query_time=1; # 设置慢 SQL 时间,即查询时间超过阈值则记录在日志

2、使用 explain 等工具分析 SQL
使用 show status like '%slow_queries%'; 查看慢 SQL 语句数量,然后打开本地的慢 SQL 日志文件。使用 explain SQL 语句 来分析我们的 SQL 语句。

3、修改 SQL 语句或让 SQL 使用索引。针对 explain 分析的 SQL 语句问题,添加索引或修改 SQL 语句,进行相应的

share

我所讨厌的一些招聘方式

经历了几个月的面试,从线上面试到线下宣讲会、招聘会的面试大都体验了一遍,这其中也遇见了一些令我很是讨厌的招聘。

你可能感兴趣的:(左耳听风)