keyuan 发布的文章

Go语言编译失败,输出如下错误日志,关键错误提示 invalid pseudo-version

go: XXXXXXX: invalid pseudo-version: git fetch –unshallow -f origin in XXXXXXXXXX: exit status 128:
fatal: git fetch-pack: expected shallow list
fatal: The remote end hung up unexpectedly

报错原因是Git客户端版本太旧了.

https://github.com/golang/go/issues/38373

在 CentOS 7 和 RHEL 7 上,如果使用默认存储库进行安装,则版本为 1.8.3.1。

解决方法:

升级GIT,对于 CentOS 7 和 RHEL 7,使用 IUS 存储库安装将解决问题。

$ yum -y erase git
$ yum -y install https://repo.ius.io/ius-release-el7.rpm
$ yum -y install git222

检查版本:

$ git –version
git version 2.22.5

适用于有高精度需求的场景

导入:decimal模块

from decimal import Decimal

class DecimalEncoder(json.JSONEncoder):
def default(self, obj):
if isinstance(obj, Decimal):
return str(obj)
return json.JSONEncoder.default(self, obj)

val = Decimal(1)/Decimal(3)
number = val.quantize(Decimal("0.00000000")) #0.33333333
result = {'data': Decimal(number)}
return json.dumps(result, cls=DecimalEncoder)

安装screen

yum install screen

查看会话

screen -ls

连接会话

screen -r 会话ID

清除会话(screen -ls会显示该会话为dead状态)

screen -wipe

共享会话

screen -x

screen [-AmRvx -ls -wipe][-d <作业名称>][-h <行数>][-r <作业名称>][-s ][-S <作业名称>]

参数说明

-A  将所有的视窗都调整为目前终端机的大小。
-d <作业名称>  将指定的screen作业离线。
-h <行数>  指定视窗的缓冲区行数。
-m  即使目前已在作业中的screen作业,仍强制建立新的screen作业。
-r <作业名称>  恢复离线的screen作业。
-R  先试图恢复离线的作业。若找不到离线的作业,即建立新的screen作业。
-s  指定建立新视窗时,所要执行的shell。
-S <作业名称>  指定screen作业的名称。
-v  显示版本信息。
-x  恢复之前离线的screen作业。
-ls或--list  显示目前所有的screen作业。
-wipe  检查目前所有的screen作业,并删除已经无法使用的screen作业。

1、打开编辑limits.conf文件

sudo vim /etc/security/limits.conf

插入以下内容

  • soft nproc 65535
  • hard nproc 65535
  • hard stack 102400
  • soft stack 102400
  • soft nofile 100001
  • hard nofile 100002

2、创建 nofile.conf 文件

vi /etc/security/limits.d/nofile.conf

写入以下内容

  • soft nproc 65535
  • hard nproc 65535
  • hard stack 102400
  • soft stack 102400
  • soft nofile 100001
  • hard nofile 100002

3、重启服务器

4、查看确认是否修改成功

ulimit -a