아폴로(아폴로)설치 배치 및 자바 통합 실현

서버 배치
apollo wiki 에 따라 배치 할 수 있 습 니 다.
https://github.com/ctripcorp/apollo/wiki/Quick-Start
자바 환경 설치
java
데이터베이스 만 들 기
Apollo 서버 는 모두 두 개의 데이터 베 이 스 를 필요 로 합 니 다.Apollo PortalDB 와 Apollo ConfigDB 는 데이터 베이스,표 의 생 성,샘플 데 이 터 를 각각 sql 파일 로 준비 하고 데이터 베 이 스 를 가 져 오기 만 하면 됩 니 다.
sql 파일 두 개 실행
sql/apolloportaldb.sql
sql/apolloconfigdb.sql
두 개의 데이터 베 이 스 를 만 들 것 입 니 다.
설치 패키지 다운로드
https://github.com/nobodyiam/apollo-build-scripts
서버 배치
서버 에 패키지 apollo-quick-start 를 빠르게 배치 합 니 다.
압축 해제 파일
서버 설정
Apollo 서버 에서 만 든 데이터베이스 에 연결 하 는 방법 을 알 아야 하기 때문에 demo.sh 를 편집 하고 Apollo PortalDB 와 Apollo ConfigDB 와 관련 된 데이터베이스 연결 문자열 정 보 를 수정 해 야 합 니 다.

#apollo config db info
apollo_config_db_url=jdbc:mysql://localhost:3306/ApolloConfigDB?characterEncoding=utf8
apollo_config_db_username=   
apollo_config_db_password=  (      ,    )

# apollo portal db info
apollo_portal_db_url=jdbc:mysql://localhost:3306/ApolloPortalDB?characterEncoding=utf8
apollo_portal_db_username=   
apollo_portal_db_password=  (      ,    )
서버 포트 주소 정보 수정
meta server url

config_server_url=http://10.168.16.125:8080
admin_server_url=http://10.168.16.125:8090
portal_url=http://10.168.16.125:8070
Liux 서버 에 배치 되 어 있 으 면 주 소 를 서버 IP 주소 로 바 꿔 야 합 니 다.
메모:demo.sh 의 다른 부분 을 수정 하지 마 세 요.
포트 가 점용 되 지 않 았 는 지 확인 합 니 다.
Quick Start 스 크 립 트 는 로 컬 에서 3 개의 서 비 스 를 시작 합 니 다.각각 8070,8080,8090 포트 를 사용 합 니 다.이 3 개의 포트 가 현재 사용 되 지 않 았 는 지 확인 하 십시오.
예 를 들 어 Linux/mac 에서 다음 명령 을 통 해 검사 할 수 있 습 니 다.
lsof -i:8080
시작 스 크 립 트 실행
./demo.sh start
다음 출력 을 보면 시작 이 성공 했다 는 뜻 입 니 다!

==== starting service ====
Service logging file is ./service/apollo-service.log
Started [10768]
Waiting for config service startup.......
Config service started. You may visit http://localhost:8080 for service status now!
Waiting for admin service startup....
Admin service started
==== starting portal ====
Portal logging file is ./portal/apollo-portal.log
Started [10846]
Waiting for portal startup......
Portal started. You can visit http://localhost:8070 now!
Apollo 설정 센터 사용 하기
서버 에 접근 하 는 IP:8070 접근 가능
예 를 들 면:http://10.168.16.125:8070
这里写图片描述
기본 사용자 이름 비밀 번 호 는 apollo admin 입 니 다.
로그 인 후 아래 화면
这里写图片描述
자신의 항목 을 만 들 수 있 습 니 다.
这里写图片描述
namespace 추가
namespace 는 설정 파일 이름 에 해당 합 니 다.
namespace 에 속성 을 추가 하면 텍스트 로 추가 할 수 있 습 니 다.
스스로 연구 하여 생각해 볼 수 있다
자바 서비스 통합
pom 통합
공식 제공 maven

<dependency>
  <groupId>com.ctrip.framework.apollo</groupId>
  <artifactId>apollo-client</artifactId>
  <version>0.9.1</version>
</dependency>
안 내 려 오 더 라 고요.jar 가방.
해결 방안
소스 코드 다운로드
https://github.com/ctripcorp/apollo.git
그 중의 apollo-client 패 키 지 를 컴 파일 하여 로 컬 에 설치 합 니 다.
컴 파일 된 jar 패 키 지 를 도입 하면 됩 니 다.

<dependency>
  <groupId>com.ctrip.framework.apollo</groupId>
  <artifactId>apollo-client</artifactId>
  <version>0.10.0-SNAPSHOT</version>
