开发 hippo4j-core 示例程序.

pull/327/head
chen.ma 3 years ago
parent e9f4d9b6bf
commit 54b41c3ea4

@ -0,0 +1,33 @@
HELP.md
target/
!.mvn/wrapper/maven-wrapper.jar
!**/src/main/**/target/
!**/src/test/**/target/
### STS ###
.apt_generated
.classpath
.factorypath
.project
.settings
.springBeans
.sts4-cache
### IntelliJ IDEA ###
.idea
*.iws
*.iml
*.ipr
### NetBeans ###
/nbproject/private/
/nbbuild/
/dist/
/nbdist/
/.nb-gradle/
build/
!**/src/main/**/build/
!**/src/test/**/build/
### VS Code ###
.vscode/

@ -0,0 +1,48 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>cn.hippo4j</groupId>
<artifactId>hippo4j-example</artifactId>
<version>${revision}</version>
</parent>
<artifactId>hippo4j-core-spring-boot-starter-example</artifactId>
<name>${project.artifactId}</name>
<properties>
<maven.deploy.skip>true</maven.deploy.skip>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>cn.hippo4j</groupId>
<artifactId>hippo4j-example-core</artifactId>
<version>${revision}</version>
</dependency>
<dependency>
<groupId>cn.hippo4j</groupId>
<artifactId>hippo4j-core-spring-boot-starter</artifactId>
<version>${revision}</version>
</dependency>
</dependencies>
</project>

@ -0,0 +1,15 @@
package cn.hippo4j.example.core.starter;
import cn.hippo4j.core.enable.EnableDynamicThreadPool;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@EnableDynamicThreadPool
@SpringBootApplication(scanBasePackages = "cn.hippo4j.example.core")
public class Hippo4jCoreExampleApplication {
public static void main(String[] args) {
SpringApplication.run(Hippo4jCoreExampleApplication.class, args);
}
}

@ -0,0 +1,41 @@
server:
port: 8089
servlet:
context-path: /example
spring:
profiles:
active: dev
application:
name: dynamic-threadpool-example
dynamic:
thread-pool:
enable: true
enable-banner: true
check-state-interval: 3
notify-platforms:
- platform: 'WECHAT'
secret-key: 1d307bfa-815f-4662-a2e5-99415e947bb8
- platform: 'DING'
secret-key: 56417ebba6a27ca352f0de77a2ae9da66d01f39610b5ee8a6033c60ef9071c55
executors:
- thread-pool-id: 'message-consume'
core-pool-size: 1
maximum-pool-size: 1
queue-capacity: 1
blocking-queue: 'LinkedBlockingQueue'
rejected-handler: 'AbortPolicy'
keep-alive-time: 6691
allow-core-thread-time-out: true
thread-name-prefix: 'message-consume'
notify:
is-alarm: true
active-alarm: 80
capacity-alarm: 80
interval: 8
receives:
WECHAT: 'xxx' # Fill in the enterprise weChat userId
DING: '15601166691' # phone

@ -0,0 +1,13 @@
package cn.hippo4j.example.core.starter;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
@SpringBootTest
class Hippo4jCoreExampleApplicationTests {
@Test
void contextLoads() {
}
}

@ -0,0 +1,33 @@
HELP.md
target/
!.mvn/wrapper/maven-wrapper.jar
!**/src/main/**/target/
!**/src/test/**/target/
### STS ###
.apt_generated
.classpath
.factorypath
.project
.settings
.springBeans
.sts4-cache
### IntelliJ IDEA ###
.idea
*.iws
*.iml
*.ipr
### NetBeans ###
/nbproject/private/
/nbbuild/
/dist/
/nbdist/
/.nb-gradle/
build/
!**/src/main/**/build/
!**/src/test/**/build/
### VS Code ###
.vscode/

@ -0,0 +1,37 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>cn.hippo4j</groupId>
<artifactId>hippo4j-example</artifactId>
<version>${revision}</version>
</parent>
<artifactId>hippo4j-example-core</artifactId>
<name>hippo4j-example-core</name>
<description>Hippo4J 实例工程核心包.</description>
<properties>
<maven.deploy.skip>true</maven.deploy.skip>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>cn.hippo4j</groupId>
<artifactId>hippo4j-core</artifactId>
</dependency>
</dependencies>
</project>

