Browse Source
- 현 구현한 것으로는 drone 데이터가 초당 100건 정도 수용할 수 있을 정도 테스트 환경은 macos m3 core 1개와 memory 512MB(jvm 123.75MB)를 활용feature/socket
지대한
6 months ago
17 changed files with 109 additions and 34 deletions
@ -1,9 +1,12 @@ |
|||||||
FROM openjdk:21 |
FROM openjdk:21 |
||||||
|
|
||||||
ENV TZ=Asia/Seoul |
ENV TZ=Asia/Seoul |
||||||
|
#ENV JAVA_OPTS="-Xms512M -Xmx512M" |
||||||
|
ENV JAVA_OPTS="" |
||||||
|
|
||||||
EXPOSE 8000 |
EXPOSE 8000 |
||||||
|
|
||||||
WORKDIR /app |
WORKDIR /app |
||||||
|
|
||||||
ENTRYPOINT ["java","-jar","/app/kac-app-1.0.0.jar"] |
#ENTRYPOINT ["java","-jar","/app/kac-app-1.0.0.jar"] |
||||||
|
CMD java $JAVA_OPTS -jar /app/kac-app-1.0.0.jar |
@ -0,0 +1,31 @@ |
|||||||
|
package kr.co.palnet.kac.app.config; |
||||||
|
|
||||||
|
import lombok.RequiredArgsConstructor; |
||||||
|
import lombok.extern.slf4j.Slf4j; |
||||||
|
import org.springframework.boot.context.event.ApplicationReadyEvent; |
||||||
|
import org.springframework.context.ApplicationListener; |
||||||
|
import org.springframework.stereotype.Component; |
||||||
|
|
||||||
|
import java.lang.management.ManagementFactory; |
||||||
|
import java.lang.management.MemoryMXBean; |
||||||
|
import java.lang.management.MemoryPoolMXBean; |
||||||
|
|
||||||
|
@Slf4j |
||||||
|
@RequiredArgsConstructor |
||||||
|
@Component |
||||||
|
public class AppReadyEvent implements ApplicationListener<ApplicationReadyEvent> { |
||||||
|
|
||||||
|
@Override |
||||||
|
public void onApplicationEvent(ApplicationReadyEvent event) { |
||||||
|
try { |
||||||
|
float mb = 1024f * 1024f; |
||||||
|
MemoryMXBean memoryBean = ManagementFactory.getMemoryMXBean(); |
||||||
|
log.info("current heap memory init(xms): {}mb, max(xmx): {}mb", memoryBean.getHeapMemoryUsage().getInit() / mb, memoryBean.getHeapMemoryUsage().getMax() / mb); |
||||||
|
for (MemoryPoolMXBean mp : ManagementFactory.getMemoryPoolMXBeans()) { |
||||||
|
log.info("Pool: {} (type {}) = {}", mp.getName(), mp.getType(), mp.getUsage().getMax() / mb); |
||||||
|
} |
||||||
|
} catch (Exception e) { |
||||||
|
log.warn("when start app, not read jvm heap memory information."); |
||||||
|
} |
||||||
|
} |
||||||
|
} |
@ -1,9 +1,12 @@ |
|||||||
FROM openjdk:21 |
FROM openjdk:21 |
||||||
|
|
||||||
ENV TZ=Asia/Seoul |
ENV TZ=Asia/Seoul |
||||||
|
#ENV JAVA_OPTS="-Xms512M -Xmx512M" |
||||||
|
ENV JAVA_OPTS="" |
||||||
|
|
||||||
EXPOSE 8003 |
EXPOSE 8003 |
||||||
|
|
||||||
WORKDIR /app |
WORKDIR /app |
||||||
|
|
||||||
ENTRYPOINT ["java","-jar","/app/kac-socket-app-1.0.0.jar"] |
#ENTRYPOINT ["java",${JAVA_OPTS},"-jar","/app/kac-socket-app-1.0.0.jar"] |
||||||
|
CMD java $JAVA_OPTS -jar /app/kac-socket-app-1.0.0.jar |
@ -1,10 +1,13 @@ |
|||||||
FROM openjdk:21 |
FROM openjdk:21 |
||||||
|
|
||||||
ENV TZ=Asia/Seoul |
ENV TZ=Asia/Seoul |
||||||
|
#ENV JAVA_OPTS="-Xms512M -Xmx512M" |
||||||
|
ENV JAVA_OPTS="" |
||||||
|
|
||||||
EXPOSE 8001 |
EXPOSE 8001 |
||||||
EXPOSE 8002 |
EXPOSE 8002 |
||||||
|
|
||||||
WORKDIR /app |
WORKDIR /app |
||||||
|
|
||||||
ENTRYPOINT ["java","-jar","/app/kac-websocket-app-1.0.0.jar"] |
#ENTRYPOINT ["java","-jar","/app/kac-websocket-app-1.0.0.jar"] |
||||||
|
CMD java $JAVA_OPTS -jar /app/kac-websocket-app-1.0.0.jar |
Loading…
Reference in new issue