서버리스 문제 해결
아래 해결 방법으로 문제가 해결되지 않으면 Leapcell Discord 커뮤니티에 참여하여 추가 지원을 받으십시오.
Join Discord
서비스 라이프사이클
서비스 시작
아래 다이어그램은 Leapcell Linux VM 내에서 서비스가 시작되는 전체 프로세스를 보여줍니다.

- 구성된 시작 명령을 Bash를 통해 실행합니다.
- 명령이 실패하면 빌드 명령에서 종속성이 누락되었는지 확인하십시오.
0.0.0.0:{your_port}/kaithhealth
를 지속적으로 폴링하여 포트가 수신 대기 중인지 확인합니다.- 시작이 완료되면 외부 트래픽을 실행 중인 서비스로 라우팅합니다.
서버리스 환경 제약 조건
서버리스와 영구 서버 간의 더 많은 비교는 다음을 참조하십시오. serverless vs persistent server
제약 조건 | 설명 | 참고 사항 / 권장 사항 |
---|---|---|
파일 시스템 | /tmp 경로만 쓰기 가능하며, 다른 모든 경로는 읽기 전용입니다. | 시스템은 매우 동적입니다. 다음 요청은 다른 인스턴스에 도달할 수 있으며 이전 데이터를 유지하지 않습니다. 완전한 쓰기 가능 경로에는 영구 서버를 사용하십시오. |
HTTP 단기 요청만 해당 | Leapcell 서버리스 서비스는 동적이며 요청-응답 패턴에 최적화되어 있습니다. | 스트리밍 서비스(예: WebSocket)의 경우 장기 실행 서비스에 더 적합한 영구 서버를 고려하십시오. |
요청 시간 초과 | 단일 요청에 대한 최대 실행 시간은 15분입니다. | 이 제한을 초과하는 작업에는 영구 서버를 사용하십시오. |
CPU 일시 중단 | 유휴 기간 동안 인스턴스의 CPU가 일시 중단됩니다. | 들어오는 요청이 없으면 백그라운드 작업이 실행될 수 없습니다. |
일반적인 오류
일반적인 오류 및 해결 방법
오류 | 원인 | 해결 방법 |
---|---|---|
Read-only file system 또는 Permission denied | Leapcell은 초고속 콜드 스타트 성능을 우선시하므로 /tmp 디렉토리만 쓰기 가능합니다. 다른 모든 디렉토리는 읽기 전용입니다. | 애플리케이션이 쓰는 모든 파일이 /tmp 디렉토리로 향하도록 하십시오. 자세한 내용은 Storage Documentation를 참조하십시오. |
공유 메모리: /dev/shm 권한 거부 | Leapcell 환경에서는 /dev/shm 이 읽기 전용이므로 공유 메모리가 지원되지 않습니다. | 대신 프로세스 간 통신에 pipes 또는 sockets 를 사용하십시오. |
Response is bigger than the maximum allowed size | Leapcell은 응답 크기를 6MB로 제한합니다. | 더 큰 데이터의 경우 객체 스토리지에 저장하고 객체의 URL을 대신 반환하십시오. |
Port Some(8080) is not being listened to by the service | 애플리케이션이 올바른 포트에서 수신 대기하고 있지 않습니다. | 애플리케이션이 설정에 구성된 포트에서 수신 대기하는지 확인하십시오. |
실행 환경 사용자 대 빌드 환경 사용자 불일치 | 빌드 중에는 사용자에게 루트 권한이 있습니다. 실행 시 앱은 비루트 사용자로 실행됩니다. | 루트 권한이 필요한 작업을 실행 환경의 제약 조건 하에서 작동하도록 조정하십시오. |