wylu

Keep It Simple, Stupid

本文介绍了使用 PyCharm 提供的 pydevd 模块进行远程调试的步骤和原理。首先,在远程服务器上安装所需依赖,然后在本地机器上配置监听的 IP 地址和端口号,确保远程计算机可以访问到本地 IP 地址。接下来,在远程计算机的代码中插入特定的代码,其中 IP 地址和端口号需要与 PyCharm 中的监听配置一致。最后,通过 PyCharm 的远程调试模式,将 PyCharm 作为服务端,远程计算机上的应用程序作为客户端,建立连接并进行单步调试。

阅读全文 »

在使用 docker 的时候,经常需要下载镜像,给镜像打标签,然后又因为没有及时清理无用的镜像,久而久之,docker 就会把宿主机的磁盘空间占满,导致系统异常。对于 docker 磁盘占用的问题,可以通过 docker 自带的 prune 命令清理或者迁移 docker 下的 overlay2 文件夹来解决。

阅读全文 »

本文介绍了在 CentOS 上使用 BIND (Berkeley Internet Name Domain) 搭建 DNS 服务的步骤。首先需要下载 DNS 服务软件,然后配置主配置文件和区域文件,接着配置正向解析数据文件和反向解析数据文件,设置文件权限,检查配置文件是否配置正确,最后启动 DNS 服务并测试解析。

阅读全文 »

通过本文的指导,读者可以了解如何通过二进制的方式部署 Kubernetes 1.23.6 版本集群。二进制部署可以加深对 Kubernetes 各组件的理解,可以灵活地将各个组件部署到不同的机器,以满足自身的要求。但是需要注意的是,二进制部署需要手动配置各个组件,需要一定的技术水平和经验。

阅读全文 »

在本文中读者会看到有关 make 的介绍,make 是一种控制编译或者重复编译软件的工具。make 可以自动管理软件编译的内容、方式和时机,从而使程序员能够把精力集中在编写代码上。

阅读全文 »

在计算机科学中,并查集是一种树型的数据结构,用于处理一些不交集(Disjoint Sets)的合并及查询问题。有一个联合-查找算法(union-find algorithm)定义了两个用于此数据结构的操作:

  • Find:确定元素属于哪一个子集。它可以被用来确定两个元素是否属于同一子集。
  • Union:将两个子集合并成同一个集合。

由于支持这两种操作,一个不相交集也常被称为联合-查找数据结构(union-find data structure)或合并-查找集合(merge-find set)。其他的重要方法,MakeSet,用于建立单元素集合。有了这些方法,许多经典的划分问题可以被解决。

阅读全文 »

RabbitMQ + HAProxy 高可用镜像模式集群部署

本文介绍了如何搭建 RabbitMQ 高可用集群。首先介绍了部署说明和前提条件,然后详细介绍了集群模式和节点类型。接着介绍了环境准备和集群搭建的步骤,包括普通模式和镜像模式的配置。然后介绍了集群节点管理和故障处理的方法。最后介绍了使用 HAProxy 负载均衡的方法,并提供了安装、配置和验证的步骤。最后列举了一些常见问题。

阅读全文 »

本文主要介绍了算法的一些特性和常见算法的实现方法。其中,时间复杂度是算法效率的重要指标,递归是一种常见的算法实现方式,分治法、动态规划、贪心算法和回溯法是常见的算法设计思想。此外,还介绍了哈夫曼编码、单源最短路径、最小生成树、并查集和优先队列等常见算法的实现方法和应用场景。这些算法在计算机科学和工程领域中都有广泛的应用,对于提高算法效率和解决实际问题具有重要意义。

阅读全文 »

防火墙 firewalld 守护服务引入了一个信任级别的概念来管理与之相关联的连接与接口。它支持 ipv4 与 ipv6,并支持网桥,采用 firewall-cmd (command) 或 firewall-config (gui) 来动态的管理 kernel netfilter 的临时或永久的接口规则,并实时生效而无需重启服务。

阅读全文 »