git上托管的代码如何部署在阿里云上_阿里程序员常用的 15 款开发者工具(建议收藏)...

从人工到自动化,从重复到创新,技术演进的历程中,伴随着开发者工具类产品的发展。

阿里巴巴将自身在各类业务场景下的技术积淀,通过开源、云上实现或工具等形式对外开放,本文将精选了一些阿里巴巴的开发者工具,希望能帮助开发者们提高开发效率、更优雅的写代码。

由于开发者涉及的技术领域众多,笔者仅从自己熟悉的领域,以后端开发者的视角盘点平时可能用得到的工具。

每个工具按照以下几点进行介绍:

1. 工具名称和简介

2. 使用场景


一、Java 线上诊断工具 Arthas

d22c2ead65d656cbac55f16a9e7f0ffc.png

Arthas 阿里巴巴2018年9月开源的一款Java线上诊断工具。

工具的使用场景:

1. 这个类从哪个 jar 包加载的?为什么会报各种类相关的 Exception?

2. 我改的代码为什么没有执行到?难道是我没 commit?分支搞错了?

3. 遇到问题无法在线上 debug,难道只能通过加日志再重新发布吗?

4. 线上遇到某个用户的数据处理有问题,但线上同样无法 debug,线下无法重现!

5. 是否有一个全局视角来查看系统的运行状况?

6. 有什么办法可以监控到JVM的实时运行状态?

Arthas支持JDK 6 ,支持Linux/Mac/Windows,采用命令行交互模式,同时提供丰富的 Tab 自动补全功能,进一步方便进行问题的定位和诊断。

二、IDE 插件 Cloud Toolkit

98760a25afc74c58fe5c5e490f57a671.png

Cloud Toolkit 是一款 IDE 插件,可以帮助开发者更高效地开发、测试、诊断并部署应用。通过 Cloud Toolkit,开发者能够方便地将本地应用一键部署到任意机器(本地或云端),并内置 Arthas 诊断、高效执行终端命令和 SQL 等,提供 IntelliJ IDEA 版,Eclipse 版,PyCharm 版和 Maven 版。

1. 每次修改完代码后,是否正在经历反复地打包?

2. 在 Maven 、Git 以及其他运维脚本和工具的之间频繁切换?

3. 采用 SCP 工具上传?使用XShell或SecureCRT登陆服务器?替换部署包?重启?

4. 文件上传到服务器指定目录,在各种 FTP、SCP 工具之间频繁切换 ?

三、混沌实验注入工具 ChaosBlade

f4a255f93f3c55408cd8de4ddfc933b0.png

ChaosBlade 是一款遵循混沌工程实验原理,提供丰富故障场景实现,帮助分布式系统提升容错性和可恢复性的混沌工程工具,可实现底层故障的注入,提供了延迟、异常、返回特定值、修改参数值、重复调用和try-catch 块异常等异常场景。

1. 微服务的容错能力不易衡量?

2. 容器编排配置是否合理无法验证?

3. PaaS 层健壮性的测试工作无从入手?

四、Java 代码规约扫描插件

该插件用于检测 Java 代码中存在的不规范的位置,并给予提示。规约插件是采用 Kotlin 语言开发。

五、应用实时监控工具 ARMS

b89b6b9d745958337138677739de6194.png

ARMS 是一款 APM 类的监控工具,提供前端、应用、自定义监控 3 类监控选项,可快速构建实时的应用性能和业务监控能力。

1. 晚上10点收到37条报警信息,你却无从下手?

2. 当我们发现问题的时候,客户/业务方已经发起投诉?

3. 每个月花几十万买服务器,却无法保障用户体验?

六、静态开源站点搭建工具 Docsite

d4d3f5ea8714b4cc7eb2c92b11a8e36a.png

Docsite 一款集官网、文档、博客和社区为一体的静态开源站点的解决方案,具有简单易上手、上手不撒手的特质,同时支持 react 和静态渲染、PC端和移动端、支持中英文国际化、SEO、markdown文档、全局站点搜索、站点风格自定义、页面自定义等功能。

七、Android 平台上的秒级编译方案 Freeline

Freeline 可以充分利用缓存文件,在几秒钟内迅速地对代码的改动进行编译并部署到设备上,有效地减少了日常开发中的大量重新编译与安装的耗时。Freeline 最快捷的使用方法就是直接安装 Android Studio 插件。

八、性能测试工具 PTS

PTS 可以模拟大量用户访问业务的场景,任务随时发起,免去搭建和维护成本,支持 JMeter 脚本转化为 PTS 压测,同样支持原生 JMeter 引擎进行压测。

九、云效开发者工具K

KT 可以简化在 Kubernetes 下进行联调测试的复杂度,提高基于Kubernetes的研发效率。

十、架构可视化工具 AHAS

768d3b36e89600f7fb28b21df0e11252.png

AHAS 为 K8s 等容器环境提供了架构可视化的功能,同时,具有故障注入式高可用能力评测和一键流控降级等功能,可以快速低成本的提升应用可用性。

1. 服务化改造过程中,想精确的了解资源实例的构成和交互情况,实现架构的可视化?

2. 想引入真实的故障场景和演练模型?

3. 低门槛获得流控、降级功能?

十一、数据处理工具 EasyExcel

EasyExcel 是一个用来对 Java 进行解析、生成Excel 的框架,它重写了 poi 对07版 Excel 的解析,原本一个3M的 Excel 用POI sax需要100M左右内存,EasyExcel可降低到 KB 级别,并且再大的excel也不会出现内存溢出的情况。03版依赖 POI 的 sax 模式。在上层做了模型转换的封装,让使用者更加简单方便。