@ -1,18 +1,18 @@
package cn.hippo4j.example.config;
package cn.hippo4j.example.core.config;
import cn.hippo4j.example.inittest.TaskDecoratorTest;
import cn.hippo4j.starter.core.DynamicThreadPool;
import cn.hippo4j.core.executor.DynamicThreadPool;
import cn.hippo4j.core.executor.DynamicThreadPoolExecutor;
import cn.hippo4j.core.executor.support.ThreadPoolBuilder;
import cn.hippo4j.core.executor.DynamicThreadPoolWrapper;
import cn.hippo4j.core.executor.support.ThreadPoolBuilder;
import cn.hippo4j.example.core.inittest.TaskDecoratorTest;
import lombok.extern.slf4j.Slf4j;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import java.util.concurrent.ThreadPoolExecutor;
import static cn.hippo4j.example.constant.GlobalTestConstant.MESSAGE_CONSUME;
import static cn.hippo4j.example.constant.GlobalTestConstant.MESSAGE_PRODUCE;
import static cn.hippo4j.example.core.constant.GlobalTestConstant.MESSAGE_CONSUME;
import static cn.hippo4j.example.core.constant.GlobalTestConstant.MESSAGE_PRODUCE;
/**
* Thread pool config.

@ -1,4 +1,4 @@
package cn.hippo4j.example.constant;
package cn.hippo4j.example.core.constant;
/**
* Global test variables.
@ -8,9 +8,8 @@ package cn.hippo4j.example.constant;
*/
public class GlobalTestConstant {
public static final String CUSTOM_POOL = "custom-pool";
public static final String MESSAGE_PRODUCE = "message-produce";
public static final String MESSAGE_CONSUME = "message-consume";
}

@ -1,4 +1,4 @@
package cn.hippo4j.example.handler;
package cn.hippo4j.example.core.handler;
import cn.hippo4j.core.spi.CustomRejectedExecutionHandler;
import org.slf4j.Logger;

@ -1,6 +1,6 @@
package cn.hippo4j.example.inittest;
package cn.hippo4j.example.core.inittest;
import cn.hippo4j.example.constant.GlobalTestConstant;
import cn.hippo4j.example.core.constant.GlobalTestConstant;
import cn.hutool.core.thread.ThreadUtil;
import cn.hippo4j.core.executor.manage.GlobalThreadPoolManage;
import cn.hippo4j.core.executor.DynamicThreadPoolWrapper;
@ -22,7 +22,10 @@ import java.util.concurrent.TimeUnit;
@Component
public class AlarmSendMessageTest {
// @PostConstruct
/**
* .
* , @PostConstruct
*/
@SuppressWarnings("all")
public void alarmSendMessageTest() {
ScheduledExecutorService scheduledThreadPool = Executors.newSingleThreadScheduledExecutor();

@ -1,4 +1,4 @@
package cn.hippo4j.example.inittest;
package cn.hippo4j.example.core.inittest;
import cn.hippo4j.core.executor.DynamicThreadPoolWrapper;
import cn.hutool.core.thread.ThreadUtil;
@ -37,7 +37,6 @@ public class RunStateHandlerTest {
// 启动动态线程池模拟运行任务
runTask(dynamicThreadPoolExecutor);
}
private void runTask(ExecutorService executorService) {

@ -1,6 +1,6 @@
package cn.hippo4j.example.inittest;
package cn.hippo4j.example.core.inittest;
import cn.hippo4j.example.constant.GlobalTestConstant;
import cn.hippo4j.example.core.constant.GlobalTestConstant;
import cn.hippo4j.core.executor.manage.GlobalThreadPoolManage;
import cn.hippo4j.core.executor.DynamicThreadPoolWrapper;
import cn.hutool.core.thread.ThreadUtil;

@ -0,0 +1,33 @@
HELP.md
target/
!.mvn/wrapper/maven-wrapper.jar
!**/src/main/**/target/
!**/src/test/**/target/
### STS ###
.apt_generated
.classpath
.factorypath
.project
.settings
.springBeans
.sts4-cache
### IntelliJ IDEA ###
.idea
*.iws
*.iml
*.ipr
### NetBeans ###
/nbproject/private/
/nbbuild/
/dist/
/nbdist/
/.nb-gradle/
build/
!**/src/main/**/build/
!**/src/test/**/build/
### VS Code ###
.vscode/

@ -0,0 +1,60 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>cn.hippo4j</groupId>
<artifactId>hippo4j-example</artifactId>
<version>${revision}</version>
</parent>
<artifactId>hippo4j-spring-boot-starter-example</artifactId>
<name>${project.artifactId}</name>
<properties>
<maven.deploy.skip>true</maven.deploy.skip>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>cn.hippo4j</groupId>
<artifactId>hippo4j-example-core</artifactId>
<version>${revision}</version>
</dependency>
<dependency>
<groupId>cn.hippo4j</groupId>
<artifactId>hippo4j-spring-boot-starter</artifactId>
<version>${revision}</version>
</dependency>
</dependencies>
<build>
<finalName>${project.artifactId}</finalName>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>

@ -0,0 +1,15 @@
package cn.hippo4j.example.starter;
import cn.hippo4j.core.enable.EnableDynamicThreadPool;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@EnableDynamicThreadPool
@SpringBootApplication(scanBasePackages = "cn.hippo4j.example.core")
public class Hippo4JExampleApplication {
public static void main(String[] args) {
SpringApplication.run(Hippo4JExampleApplication.class, args);
}
}

@ -0,0 +1,13 @@
package cn.hippo4j.example.starter;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
@SpringBootTest
class Hippo4JExampleApplicationTests {
@Test
void contextLoads() {
}
}
Loading…
Cancel
Save