Web 安全 之 Server-side request forgery

2021-03-01
阅读 5 分钟
6.4k
在本节中,我们将解释 server-side request forgery(服务端请求伪造)是什么,并描述一些常见的示例,以及解释如何发现和利用各种 SSRF 漏洞。

Web 安全 之 Directory traversal

2021-03-01
阅读 2 分钟
5.6k
目录遍历(也称为文件路径遍历)是一个 web 安全漏洞,此漏洞使攻击者能够读取运行应用程序的服务器上的任意文件。这可能包括应用程序代码和数据、后端系统的凭据以及操作系统相关敏感文件。在某些情况下,攻击者可能能够对服务器上的任意文件进行写入,从而允许他们修改应用程序数据或行为,并最终完全控制服务器。

Web 安全 之 CORS

2021-02-28
阅读 9 分钟
7.7k
CORS(跨域资源共享)是一种浏览器机制,它允许对位于当前访问域之外的资源进行受控访问。它扩展并增加了同源策略的灵活性。然而,如果一个网站的 CORS 策略配置和实现不当,它也可能导致基于跨域的攻击。CORS 不是针对跨源攻击(例如跨站请求伪造 CSRF)的保护。

OAuth 2.0 之 Authorization code 与 Implicit

2021-01-28
阅读 4 分钟
4.3k
OAuth 2.0 是用于授权的行业标准协议。我们常见的比如第三方登录、授权第三方应用获取保存在其它服务商的个人数据,这种都是 OAuth 2.0 的应用场景。

解读 MySQL Client/Server Protocol: Connection & Replication

2020-12-20
阅读 8 分钟
7.1k
MySQL 客户端与服务器之间的通信基于特定的 TCP 协议,本文将会详解其中的 Connection 和 Replication 部分,这两个部分分别对应的是客户端与服务器建立连接、完成认证鉴权,以及客户端注册成为一个 slave 并获取 master 的 binlog 日志。

同步 MySQL 数据至 Elasticsearch/Redis/MQ 等的五种方式

2020-11-30
阅读 2 分钟
5.2k
在实际应用中,我们经常需要把 MySQL 的数据同步至其它数据源,也就是在对 MySQL 的数据进行了新增、修改、删除等操作后,把该数据相关的业务逻辑变更也应用到其它数据源,例如:

ES 分布式搜索的运行机制

2020-11-17
阅读 2 分钟
3.8k
ES 分布式搜索的运行机制ES 有两种 search_type 即搜索类型:query_then_fetch (默认)dfs_query_then_fetchquery_then_fetch用户发起搜索,请求到集群中的某个节点。query 会被发送到所有相关的 shard 分片上。每个 shard 分片独立执行 query 搜索文档并进行排序分页等,打分时使用的是分片本身的 Local Term/Document...

ES Search Template

2020-11-16
阅读 8 分钟
2.7k
ES Search Template所谓 search template 搜索模板其实就是:预先定义好查询语句 DSL 的结构并预留参数搜索的时再传入参数值渲染出完整的 DSL ,最后进行搜索使用搜索模板可以将 DSL 从应用程序中解耦出来,并且可以更加灵活的更改查询语句。例如: {代码...} 构造出来的 DSL 就是: {代码...} 在模板中通过 {{ }} 的方...

构造请求日志分析系统

2020-11-07
阅读 3 分钟
3.5k
请求日志记录哪些数据time_local : 请求的时间remote_addr : 客户端的 IP 地址request_method : 请求方法request_schema : 请求协议,常见的 http 和 httpsrequest_host : 请求的域名request_path : 请求的 path 路径request_query : 请求的 query 参数request_size : 请求的大小referer : 请求来源地址,假设你在 a.com...

ES 自定义打分 Function score query

2020-11-02
阅读 7 分钟
12.3k
ES 会为 query 的每个文档计算一个相关度得分 score ,并默认按照 score 从高到低的顺序返回搜索结果。在很多场景下,我们不仅需要搜索到匹配的结果,还需要能够按照某种方式对搜索结果重新打分排序。例如:

数据管道 Logstash 入门

2020-11-01
阅读 8 分钟
5.5k
Logstash 入门Logstash 是什么Logstash 就是一个开源的数据流工具,它会做三件事:从数据源拉取数据对数据进行过滤、转换等处理将处理后的数据写入目标地例如:监听某个目录下的日志文件,读取文件内容,处理数据,写入 influxdb 。从 kafka 中消费消息,处理数据,写入 elasticsearch 。为什么要用 Logstash ?方便省事...

又拍图片管家亿级图像之搜图系统的两代演进及底层原理

2020-06-04
阅读 4 分钟
4.9k
又拍图片管家当前服务了千万级用户,管理了百亿级图片。当用户的图库变得越来越庞大时,业务上急切的需要一种方案能够快速定位图像,即直接输入图像,然后根据输入的图像内容来找到图库中的原图及相似图,而以图搜图服务就是为了解决这个问题。

以图搜图系统工程实践

