项目构建工具Teletraan、maven-seimicrawler-plugin、pjd-fstest、Canticle介绍

以下为你介绍的项目构建工具都可用在Linux系统上:Teletraan(代码发布系统)、maven-seimicrawler-plugin(SeimiCrawler 工程打包工具)、pjd-fstest(POSIX文件系统测试套件)、Canticle(Go 的依赖管理器)。

1、Teletraan(代码发布系统)

Teletraan 是 Pinterest 公司内部使用的应用代码发布系统,这是云工程团队开发的一个工具,提供可靠、高速、高效和安全的架构。它部署了数百个 Pinterest 内部服务,支持数以万计的主机,并且已经在生产环境中运行了几年。

Teletraan优点:

Teletraan支持关键功能,例如0停机部署,回滚,登台,连续部署。以及许多面向开发人员的便捷功能,例如显示提交详细信息,比较不同的部署,通过电子邮件或闲置通知部署状态更改,显示指标等。Teletraan尚不支持基于容器的部署。当前,您仍然可以使用Teletraan Deploy脚本来调用docker或docker-compose来运行容器。

使用 Teletraan 的步骤:

Teletraan 被设计为灵活的构建基块。满足以下要求,您可以将 Teletraan 插入现有的发布工作流程中:

在每个主机上运行发布代理。

为你的应用代码添加发布脚本。

在每次构建时发布构建 Aritfact 到 Teletraan。

设计图:

项目构建工具Teletraan、maven-seimicrawler-plugin、pjd-fstest、Canticle介绍

界面截图:

项目构建工具Teletraan、maven-seimicrawler-plugin、pjd-fstest、Canticle介绍

下载地址:https://github.com/pinterest/teletraan

2、maven-seimicrawler-plugin(SeimiCrawler 工程打包工具)

maven-seimicrawler-plugin是为了方便开发者对于SeimiCrawler工程的快速打包并独立部署而专门定制开发的maven打包插件。

开始:

pom添加添加plugin:

<plugin>

<groupId>cn.wanghaomiao</groupId>

<artifactId>maven-seimicrawler-plugin</artifactId>

<version>1.0.0</version>

<executions>

<execution>

<phase>package</phase>

<goals>

<goal>build</goal>

</goals>

</execution>

</executions>

<!--<configuration>-->

<!-- 默认target目录 -->

<!--<outputDirectory>/some/path</outputDirectory>-->

<!--</configuration>-->

</plugin>

执行mvn clean package即可,包目录结构如下:

项目构建工具Teletraan、maven-seimicrawler-plugin、pjd-fstest、Canticle介绍

启动说明:

SeimiCrawler service helper

usage: run.sh [options]

start          start service

stop           stop service

help           Print service help

./bin/run.sh start 启动seimicrawler服务

./bin/run.sh stop 停止当前seimicrawler服务

./bin/run.sh help 查看使用说明

配置文件:

[init_cfg]

params=-c basic -p 8080

[linux]

stdout=/tmp/seimicrawler.stdout.log

params只启动seimicrawler时启动参数,其中-p指定端口启动一个内嵌的http服务,接受通过http接口(参考SeimiCrawler文档有说明具体的接口)添加抓取请求或是查询抓取状态等操作,-c指定要启动的crawler的名称,如果不指定,默认是以workers形式启动所有扫描到的crawler,并开始监听抓取请求。两个参数都不是必须的。stdout配置的是seimicrawler服务启动后控制台日志输出路径。

SeimiCrawler项目:

SeimiCrawler是一个敏捷的,支持分布式的Java爬虫开发框架,希望能在最大程度上降低新手开发一个可用性高且性能不差的爬虫系统的门槛,以及提升开发爬虫系统的开发效率。在SeimiCrawler的世界里,绝大多数人只需关心去写抓取的业务逻辑就够了,其余的Seimi帮你搞定。设计思想上SeimiCrawler受Python的爬虫框架Scrapy启发很大,同时融合了Java语言本身特点与Spring的特性,并希望在国内更方便且普遍的使用更有效率的XPath解析HTML,所以SeimiCrawler默认的HTML解析器是JsoupXpath(独立扩展项目,非jsoup自带),默认解析提取HTML数据工作均使用XPath来完成(当然,数据处理亦可以自行选择其他解析器)。 

下载地址:https://github.com/zhegexiaohuozi/maven-seimicrawler-plugin

3、pjd-fstest(POSIX文件系统测试套件)

作为Tuxera的文件系统质量保证进程的一部分,我们已经指向linux、扩展和维护Pawel Jakub Dawidek的POSIX文件系统测试套件。

这个测试套件用于检测POSIX兼容性,可在UFS、ZFS、ext3、XFS和 NTFS-3G文件系统的FreeBSD、Solaris 和 Linux上运行。

测试的系统调用列表为:chmod、chown、link、mkdir、mkfifo、open、rename、rmdir、symlink、truncate、unlink。当前有3601个正则检测。

下载地址:https://www.tuxera.com/community/posix-test-suite/

4、Canticle(Go 的依赖管理器)

Canticle 是用于 go 的依赖管理器。它还可以用于锁定版本的库,单个项目,完整的持续发布,微服务平台。

Canticle 支持以下功能:

Vendoring - 对外部代码保存一份内部副本。

Version Locking - 使用特定版本的依赖库。

Vanity Import Paths - 导入的路径保持它原有写法和目的。

Single Copy - 内部不使用一个库的多个副本。

Build Information - 使用嵌入的信息,确保任何构建可以完全复制。

安装Canticle:

先决条件:假设您的GO环境已经正确配置(即设置GOPATH)。

指令:curl -fsSL https://raw.githubusercontent.com/Comcast/Canticle/master/install.sh | sh

下载地址:https://github.com/Comcast/Canticle

注明

以上就是项目构建工具Teletraan、maven-seimicrawler-plugin、pjd-fstest、Canticle的介绍内容,这些项目构建工具都能使用在Linux操作系统中。

栏目相关文章