All Projects → ojlm → pea

ojlm / pea

Licence: other
分布式压测引擎. A distributed stress tool based on gatling

Programming Languages

scala
5932 projects
typescript
32286 projects
HTML
75241 projects
CSS
56736 projects
javascript
184084 projects - #8 most used programming language
java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to pea

Gatling
Modern Load Testing as Code
Stars: ✭ 5,381 (+12413.95%)
Mutual labels:  akka, gatling
young-crawler
scala结合actor编写的分布式网络爬虫
Stars: ✭ 15 (-65.12%)
Mutual labels:  akka
Jvm Bloggers
JVM Bloggers - website and newsletter with JVM blogs from Poland
Stars: ✭ 193 (+348.84%)
Mutual labels:  akka
Lagom
Reactive Microservices for the JVM
Stars: ✭ 2,590 (+5923.26%)
Mutual labels:  akka
Kafka With Akka Streams Kafka Streams Tutorial
Code samples for the Lightbend tutorial on writing microservices with Akka Streams, Kafka Streams, and Kafka
Stars: ✭ 204 (+374.42%)
Mutual labels:  akka
Powerjob
Enterprise job scheduling middleware with distributed computing ability.
Stars: ✭ 3,231 (+7413.95%)
Mutual labels:  akka
Akka Stream Contrib
Add-ons to Akka Stream
Stars: ✭ 173 (+302.33%)
Mutual labels:  akka
akka-http-quickstart-java.g8
akka.io
Stars: ✭ 17 (-60.47%)
Mutual labels:  akka
indigo
Indigo: SNV and InDel Discovery in Chromatogram traces obtained from Sanger sequencing of PCR products
Stars: ✭ 26 (-39.53%)
Mutual labels:  indigo
Akka Kryo Serialization
Kryo-based serialization for Akka
Stars: ✭ 229 (+432.56%)
Mutual labels:  akka
Akka Rabbitmq
RabbitMq client in Scala and Akka actors
Stars: ✭ 228 (+430.23%)
Mutual labels:  akka
Akka Management
Akka Management is a suite of tools for operating Akka Clusters.
Stars: ✭ 218 (+406.98%)
Mutual labels:  akka
Every Single Day I Tldr
A daily digest of the articles or videos I've found interesting, that I want to share with you.
Stars: ✭ 249 (+479.07%)
Mutual labels:  akka
Cookim
Distributed web chat application base websocket built on akka.
Stars: ✭ 198 (+360.47%)
Mutual labels:  akka
akka-react-cloudant
A Soccer Dashboard created by scraping EPL website using Akka backend and ReactJS frontend and IBM Cloudant for object storage. IBM Cloud Foundry is used to host both frontend and backend app.
Stars: ✭ 21 (-51.16%)
Mutual labels:  akka
Otoroshi
Lightweight api management on top of a modern http reverse proxy
Stars: ✭ 177 (+311.63%)
Mutual labels:  akka
Akka Guide
🌴 A chinese guide of Akka, based on Java.
Stars: ✭ 217 (+404.65%)
Mutual labels:  akka
Kmq
Kafka-based message queue
Stars: ✭ 239 (+455.81%)
Mutual labels:  akka
tasktick
An example Task Manager project that has been created using Lagom.
Stars: ✭ 19 (-55.81%)
Mutual labels:  akka
simplexspatial
The Reactive Geospatial Server
Stars: ✭ 17 (-60.47%)
Mutual labels:  akka

Gatling Pea

Build Status GitHub release Maven Central


关于 Gatling

Gatling 是基于 NettyAkka 技术实现的高性能压测工具.

关于 Pea

由于单独一台机器硬件资源和网络协议的限制存在, 在高负载测试中需要多台机器共同提供负载. Pea 是在以 Galting 为引擎, 在多节点场景下的压测工具. 包含以下特性:

  • 管理和监控多个工作节点. 依赖 Zookeeper
  • 运行过程中可以实时查看每个节点的具体执行状态
  • 多个节点执行完后会自动收集日志, 生成统一的报告
  • 支持原生的 Gatling 脚本, 原生的 HTTP 协议
  • 扩展支持了 DubboGrpc 协议
  • 以 Git 仓库管理脚本和资源文件
  • 内置了 Scala 增量编译器, 脚本可在线快速编译
  • 不同于其他实现, 所有这些功能都在同一进程内实现. 感谢 Gatling 作者高质量的代码
  • 可以在实体机, 虚拟机, Docker 容器中运行

脚本示例

import io.gatling.core.Predef._
import pea.dubbo.Predef._
import pea.dubbo.api.GreetingService
import pea.gatling.PeaSimulation

class DubboGreetingSimulation extends PeaSimulation {
  override val description: String =
    """
      |Dubbo simulation example
      |""".stripMargin
  val dubboProtocol = dubbo
    .application("gatling-pea")
    .endpoint("127.0.0.1", 20880)
    .threads(10)
  val scn = scenario("dubbo")
    .exec(
      invoke(classOf[GreetingService]) { (service, _) =>
        service.sayHello("pea")
      }.check(simple { response =>
        response.value == "hi, pea"
      }).check(
        jsonPath("$").is("hi, pea")
      )
    )
  setUp(
    scn.inject(atOnceUsers(10000))
  ).protocols(dubboProtocol)
}

版本

pea gatling dubbo grpc
0.6.0~ 3.3.1 2.7.4.1 1.22.2

视频演示

https://www.bilibili.com/video/av73339161/

截图示例

创建任务

任务执行中的节点状态

整体报告

单个请求细节报告

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].