</dependency>
기 존 응용 접속
Apollo 에 접속 한 후에 이 설정 들 은 Apollo 로 편리 하 게 이동 할 수 있 습 니 다.구체 적 인 절 차 는 다음 과 같 습 니 다.
Apollo 에서 새 항목 적용 하기
응용 프로그램 에 META-INF/app.properties 설정
원래 설정(properties 형식 이 어야 함)을 복사 한 다음 Apollo 에서 제공 하 는 텍스트 편집 모드 를 통 해 응용 프로그램 namespace 에 모두 붙 여 설정 을 발표 합 니 다.
만약 원래 다른 형식 이 었 다 면,예 를 들 어 yml,먼저 properties 형식 으로 바 꾸 십시오.
boottstrap.properties,application.properties 와 같은 원래 설정 파일 을 항목 에서 삭제 합 니 다.
app.properties 내용 은 프로젝트 를 만 드 는 APPID(응용 ID)입 니 다.앞에서 만 든 12345 와 같 습 니 다.

# test
app.id=12345
리 소스 에 apollo-env.properties 환경 별 서버 주 소 를 추가 합 니 다.

local.meta=http://10.168.16.125:8080
dev.meta=http://10.168.16.125:8080
fat.meta=${fat_meta}
uat.meta=${uat_meta}
lpt.meta=${lpt_meta}
pro.meta=${pro_meta}
환경 수정
/opt/settings/server.properties(Mac/Linux)또는 C:\opt\settings\\server.properties(Windows)파일 을 수정 하고 env 를 DEV 로 설정 합 니 다.

env=DEV
스프링 통합
apollo 시작 설정

<apollo:config/>
apollo 불 러 오기 namespace 설정

 <apollo:config namespaces="dubbo" order="1"/>
\#\#\#공식 설정 은 다음 과 같 습 니 다.
아폴로 도 스프링 통합(Spring 3.1.1+)을 지원 하 며 간단 한 설정 만 하면 된다.
Apollo 는 현재 XML 기반 설정 을 지원 할 뿐만 아니 라 현재 유행 하 는 자바 기반 설정 도 지원 합 니 다.
주의해 야 할 것 은 이전에 org.spring from work.beans.factory.config.Property Placeholder Configure 를 사용 한 것 이 있다 면 org.spring from work.context.support.Property Sources Placeholder Configure 로 교체 하 십시오.Spring 3.1 이후 에는 Property Placeholder Configure 를 사용 하 는 것 을 권장 하지 않 습 니 다.Property Sources Placeholder Configure 로 바 꾸 려 고 합 니 다.
XML 기반 설정
주:apollo 와 관련 된 xml namespace 를 설정 파일 머리 에 추가 해 야 합 니 다.그렇지 않 으 면 xml 문법 오류 가 발생 할 수 있 습 니 다.
1.기본 namespace 설정 을 Spring 에 주입 합 니 다.

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:apollo="http://www.ctrip.com/schema/apollo"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
    http://www.ctrip.com/schema/apollo http://www.ctrip.com/schema/apollo.xsd">
  <!--            ,             ,    Apollo  application namespace    Spring    -->
  <apollo:config/>
  <bean class="com.ctrip.framework.apollo.spring.TestXmlBean">
    <property name="timeout" value="${timeout:100}"/>
    <property name="batch" value="${batch:200}"/>
  </bean>
</beans>
2.여러 namespace 설정 을 Spring 에 주입

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:apollo="http://www.ctrip.com/schema/apollo"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
    http://www.ctrip.com/schema/apollo http://www.ctrip.com/schema/apollo.xsd">
  <!--            ,             ,    Apollo  application namespace    Spring    -->
  <apollo:config/>
  <!--               ,  Apollo  FX.apollo FX.soa namespace    Spring    -->
  <apollo:config namespaces="FX.apollo,FX.soa"/>
  <bean class="com.ctrip.framework.apollo.spring.TestXmlBean">
    <property name="timeout" value="${timeout:100}"/>
    <property name="batch" value="${batch:200}"/>
  </bean>
</beans>
dubbo 서비스 통합

 <apollo:config/>
<apollo:config namespaces="dubbo" order="1"/>


  <!--       ,    dubbo.properties   -->
  <dubbo:application name="${dubbo.application.name}" />
  <!--           ,            -->
  <dubbo:registry address="${dubbo.registry.address}"/>

  <bean id="xxxService" class="com.xxx.cache.service.impl.RedisServiceImpl"/>
  <dubbo:service interface="com.xxx.xxx.service.RedisService" ref="redisService"
          version="${dubbo.version}"/>
dubbo 는 기본적으로 설정 할 필요 가 없 지만 apollo 를 사용 한 후 dubbo 등록 주 소 를 자동 으로 주입 하지 않 았 습 니 다.수 동 으로 설명 해 야 합 니 다.원인 은 정 해 져 있 습 니 다.

 <dubbo:registry address="${dubbo.registry.address}"/>
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기