您访问的是非正式的站点,不是最新内容哦,请点击这里前往Dnocm ヾ(=゚・゚=)ノ喵♪

若白驹过隙,忽然而已

利用Jmeter进行压力测试

压力测试(Stress Test),也称为强度测试、负载测试。压力测试是模拟实际应用的软硬件环境及用户使用过程的系统负荷,长时间或超大负荷地运行测试软件,来测试被测系统的性能、可靠性、稳定性等。目前互联网的环境下,压力测试是必不可少的,其中Apache JMeter是目前主流的开源的压力测试工具。

Apache JMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域。 它可以用于测试静态和动态资源,例如静态文件、Java 小服务程序、CGI 脚本、Java 对象、数据库、FTP 服务器, 等等。JMeter 可以用于对服务器、网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度和分析整体性能。另外,JMeter能够对应用程序做功能/回归测试,通过创建带有断言的脚本来验证你的程序返回了你期望的结果。为了最大限度的灵活性,JMeter允许使用正则表达式创建断言。

Git工作流

选择Git工作流,和如何配合工作流工作,这是软件行业经常碰到的问题。不同的Leader会有不同方案,有好有坏。当然能应用进实际开发中的流程,只要实际操作人员足够的仔细便不会出现问题,例如最常用的Vincent Driessen提出的Git工作流

接下来,将介绍这个Git工作流,以及它所衍生出来的其它不错的工作流(GitHub Flow与GitLab Flow)

Certbot 为你的HTTP服务加一层SSL协议

谷歌Chrome安全产品经理艾米丽·谢克特(Emily Schechter)发表博文,证实当该公司在7月发布Chrome 68浏览器时,该浏览器将把所有未采用HTTPS(安全套接字层超文本传输协议)加密的网站都标记为“不安全”网站。

Chrome作为浏览器界的巨头,做出如此的决定,将极大的推进HTTPS的进程,我们自然也应该跟进,一同建立更安全的网络环境。但一般证书都是较为昂贵的,因此互联网安全研究小组Internet Security Research Group(ISRG)以及Linux基金会等,提供了公益的项目,用于加速HTTPS的发展

Spring Boot使用GitLab CI自动部署

定义场景

spring boot应用在手动部署过程中主要分为两步,打包编译与上传部署(也可能存在测试环境,但由于该项目目前只有我开发,并未写测试用例)。同样的在gitlab-ci文件中也定义相应的两步骤

stages:
  - build
  - deploy

Spring Boot 自动重启脚本

一个脚本,自动从GitLab上下载jar,同时重启服务。为后续的CI自动部署做准备

#!/bin/sh
#defined
echo "通过GitLab-CI下载jar"
wget -O bill-server.jar "https://gitlab.com/dream-room/bill-server/-/jobs/artifacts/$1/raw/target/bill-server.jar?job=release-build"
echo "查询已存在进程"
pgrep -af bill-server
echo "结束已存在进程"
pkill -f bill-server
echo "开始运行$1"
nohup java -jar bill-server.jar &
echo "更新结束"

运行

sh bill-start.sh release-0.0.3

测试驱动开发(TDD)的实践

测试驱动开发(TDD)是一种很好的方法论,虽然在国内并不被重视。但仍然想抽时间写一篇关于测试驱动开发的文档。

OK,最好的描述方式应该分为三部分吧,是什么?为什么?怎么做?那么就从这三部分,分别的描述测试驱动开发方法论。

GitLab Pages 搭建Hexo教程

大部分情况下,都是github pages与hexo组合搭建静态博客。但不可否认的是,这样存在一些问题。比如,每次文章写完都需要要编译,才能上传,如果我仅仅想写个博客,这样的操作显得繁琐。又比如,你拥有多台电脑的情况,你需要在每台电脑上都配置一样的环境。

所以通过持续集成CI/CD的方式,让编译自动化,是一种很不错的解决方案。这里将介绍gitlab-ci来简化环境的搭建与编译过程。当然静态资源将托管在gitlab-pages上。

There is also a tutorial in English

Dart之环境搭建

Dart 是一种易学习、易扩展、跨平台的编程语言。

  • 易学习:语法感觉很熟悉,语义是干净和一致的。是Java与Javascript的结合体。
  • 易扩展:仅谷歌就有超过200万行的生产Dart代码。应用程序可以达到数十万行代码。
  • 跨平台:Dart可以在每一个现代浏览器、命令行、服务器和移动设备上快速运行。

Google 在大型项目中部署使用 Dart。例如,下一代的AdWords (谷歌最重要的赚钱应用)运行在Dart上。

Java ProjectReactor框架之Flux篇

Spring5现处在第四个预发布版,正式版将要发布了,它带来的一大特性就是响应式框架Spring WebFlux。默认使用ProjectReactor框架。因此。本文通过ProjectReactor中的Flux,来学习使用该框架,以及了解其传递的思想。

本文基于Reactor3.1 rc1

Reactor官方地址http://projectreactor.io/,官方文档写的十分详细,如果您有不错的英文能力,建议直接阅读官方文档。