Japin

登高必自卑,行远必自迩

PostgreSQL 数据库默认情况下是不支持跨数据库访问的。如果我们想要执行跨数据库的查询,我们需要借助 dblink 来实现,dblink 是 PostgreSQL 的一个模块,支持从数据库会话中连接到其他数据库。

阅读全文 »

最近在使用 LaTeX 撰写文档时需要重定义一个命令的,但是我想要知道该命令的原始定义时怎样的,经过查找发现 LaTeX 在这方面做得还是很不错的。目前,我知道有两种方式可以获取命令的定义:(a) 在文档中使用 \show\command;(b) 在命令行中使用 texdef command

阅读全文 »

我们知道 PyQt5 利用信号和槽在对象之间传递数据,当特定的事件发生时,信号将通过 emit 发出,槽则负责响应该信号。QT 中的对象已经包含了非常多信号的定义。本文对信号槽的使用不做具体介绍,感兴趣的朋友可以参考这里,我在这里主要记录如何对信号传递用户自定义参数。

阅读全文 »

本文主要记录在使用 LaTeX 进行封面自定义的相关实现,如下图 1 所示。

图 1 LaTeX 自定义封面

阅读全文 »

在某些情况下我们可能需要对实数进行四舍五入,在 SQL 中我们可以通过 ROUND 函数来实现。

1
2
3
4
5
6
7
8
9
10
11
# SELECT ROUND(123.456)
round
-------
123
(1 row)

# SELECT ROUND(123.567)
round
-------
124
(1 row)
阅读全文 »

默认情况下,LaTeX 会在每个页面的底部生成一个页码编号,即使是标题页也是如此。通常情况下,我们不需要在标题页输出页码编号,而且目录页一般也会采用罗马数字的形式给出页码,而正文内容则以阿拉伯数字的形式给出页码编号。本文接下来介绍了 LaTeX 中基本的页码设置。

阅读全文 »

Linux I/O 调度器控制着内核读写磁盘的工作方式。系统管理员可以通过更改调度器来自定义磁盘调度算法,从而优化系统性能。有三种调度程序可供选择,每种调度程序都有其优点。这些调度器是:

  • Noop - 电梯调度算法,最简单的调度算法,该算法基于先进先出队列 (FIFO) 实现,所有的 I/O 请求都符合先进先出规则,适合于 SSD 设备。

  • Deadline - 绝对保障算法,它为读和写分别创建了 FIFO 队列,当内核收到请时,先尝试合并,不能合并则尝试排序或放入队列中,并且尽量保证在请求到达最终期限时进行调度,避免有一些请求长时间不能得到处理。该调度器适合虚拟机所在宿主机器或 I/O 压力比较重的场景,例如数据库服务器。

  • Completely Fair Queuing, CFQ - 绝对公平调度算法,它为每个进程和线程单独创建一个队列来管理该进程的 I/O 请求,然后为每个队列分配访问磁盘的时间片。时间片的长度以及允许队列提交的请求数取决于给定进程的 I/O 优先级。该调度器比较适合于通用服务器。

阅读全文 »

本文将介绍 PostgreSQL 中的 Common Table Expressions, CTE,也叫做公用表表达式。在介绍 CTE 之前,我们需要先了解 WITH 查询。WITH 查询是 PostgreSQL 针对复杂查询,允许用户在该查询内容编写辅助语句的功能,其中用户编写的辅助语句就是今天介绍的 CTE,你可以将 CTE 视为在当前查询中的一个临时表。CTE 的一大优点就是我们可将查询中的较为耗时且多次重复使用的部分通过 CTE 缓存起来,从而避免多次执行。

阅读全文 »

现在越来越多的网站采用 HTTPS 协议,今天就遇到一个关于 HTTPS 证书的问题,服务器端采用 HTTPS 加密传输,而证书是使用的自签名证书,因此客户端开发时需要将其导入到 Eclipse 中才能通过验证(客户端采用 Java 开发)。Eclipse 采用 keystore 来管理证书,可以利用工具 keytool 来管理证书文件,本文主要记录 Eclipse 证书管理的基本使用,以及使用自签名证书的格式问题。

阅读全文 »
0%