엔진
본 문서에서는 Installer
를 이용한 BXI엔진 설치 방법을 설명한다.
설치
1. bxi server installer 실행
bash bxi_server_3.4.4-${TAG_NAME}.bin
2. 설치경로 입력
엔진을 설치할 경로를 입력한다. 미입력 시 현재경로 하위의 engine디렉토리에 설치된다.
###########################################
BXI Installation
3.4.4-${TAG_NAME}
###########################################
BXI Installation Path [/home/bxi/engine]: /home/bxi/engine
3. 설치 여부 입력
yes
를 입력해 설치를 진행한다.
BXI Installation Path : /home/bxi/engine
Do you want to continue with the installation [yes/no]? yes
4. 환경변수 확인
~/.bash_profile
에 BXIHOME
및 KAFKA_HOME
의 위치가 정상적으로 설정되었는지 확인한 후,
안내에 따라 해당 환경변수를 적용한다. (ex. source ~/.bash_profile
)
Installing...
/home/installer/engine doesn't exist, trying to create path.
Installation is completed!
/home/bxi/.bash_profile file has changed, please type : source /home/bxi/.bash_profile
환경설정
정상적인 엔진 실행을 위해서는 다음과 같은 부가적인 작업을 수행해야 한다.
1. ApplicationContext.xml
<bean id="dataSource" class="org.apache.commons.dbcp2.BasicDataSource">
<property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"/>
<property name="url" value="jdbc:oracle:thin:@ip:port:sid"/>
<property name="username" value="user"/>
<property name="password" value="password"/>
<property name="validationQuery" value="SELECT 1 FROM DUAL"/>
<property name="testWhileIdle" value="true"/>
<property name="timeBetweenEvictionRunsMillis" value="1800000"/>
</bean>
BXI는 거래 후 발생하는 일부 로그에 대해 JDBC Batch를 사용하여 DB에 저장한다. 이때, MySQL JDBC의 경우 JDBC URL에 rewriteBatchedStatements=true 옵션을 추가해야 실제로 여러 개의 insert 문을 하나의 insert 문으로 변경한다. 따라서 MySQL을 사용하는 사이트는 해당 옵션을 고려해야 한다.
2. bxi.properties
실행할 테넌트와 엔진 타입을 설정한다.
bxi.tenant.id=999
bxi.engine.type=FEP
테넌트란 사용자가 접근 가능한 데이터에만 액세스할 수 있도록 지원하는 것으로,
개발/운영 등의 시스템을 구분하는 용도로 사용할 수 있다.
엔진 타입에는 FEP
, MCI
, EAI
가 있으며 각각의 엔진 타입에 따른 기본 테넌트 값은 아래와 같다.
엔진타입 | 기본 테넌트 값 |
---|---|
FEP | 999 |
MCI | 001 |
EAI | 002 |
실행
웹어드민을 통해 필요한 정보를 모두 등록한 후 실행이 가능하다. 필요한 데이터는 링크를 참조한다.
startup.sh
으로 엔진을 실행한다.
노드ID가 node01
인 경우, 실행 명령어는 다음과 같다.
${BXIHOME}/bin/startup.sh node01
엔진이 정상적으로 실행되면 웹어드민의 실행관리 > 노드실행
에서 정상실행
상태를 확인할 수 있으며,
${BXIHOME}/bin/shutdown.sh
으로 기동한 노드를 종료할 수 있다.