Elasticsearch 是什么?

Elasticsearch 是一个分布式搜索和分析引擎、可扩展的数据存储和向量数据库,基于 Apache Lucene 构建。它针对生产规模工作负载的速度和相关性进行了优化。使用 Elasticsearch,您可以近乎实时地搜索、索引、存储和分析各种大小的数据。

使用场景

Elasticsearch 使用范围越来越广。以下是一些示例:

可观察性

阅读全文 »

折腾完电脑的远程桌面,现在开始折腾手机了。手机上的远程桌面用的比较少,但偶尔还是需要用到的,比如想在电脑上回微信,这里记录一下开启vnc远程的方法。

首先要在手机上开启vnc服务器,droidVNC-NG是一个在手机上运行的VNC服务器项目地址:
https://github.com/bk138/droidVNC-NG。

下载安装droidVNC-NG,然后打开,界面如下:

可以根据自己的需求设置密码,然后点击【开始】,会提示授权,这四个权限都得是已授权才行。

阅读全文 »

现在把mac当成服务器每天一直开着,也挺耗电的,而且大部分时候也是在空转待机,所以设置自动开关机还是很有必要的。定时开关机,也能让电脑休息一下。

mac自带了自动开关机功能,但是默认是关闭的,需要手动开启。开启方法如下:

打开终端,输入如下命令:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
```
sudo pmset repeat wakeorpoweron MTWRFSU 9:00:00 shutdown MTWRFSU 1:00:00
```

```

上面的命令表示,周一到周日,每天早上9点开机,凌晨1点关机,其中 MTWRFSU 是周一到周日每一天的缩写。

设置完成后,可以通过
`pmset -g sched`
来查看是否设置成功。

![](/images/blog/1742927620794_image_1.png)

如果想取消自动开关机,可以输入如下命令:

```bash

sudo pmset repeat cancel

阅读全文 »

这个教程介绍了Go中泛型的基础。使用泛型,你可以声明和使用函数或类型,这些函数或类型被编写为与调用代码提供的一组类型中的任何一个类型一起工作。

在这个教程中,你将声明两个简单的非泛型函数,然后将相同的逻辑捕获到一个单一的泛型函数中。

你将通过以下部分进行:

  1. 为你的代码创建一个文件夹。

  2. 添加非泛型函数。

  3. 添加一个泛型函数来处理多种类型。

  4. 在调用泛型函数时移除类型参数。

  5. 声明一个类型约束。

注意:
 对于其他教程,请看教程。

阅读全文 »

编写基准测试

基准测试是一种测试代码性能的方式。 这些测试的目标是通过多次运行相同的函数来验证算法的运行时和内存使用情况。

要创建基准测试,必须满足以下条件:

测试函数需要位于 
*_test
 文件中。

函数名称必须以 
Benchmark
 开头。

阅读全文 »

编写覆盖率测试

由于测试对现代开发工作至关重要,因此,了解测试覆盖了多少代码也是必不可少的环节。 您可以使用 Go 的内置工具为被测软件包生成测试报告:在测试命令中添加 
-cover
 标志即可:

  
go  
   
test  
   
-cover  
  

请注意,您还可以添加标志 
-v
 获得更详细的日志。

阅读全文 »

Testing 软件包

testing
 软件包在 Go 测试中发挥着关键作用。 它让开发者能够使用不同类型的测试函数创建单元测试。 
testing.T
 类型提供了控制测试执行的方法,例如使用 
Parallel()
 并行运行测试,使用 
Skip()
 跳过测试,以及使用 
Cleanup()
 调用测试拆解函数。

错误和日志

testing.T
 类型提供了多种与测试工作流交互的实用工具,包括 
t.Errorf()
,它会输出错误消息并将测试设为失败。

务必需要注意的是,
t.Error*
 不会停止测试的执行。 测试完成后,所有遇到的错误都将被报告。 有时,执行失败更有意义,在这种情况下,您应该使用 
t.Fatal*
。 测试执行期间,使用 
Log*()
 函数输出信息可能会很方便:

阅读全文 »

编写表驱动测试

编写测试时,您可能会为了覆盖所有用例而重复大量代码。 想一想您将如何覆盖 Fooer 示例中涉及的许多用例。 您可以为每种用例都编写一个测试函数,但这会导致大量重复。 您也可以在同一个测试函数中多次调用被测函数并逐次验证输出,但如果测试失败,则很难确定失败点。 最后,您还可以使用表驱动方式帮助减少重复。 顾名思义,这涉及将测试用例组织为包含输入和所需输出的表。

这有两个好处:

表测试重用相同的断言逻辑,使测试保持整洁。

表测试可以清晰显示选择的输入和测试涵盖的内容。 此外,每一行都可以获得一个唯一名称,帮助识别正在测试的内容和表达测试的意图。

阅读全文 »

编写简单的单元测试

单元测试是一种测试函数和方法等小段代码的方法。 它的用途在于让您及早发现错误。 单元测试会让您的测试策略更高效,因为它们小且独立,易于维护。

我们来创建一个示例,练习一下测试。 创建函数
Fooer
,它将
int
作为输入并返回
string
。 如果输入的整数能被三整除,则返回 “Foo”,否则,将数字作为
string
返回。

您可能意识到
FooBarQix
编码问题的一个过度简化的示例。 围绕这个问题编写测试有助于使用 Go 练习测试。

创建一个名为
fooer.go
的新文件,粘贴以下代码来创建示例:

阅读全文 »

最近有个项目要用到python2,在用pip装包时遇到了坑,记录一下解决方案:

开发机的系统是 centos 7, 默认的pip版本是 pip 8.1 实在是太老了,啥包也装不上。

python2.7 现在已经结束支持了,所以最新版的pip也不支持python2.7了,能用的pip的最新版本是pip 20.3.4 。

下面说一下更新pip的步骤:

阅读全文 »
0%