加载中
让 Java 8 改进我们的程序

这些文字写的很迟,因为 Java 8 已经发布六年有余。 本文不是 Java 语法或 Java 8 新特性教程,故不涉及系统、细致的用法介绍而是只包含 Java 8 对旧程序的改进措施。 摘要 本文叙述了 Java...

Elasticsearch-07-提高读写性能

本文以 Elasticsearch 7.9.2 为准。 提高写性能 客户端方面: (1)要运用多线程批量写。 (2)通过测试,确定每批写多少。 (3)还有通过监控,得到响应 429 的出现频次和规律,以此确定线程...

Elasticsearch-06-分片大小设定和分片管理,集群容量规划

本文以 Elasticsearch 7.9.2 为准。 分片大小 日志类:单个分片不超过 50G 搜索类:单个分片不超过 20G 先估算总数据量,再根据分片大小,确定分片数。 容量规划 容量规划时要考虑的因素: ...

Elasticsearch-05-集群的热(hot)温(warm)架构

本文以 Elasticsearch 7.9.2 为准。 什么是 hot-warm 架构 将 ES 集群的数据节点分为两类,分别用来存储访问频繁和不频繁的数据。 热节点硬件配置高(CPU、网络、内存都要好,且通常配 SSD)...

Elasticsearch-04-文档操作并发控制

本文以 Elasticsearch 7.9.2 为准。 并发控制 悲观并发控制:在操作可能出现变更冲突的资源时,对资源加锁,操作完成后解锁。 乐观并发控制:认为变更冲突的可能性很小,先不加锁,直接进行操...

Elasticsearch-03-文档的存储路由

本文以 Elasticsearch 7.9.2 为准。 问题 在一个索引中创建文档时,如何确定放到哪个分片中? 潜在 3 个方式: 随机 将文档 id 和分片编号的对应关系保存在数据库 计算代替存储:按照某种算法...

Elasticsearch-02-文档基本操作

本文以 Elasticsearch 7.9.2 为准。 基础增删改查 创建文档 // 创建文档,自动生成 id POST /<索引名>/_doc { "foo": "bar" } // 创建文档并指定 id,id 已存在则报错 PUT /<索引名>/_doc/?o...

Elasticsearch-01-基本概念:文档、索引、节点、集群、分片、副本

本文以 Elasticsearch 7.9.2 为准。 文档和索引面向开发者,是逻辑概念;节点、分片、集群面向运维,是物理概念。 文档 一个文档理解为一个 JSON 对象即可。文档是 ES 中存储、搜索的最小单位...

从 Kubernetes 到 PaaS

本文并非 Kubernetes 教程或 PaaS 研发教程,不涉及具体或详细的实现方式。 摘要 本文介绍了 Kubernetes 在实际生产中的不便与不足,以及基于 Kubernetes 和云平台基础设施研发 PaaS 需要干的...

09/23 18:59
89
那个执事,腾云:记一次某大型医院的同城双数据中心上云过程

摘要 本文介绍了我曾经的一个雇主给全国排行前 5 的某公立医院上私有云 + 容器云的过程。包括普通 Web 系统的迁移,也包括商业网络、存储设备的纳管,以及异构计算(GPU、FPGA)的支持。 医院...

git 设置对某个仓库不验证 https 证书

以 https://abc.dev/user/repo.git 为例。 引言 直接在全局设置 git config --global http.sslVerify "false" 当然是一个方法,但此方法的不足在于会玷污全局配置。下面介绍一个即方便又不玷...

03/09 12:39
860
LeetCode-0003 无重复字符的最长子串

题目 给定一个字符串,请你找出其中不含有重复字符的【最长子串】的长度。 示例 1: 输入: "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。 示例 2: 输入: "...

Go
02/14 15:02
194
Redis 缓存穿透、缓存雪崩的概念及其预防

缓存穿透 【什么是缓存穿透】 频繁查询不在缓存中的数据,给原本被缓存保护的系统过大压力。 【为什么会发生缓存穿透】 1. 程序没写好; 2. 恶意攻击。 【怎样防止缓存穿透】 1. 在对 key 进...

01/30 16:01
292
Redis 知识整理

本文以 Redis 5.0.7 为准。 基本概念 Redis 是开源的(BSD 协议)内存数据存储。 以 KV 的方式存储数据。 key 类型固定为 string,value 支持的类型有: string list set zset hashtable 淘汰...

LeetCode-0002 两数相加

题目 给出两个【非空】的链表用来表示两个非负的整数。其中,它们各自的位数是按照【逆序】的方式存储的,并且它们的每个节点只能存储【一位】数字。 如果,我们将这两个数相加起来,则会返回...

2019/12/31 15:32
91
LeetCode-0001 两数之和

题目 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。 你可以假设每种输入只会对应一个答案(即,nums 中的元素互不相同)...

Go
2019/12/31 15:30
61
最容易被用错的 10 个成语

差强人意:勉强令人满意。(褒义!) 七月流火:天气转凉。 明日黄花:过时的事物。不存在“昨日黄花”一词。 屡试不爽:多次尝试,不出差错。 明火执仗:明目张胆地为非作歹。 栉风沐雨:不...

2019/11/29 15:19
71
Ceph 中的 Placement Group(PG)状态详解

Placement Group(PG)的状态有: Creating Peering Activating Active Backfilling Backfill-toofull Backfill-wait Incomplete Inconsistent Peered Recovering Recovering-wait Remapped...

2019/09/03 15:21
3.7K
Nginx 的 location 匹配规则

约定 本文以 Nginx 1.17.6 主线版为准。 引言 location 是 Nginx 配置中的重要一环,用来配置动静分离、反向代理等功能。 而 location 匹配规则,网上有太多错误的说法,今予以纠正并给出正确...

2019/06/18 15:35
352
Spring MVC 异构响应

我们知道,很多软件和网站以 REST API 的形式对外提供服务,而同一个 API 端点在不同情形下(如执行成功或失败可能响应不同格式的响应体)。 例如,ElasticSearch 的某些 API 端点,执行成功...

没有更多内容

加载失败,请刷新页面

返回顶部
顶部