Hex Book

我干了什么 究竟拿了时间换了什么

分布式搜索引擎-Elasticsearch

Elasticsearch

Elasticsearch 概述 在信息社会,数据可以被划分为 3 大类: 结构化数据:结构化的数据是可以使用关系型数据库表示和存储的数据,表现为二维形式的数据,也就是传统 DBMS 数据库存储的信息。 半结构化数据:半结构化数据是结构化数据的一种形式,它包含相关标记,用来分隔语义元素以及对记录和字段进行分层,因此它也被称为自描述的结构。常见的半结构数...

代码整洁之道

Clean Code

Later equals never. 1.有意义的命名 软件中随处可见命名,我们给变量、函数、类和包命名,下面是起一个好名字应该遵从的规则。 名副其实 选个好名字要花时间,但是省下来的时间比花掉的多,注意命名,而且一旦发现有更好的命名就换掉旧的,这样做,读代码的人都会更开心。 指明计量单位和计量单位的名称,如:int elapsedTimeInDays、int f...

SpringBoot - Cache

SpringBoot 与缓存

SpringBoot 官网:https://spring.io/projects/spring-boot/ Spring Boot makes it easy to create stand-alone, production-grade Spring based Applications that you can “just run”. Java 缓存 在开发中,使用缓存的大致步骤:...

Redis 高可用

「Redis」哨兵与集群

Redis 高可用常见的两种方式: 主从复制(Replication-Sentinel 模式) Redis集群(Redis-Cluster 模式) Redis 主从复制 Redis 主从复制:将一台 Redis 服务器的数据,复制到其他的 Redis 服务器。前者称为主节点-master,后者称为从节点-slave,数据的复制是单向的,只能由主节点到从节点,master 以...

Redis 基础

「中间件」Redis 的基本使用

Redis 官网:https://redis.io/ Redis 文档:http://www.redis.cn/,https://www.redis.net.c NoSQL 与 Redis 什么是 NoSQL? NoSQL(Not Only SQL),指的是非关系型的数据库,NoSQL 用于超大规模数据的存储,这些类型的数据存储不需要固定的模式,无需多余操作就可以横向扩展。 为什么...

Vim 编辑器

「Linux」Vim Editor

Vim 是一个功能强大的全屏幕文本编辑器,是 Linux/Unix 上最常用的文本编辑器,它的作用是建立,编辑,显示文本文件。 Vim 没有菜单,只有命令, Vim 工作模式 Vim 的工作模式共有3种,命令模式,编辑模式,末行模式。 命令模式:在 shell 中使用 vim filename 命令进入到 vim 的编辑模式,filename 可以是已经存在的...

Shell 编程

「Linux」Shell Programming

Shell 脚本语言是实现 Linux/UNIX 系统管理及自动化运维所必备的重要工具, Linux/UNIX 系统的底层及基础应用软件的核心大都涉及 Shell 脚本的内容。 Shell 脚本是一种通过 Shell 语言编写的脚本程序,在脚本中可以编写一系列的系统指令。 通过执行编写好 Shell 脚本我们可以方便,快速,灵活的执行一些系统任务,提升我们的工作效率,减少不必要的重复工作...

Linux 下安装 MySQL

「软件安装」MySQL

MySQL Database Service is a fully managed database service to deploy cloud-native applications using the world’s most popular open source database. It is 100% developed, managed and supported by th...

Avoiding success at all cost

Watching "Escape from the Ivory Tower: The Haskell Journey"

“Avoiding success at all cost” is the informal motto behinds Haskell. It could be parenthesized in two ways, either “Avoiding (success at all cost)” or “(Avoiding sucess) (at all cost)”. I’m not going to interpret them directly but rather to share some thoughts on “the success vs. costs” basing ...

「知乎」如何通俗地解释停机问题?

How to explain the Halting Problem?

这篇文章转载自我在知乎上的回答 我用 Python 伪代码来解释下,我觉得对这个问题有兴趣的应该都是有点编程基础的,所以直接上 code 应该是最容易的。 背景知识 「停机问题」研究的是:是否存在一个「程序」,能够判断另外一个「程序」在特定的「输入」下,是会给出结果(停机),还是会无限执行下去(不停机)。 在下文中,我们用「函数」来表示「程序」,「函数返回」即表示给出了结果。...