十二、iOS 类工具 HandyJSON

HandyJSON 是一个用于 Swift 语言中的JSON序列化/反序列化库。与其他流行的Swift JSON库相比,HandyJSON 的特点是,它支持纯 Swift 类,使用也简单。它反序列化时(把 JSON 转换为Model)不要求 Model从 NSobject 继承(因为它不是基于 KVC 机制),也不要求你为 Model 定义一个 Mapping 函数。只要你定义好 Model 类,声明它服从 HandyJSON 协议,HandyJSON 就能自行以各个属性的属性名为Key,从JSON串中解析值。

十三、云上资源和应用部署工具 EDAS Serverless

EDAS Serverless 一款基于 Kubernetes,面向应用和微服务的 Serverless 平台。用户无需管理和维护集群与服务器,即可通过镜像、WAR 包和JAR 包,快速创建原生支持 Kubernetes 的容器应用,同时支持 Spring Cloud 和 Dubbo 等主流微服务框架。

十四、数据库连接池 Druid

Druid 是 Java 语言下的数据库连接池,它能够提供强大的监控和扩展功能。

十五、Java 工具集 Dragonwell

Alibaba Dragonwell 是阿里巴巴内部OpenJDK定制版AJDK的开源版本, AJDK为在线电商,金融,物流做了结合业务场景的优化,运行在超大规模的,100,000 服务器的阿里巴巴数据中心。Alibaba Dragonwell与Java SE标准兼容,目前仅支持 Linux/x86_64平台。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: GitHub 是一个让程序员们能够协同开发、管理代码、协同建设项目的网站。GitHub 使用教程.pdf 是一份方便新手入门的指南,其中包含了许多关于 GitHub 的基本概念和操作指南,如如何设置账户、注册新项目、通过命令行使用 Git 管理代码、创建分支等等。 首先,通过 GitHub 的官方网站创建一个账户,可以通过邮箱注册或者用第三方账号登录。之后便可以创建项目,即在个人主页点击 "new repository",填写必要的信息,包括项目名称、描述、访问权限等,来创建一个新项目。当创建项目后,就可以进行代码的上传和管理。其中,GitGitHub 提供的主流版本管理工具,可以通过 GitHub Desktop 或者命令行的方式使用。 在推动代码的过程中,协作是 GitHub 的一个重要特性。多人协作需要实施一整套流程,比如代码审核、分支管理和合并等。而 GitHub 可以通过 pull request 方便地管理这个过程。用户只需要提交 pull request,然后其他开发者可以就某个提交进行评论,最后合并或者拒绝该代码。得益于这种方式,GitHub 成为了全球最大的代码托管平台,几乎每个开源项目都可以被跟踪和协同管理。 综上所述,GitHub 使用教程.pdf 是一份十分实用的指南,通过学习使用,用户将可以更好地掌握 GitHub 的基本使用方法并且能够更方便地管理代码。同时,GitHub 也可以促进开发者之间的学习和协作,打造更好、更高效的开发环境。 ### 回答2: GitHub是全球最大的开源代码社区,是一个面向开发者的社交平台,通过它可以托管和管理各种开源项目。使用GitHub可以与其他开发者协作,共同开发、编写代码和分享与代码相关的文件和文档,同时还可以追踪代码的变更历史。 本着开放、协作、分享的理念,GitHub提供了免费的代码托管服务,同时也支持许多开发者常用的版本管理工具Git。这大大地方便了各类开发者之间的协作和交流。 为了更好地利用GitHub,需要掌握一些基本操作,这就需要详细的使用教程。GitHub使用教程.pdf提供了详尽的介绍,包括如何创建、克隆和共享仓库,如何提交代码变更,如何处理分支和合并以及如何协作开发等等。 在学习GitHub使用教程时,我们需要先理解仓库、分支和合并等基本概念,再学习Git常用命令,这样才能更好地理解GitHub的操作过程。在具备了这些基础知识之后,我们还需要了解GitHub的高级功能,例如如何处理Pull Request、如何使用Issues等等。 总而言之,掌握GitHub的使用方法是非常有益的,可以提高我们的代码开发效率,促进开源社区的协作与发展。 ### 回答3: GitHub是一个全球最大的开源软件托管平台和版本控制系统,教程可以帮助开发人员更好地使用GitHub,分享和管理代码。《GitHub使用教程.pdf》中主要包含以下内容: 1. 注册GitHub账号 要想使用GitHub的功能,首先需要注册一个账号,并完成个人资料的填写和认证。 2. 创建和管理仓库 GitHub的核心功能就是仓库管理,一个仓库就是存储代码的地方。通过教程可以学会如何创建仓库、管理仓库、安装仓库、克隆仓库、把代码推送到云端等等。 3. 协作和贡献代码 GitHub是一个开源社区,让任何人都可以向开源项目贡献代码。教程详细介绍如何fork、pull request、合并代码等等操作,方便开发人员之间更好地协作和分享知识。 4. GitHub Pages GitHub Pages是GitHub提供的一项免费的静态网站托管服务,通过教程可以学会如何创建自己的网站并发布分享。 5. 其他功能 除了上述主要功能之外,GitHub还提供了很多其他实用的功能,例如代码审核、发布版本、Webhook、复制仓库等等。这些功能也在教程中进行了详尽的讲解。 总之,《GitHub使用教程.pdf》涵盖了GitHub的主要功能和操作,对于开发人员来说是一个非常实用的学习工具,能够帮助开发人员更好地使用GitHub来进行代码管理和协作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值