ssh远程执行nohup命令不退出

现象

在本机执行ssh target "nohup sh test.sh &",ssh并没有立即结束退出,而是等着test.sh执行完才退出,如果提前断开ssh则执行失败。使用nohup&是想让test.sh在后台执行,并忽略SIGHUP信号,即使执行命令的console退出了,执行命令的进程也可以继续执行。而ssh远程执行nohup的命令不立即退出跟nohup没有太大的关系。将上面的命令换成下面的命令就会立即返回:
ssh target "nohup sh test.sh >/dev/null 2&1 &"

阅读全文

搜索引擎系列(一)---Rank的概率模型

Rank是干啥的

Rank是搜索引擎中的精髓模块,Rank所做的事情就是根据用户的query对所有的doc(常见的如网页)进行打分排序。打分排序的依据是doc与query的相关性,而相关性怎么计算呢?把搜索这个动作可拆为两件事情:

阅读全文

大数据与人工智能

前些年大数据这个词很火,最近一两年AI又火了起来,现在出门不谈点AI 都不好意思跟人Say Hi。

为什么经历了两个冬天的AI在大数据火了之后迎来了新的春天?

仿生学不是出路

AI已经出现几十年了,而最近五年发展十分迅速,为什么?早期研究人工智能的学者认为要让机器获得智能,首先要了解人类是如何产生智能的,然后让计算机按照人的思路去做,要让机器像人一样思考才能获得智能。这种方法论被称为『鸟飞派』,看看鸟是怎么飞的,模仿鸟的动作人就能飞上天。而实际上飞机的发明依靠的是空气动力学而不是仿生学。

阅读全文

躁动的季节,躁动的心

春天来了,又到了动物们人们开始躁动的季节,正所谓『金三银四』,又到了换工作最疯狂的季节了,地铁站里贴满的猎聘、直聘BOSS等广告彰显出人们躁动的荷尔蒙。而我,在这个躁动的季节里也觉得格外焦虑。

为什么会感到焦虑呢?因为对自己的现状感到不满,想变得更好,可是又没有明确的路,摸索前行的过程中时常会感到迷茫。

阅读全文

为什么更新频率降低了呢?

Status

自从将博客从旧地址搬过来之后更新速度明显下降了好多,在过去的2016年里总共也没写几篇,甚至连年度总结都省去了。为什么博文更新频率降低了呢?为什么呢!?

阅读全文

分布式锁设计

分布式锁设计

阅读全文

用户评论挖掘

随着互联网的发展,越来越多的人选择在网上消费,并且越来越的证据表明商品的评论信息会影响到消费者的消费决定。评论挖掘的主要任务是从评论中了解到用户对产品的哪些功能、属性进行了怎样的评论,并抽取成简短有效的信息。

评论挖掘主要有以下几个子任务:

识别、抽取产品特征

产品特征分为显示特征和隐含特征。

阅读全文

计算机开机过程

从按下计算机的电源按钮到出现欢迎页,这个过程都发生了什么?
我们知道计算机启动叫boot,重启叫reboot,这里的boot其实是bootstrap的缩写。计算机运行时其硬件交由软件来控制,所以计算机要启动必须要运行软件,但是计算机不启动就无法运行软件,这是一个鸡生蛋和蛋生鸡的过程。
有一句谚语:

阅读全文

mysql的set names

为了Emoji

最近写东西的时候需要支持Emoji表情,用MySQL作存储需要版本5.5.3+并且字符集设置为utf8mb4,由于是跟其他服务公用一个MySQL存储服务所以不能动MySQL的全局配置,在针对数据库和表设置完字符集设置后,应用程序连接数据库时指定default-character-set为utf8mb4会有报错提示(不知道是不是应用程序使用的MySQL驱动不支持的缘故),所以存储Emoji表情的时候还是会提示『Incorrect string value』,最后解决方案是在应用程序连接数据库的时候加上’set names utf8mb4’。
MySQL执行set names utf8mb4后等同于临时设置如下字符编码:

1
2
3
4
5
SET character_set_client = utf8mb4;       

SET character_set_results = utf8mb4;

SET character_set_connection = utf8mb4;

阅读全文

关于密码保护

作为一名开发者,开发一个用户账户系统很可能就是你工作内容的一部分,其中比较重要的事情就是如何保护用户的密码,当系统被攻破、数据库被拖库时如何降低泄露用户原始密码的风险是一件值得深思的问题(还记得当年CSDN被拖库后爆出系统存储了用户的明文密码吗?)。比较行之有效的办法是对用户密码进行加盐哈希。

阅读全文