Elasticsearch聚合性能优化

在业务量增加的背景下,一个全局搜索接口出现了少量超时问题。通过排查发现,问题主要出在 Elasticsearch (ES) 的 terms 聚合阶段。进一步分析发现,这是由于 ES 的 Global Ordinals 机制在动态构建映射表时导致的性能瓶颈。本文将带你剖析这一现象背后的根本原因——Global Ordinals 机制,并分享几种有效的解决方案。
发表于: 2025年1月11日 15时34分 Read more

如何在WSL配置代理

经常在WSL中进行开发,偶尔需要通过代理访问一些资源,本文对wsl下配置代理的几种方法做了一些记录和总结
发表于: 2024年10月21日 14时48分 Read more

Podman入门札记

Podman简介

容器技术已经成为现代软件开发和部署的重要工具。它通过将应用和其依赖打包在一起,实现了应用的快速部署和移植。在这个背景下,Podman作为一款开源的容器管理工具套件,因其独特的特性和优势,逐渐受到开发者和系统管理员的青睐。

Podman的优势

Podman提供了与Docker相似的功能,可以编译镜像和管理容器,但它在某些方面优于Docker:

  • 无守护进程:Podman CLI 直接与底层的libpod API交互,无需守护进程。
  • 安全性:无需Root权限即可运行容器,提高了系统的安全性。
  • Kubernetes兼容性:Podman与Kubernetes的集成更加紧密,可以通过podman kube命令根据Kubernetes的yaml文件生成Pod或者container,也可以将本地的Pod配置导出成Kubernetes的yaml。
发表于: 2024年4月16日 19时17分 Read more

golang的Context分析

Context是golang中非常重要的package,Context不仅能够传递基础公共参数,还能处理信号、超时等关键信息,从而确保请求流程的控制和资源的有效利用。
发表于: 2019年11月2日 10时32分 Read more

golang中对时间的处理整理

最近开始使用go进行后台开发,其中遇上比较多的问题是对时间的处理和其他语言有一点点不一样,以此文做一些记录
发表于: 2019年3月11日 5时16分 Read more

linux下进程控制

我们的一个系统在父进程退出后子进程偶尔出现不能正常的退出问题,这篇文章就是记录解决这个问题的过程。
发表于: 2018年12月8日 10时14分 Read more

使用CMake进行项目构建

根据维基百科上的介绍,CMake是一款跨平台的自动化构建系统。我们可以编写与编译平台无关的配置文件(CMakeLists.txt), 然后再生成对应编译平台的编译配置(例如Linux下的Makefile)然后再执行对应的编译指令。
发表于: 2018年4月30日 12时45分 Read more

Let's Encrypt-免费HTTPS证书申请

HTTPS通信是建立在一条加密通道上进行的,能够保证数据的完整性和机密性。如果将自己的网站从HTTP升级到HTTPS,首先需要拥有CA颁发的证书, 本文记录了Let's Encrypt 免费HTTPS证书申请的过程
发表于: 2017年4月29日 4时43分 Read more

从制作python模块包说起

最近用python做一些内部的项目,于是将一些常用的一些工具,接口封装成了通用的python模块包,避免了重复建设,也免除了不必要的Ctrl-C, Ctrl-V。那么如何制作python的模块安装包呢?python模块的打包工具又有哪些呢?

wheel egg 与 tgz

首先我们从python包的格式说起,现在常见的包格式有egg, wheel以及源码安装包tgz,这三种格式的包都

发表于: 2016年9月14日 11时5分 Read more

python 模块静态编译

最近有个需求,需要在服务器上跑一个简单的web服务,由于服务器上环境差异较大,准备编译一个独立的静态python。这样以后服务扩容,迁移都比较轻松。通过几天的研究,虽然中间报了一些错误,python的静态版本,基本编译成功。
发表于: 2016年1月9日 7时5分 Read more

毕业旅行

记得很久之前,就想着毕业旅行的时候一定要去西藏,去拉萨,也许是因为那句“我是世间最美的情郎”, 也许是对藏族文化的好奇吸引了我。但是毕业临近才发现各种烦碎的小事却异常多,最后拉萨的旅行计划只能作罢。 在完成毕业答辩之后,我们临时决定跟团前往九寨沟。
发表于: 2015年7月6日 6时34分 Read more

python with statement

这篇文章主要对工作中经常接触到python 文件读写及with语句做一个总结.

文件打开

try:
    with open(filename,'r') as filea:
        do_process()
except IOError as e:
    print e.strerrpr

打开多个文件:

发表于: 2014年12月6日 16时0分 Read more