Microservice 만들기
ICE에서 제공하지 않는 새로운 Microservice를 만들기 위해서는 다음과 같은 순서로 작업을 진행한다.
새로운 Microservice 등록 : 만들려고 하는 Microservice 노드를 등록한다. 일반적으로 schema 디렉토리 하위에 microservice.json 이란 이름으로 다음과 같은 형식으로 파일을 생성한다.
[ { "typeId": "microservice", "id": "samples", "name": "샘플", "eviction": 50000 } ]
NodeType 정의 : 해당 Microservice에서 동작하는 스키마를 다음과 같이 생성된 Microservice 아이디를 이용하여 정의한다.
{ "parentId": "samples", "typeId": "nodeType", "tid": "newMSSample", "typeName": "마이크로서비스 샘플 노드타입", "repositoryType": "node", "standaloneIndex": false, "microservice": "samples", "eviction": 10000, "datasource": "sampleDb", "tableName": "sampleData",
Datasource 등록 : 해당 Microservice에서 사용하는 별도의 DB가 있는 경우 해당 DB 접속 정보를 schema/profiles/{해당Profile}/dataSource.json 에 다음과 같이 추가한다.
{ "typeId" : "datasource", "id" : "sampleDb", "ssl" : false, "dsName" : "Sample DB", "jdbcUrl" : "jdbc:mysql://customer-1.cbdujfhow8ua.ap-northeast-2.rds.amazonaws.com:3306/sample", "dbType" : "mysql", "username" : "ice", "password" : "ice" }
SpringBoot 설정 : 해당 Microservice를 실행할 인스턴스를 지정하기 위해서 SpringBoot 설정에 application-{project}-{loc/dev/stg/prd}-{microservice}.yml과 같은 새로운 설정 파일을 추가허거나 기존 Profile 설정중에 하나에 core.cluster.default-service-group 항목에 생성한 Microservice를 설정한다. 자세한 내용은 아키텍처 정의서나 Configuration 를 참조