2020-04-11
阅读 5 分钟
3.4k
以图搜图系统工程实践 之前写过一篇概述: 以图搜图系统概述 。 以图搜图系统需要解决的主要问题是: 提取图像特征向量(用特征向量去表示一幅图像) 特征向量的相似度计算(寻找内容相似的图像) 对应的工程实践,具体为: 卷积神经网络 CNN 提取图像特征 向量搜索引擎 Milvus CNN 使用卷积神经网路 CNN 去提取图像特征...

以图搜图系统概述

2020-03-31
阅读 2 分钟
4.5k
以图搜图系统概述 以图搜图指的是根据图像内容搜索出相似内容的图像。 构建一个以图搜图系统需要解决两个最关键的问题:首先,提取图像特征;其次,特征数据搜索引擎,即特征数据构建成数据库并提供相似性搜索的功能。 图像特征表示 介绍三种方式。 图像哈希 图像通过一系列的变换和处理最终得到的一组哈希值称之为图像...

GitHub Actions 指南

2019-12-23
阅读 8 分钟
9.5k
GitHub Actions 使你可以直接在你的 GitHub 库中创建自定义的工作流,工作流指的就是自动化的流程,比如构建、测试、打包、发布、部署等等,也就是说你可以直接进行 CI(持续集成)和 CD (持续部署)。

给库加上酷炫的小徽章 & ava、codecov、travis 示例

2019-12-21
阅读 5 分钟
5.8k
给库加上酷炫的小徽章 & ava、codecov、travis 示例 GitHub 很多开源库都会有几个酷炫的小徽章,比如: 这些是怎么加上去的呢? Shields.io 首先这些徽章可以直接去 shields.io 网站自动生成。 比如: 就是 version 这一类里的一种图标,选择 npm 一栏填入包名,然后复制成 Markdown 内容,就会得到诸如: {代码...}...

使用 Makefile 构建指令集

2019-12-15
阅读 3 分钟
6.2k
make 是一个历史悠久的构建工具,通过配置 Makefile 文件就可以很方便的使用你自己自定义的各种指令集,且与具体的编程语言无关。例如配置如下的 Makefile :

实现 memcached 客户端:TCP、连接池、一致性哈希、自定义协议。

2019-12-09
阅读 6 分钟
4.7k
memcached 本身并不支持集群,为了使用集群,我们可以自己在客户端实现路由分发,将相同的 key 路由到同一台 memcached 上去即可。路由算法有很多,这里我们使用一致性哈希算法。

时序数据库 InfluxDB(七)

2019-11-17
阅读 1 分钟
3.5k
相关文章:时序数据库 InfluxDB(一)时序数据库 InfluxDB(二)时序数据库 InfluxDB(三)时序数据库 InfluxDB(四)时序数据库 InfluxDB(五)时序数据库 InfluxDB(六) 单点故障和容灾备份 InfluxDB 开源的社区版本面临的最大的问题就是单点故障和容灾备份,有没有一个简单的方案去解决这个问题呢? 既然有单点故障...

时序数据库 InfluxDB(六)

2019-11-06
阅读 6 分钟
6.6k
连续查询 Continuous Queries( CQ )是 InfluxDB 很重要的一项功能,它的作用是在 InfluxDB 数据库内部自动定期的执行查询,然后将查询结果存储到指定的 measurement 里。

时序数据库 InfluxDB(五)

2019-10-30
阅读 2 分钟
8.1k
InfluxDB 自带有一个监控系统,默认情况下此功能是开启的,每隔 10 秒中采集一次系统数据并把数据写入到 _internal 数据库中,其默认使用名称为 monitor 的 RP(数据保留 7 天),相关配置见配置文件中的:

时序数据库 InfluxDB(四)

2019-10-28
阅读 2 分钟
5.7k
所有数据先写入到 WAL( Write Ahead Log )预写日志文件,并同步到 Cache 缓存中,当 Cache 缓存的数据达到了一定的大小,或者达到一定的时间间隔之后,数据会被写入到 TSM 文件中。

时序数据库 InfluxDB(三)

2019-10-27
阅读 2 分钟
10.8k
相关文章:时序数据库 InfluxDB(一)时序数据库 InfluxDB(二)时序数据库 InfluxDB(三)时序数据库 InfluxDB(四)时序数据库 InfluxDB(五)时序数据库 InfluxDB(六) 数据类型 InfluxDB 是一个无结构模式,这也就是说你无需事先定义好表以及表的数据结构。 InfluxDB 支持的数据类型非常简单: measurement : strin...

时序数据库 InfluxDB(二)

2019-10-26
阅读 2 分钟
6.1k
相关文章:时序数据库 InfluxDB(一)时序数据库 InfluxDB(二)时序数据库 InfluxDB(三)时序数据库 InfluxDB(四)时序数据库 InfluxDB(五)时序数据库 InfluxDB(六) RP 先回顾一下 RP 策略( retention policy ),它由三个部分构成: DURATION:数据的保留时长。 REPLICATION:集群模式下数据的副本数,单节点无...

时序数据库 InfluxDB(一)

2019-10-25
阅读 4 分钟
20.1k
数据库种类有很多,比如传统的关系型数据库 RDBMS( 如 MySQL ),NoSQL 数据库( 如 MongoDB ),Key-Value 类型( 如 redis ),Wide column 类型( 如 HBase )等等等等,当然还有本系列文章将会介绍的时序数据库 TSDB( 如 InfluxDB )。