Skip to content

feat: Merge main branch features #1627

feat: Merge main branch features

feat: Merge main branch features #1627

Workflow file for this run

#
# Copyright [2021-present] [ahoo wang <ahoowang@qq.com> (https://github.com/Ahoo-Wang)].
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
## :::::: WARNING ::::::
## https://docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners#supported-runners-and-hardware-resources
## :::::::::::::::::::::
## 因受到 GitHub Runner 资源限制,运行在 GitHub Runner 中的基准测试与真实环境基准测试对比有非常大的差距(近2倍),
## 但是对于运行在同一环境配置资源情况下(都运行在 GitHub Runner),进行 commit 前后的基准对比、以及第三方库的对比依然是有价值。
## :::::::::::::::::::::
## Due to the resource constraints of GitHub runner, the benchmark running in GitHub runner is very different from the benchmark in the real environment (nearly twice),
## However, it is still valuable to compare the benchmark before and after commit and the third-party library when running in the same environment and configuring resources (both running in GitHub runner).
## :::::::::::::::::::::
name: Benchmark CosId Test
on:
push:
paths:
- 'cosid-core/**'
- 'cosid-spring-redis/**'
- 'cosid-jdbc/**'
pull_request:
paths:
- 'cosid-core/**'
- 'cosid-spring-redis/**'
- 'cosid-jdbc/**'
workflow_dispatch:
jobs:
cosid-core-benchmark:
name: CosId Core Benchmark
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@master
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
server-id: github
settings-path: ${{ github.workspace }}
- name: CosId-Core
run: gradle cosid-core:clean cosid-core:jmh
cosid-spring-redis-benchmark:
name: CosId Spring Redis Benchmark
runs-on: ubuntu-latest
services:
redis:
image: redis
options: >-
--health-cmd "redis-cli ping"
--health-interval 10s
--health-timeout 5s
--health-retries 5
ports:
- 6379:6379
steps:
- name: Checkout
uses: actions/checkout@master
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
server-id: github
settings-path: ${{ github.workspace }}
- name: CosId-Spring-Redis
run: ./gradlew cosid-spring-redis:clean cosid-spring-redis:jmh
cosid-jdbc-benchmark:
name: CosId Jdbc Benchmark
runs-on: ubuntu-latest
steps:
- name: Start Mysql
run: sudo /etc/init.d/mysql start
- name: Checkout
uses: actions/checkout@master
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
server-id: github
settings-path: ${{ github.workspace }}
- name: Init CosId-Db
run: mysql -vvv -h localhost -uroot -proot < cosid-jdbc/src/main/init-script/init-cosid-mysql.sql
- name: CosId-Jdbc
run: gradle cosid-jdbc:clean cosid-jdbc:jmh