如不配置dubbo.spring.config 會自動加載META-INF/spring目錄下的所有Spring配置。
手動配置:(配在java命令-D參數或者dubbo.properties中)dubbo.spring.config=classpath*:*.xml ----配置spring配置加載位置 如
dubbo.container=log4j,springdubbo.application.name=hello-core-servicedubbo.application.owner=coretdubbo.registry.address=zookeeper://127.0.0.1:2181dubbo.protocol.name=dubbodubbo.protocol.port=56432dubbo.service.loadbalance=roundrobindubbo.spring.config=classpath:dubbo-provider.xmldubbo.log4j.level=DEBUGdubbo.log4j.level=INFOJetty Container 啟動一個內嵌Jetty,用于匯報狀態。 配置:(配在java命令-D參數或者dubbo.properties中) dubbo.jetty.port=8080 ----配置jetty啟動端口 dubbo.jetty.directory=/foo/bar ----配置可通過jetty直接訪問的目錄,用于存放靜態文件 dubbo.jetty.page=log,status,system ----配置顯示的頁面,缺省加載所有頁面 Log4j Container 自動配置log4j的配置,在多進程啟動時,自動給日志文件按進程分目錄。 配置:(配在java命令-D參數或者dubbo.properties中) dubbo.log4j.file=/foo/bar.log ----配置日志文件路徑 dubbo.log4j.level=WARN ----配置日志級別dubbo.log4j.subdirectory=20880 ----配置日志子目錄,用于多進程啟動,避免沖突
服務啟動
public class CoreLauncher { private static Logger logger = LoggerFactory.getLogger(CoreLauncher.class); /** * @param args */ public static void main(String[] args) { getLocalip(); logger.info("開始啟動asset"); //第一種 通過其他容器啟動如 tomcat ,jboss等 以web服務的形式啟動 // 第二種 通過自定義main函數 /* ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext( "classpath:dubbo-provider.xml"); context.start(); synchronized (CoreLauncher.class) { while (true) { try { CoreLauncher.class.wait(); } catch (Throwable e) { } } } */ //第三種 通過dubbo.container.main 要在classpath目錄下配置 dubbo.properties 相關配置 com.alibaba.dubbo.container.Main.main(args); } private static void getLocalip() { try { System.out.println("服務暴露的ip: " + java.net.InetAddress.getLocalHost().getHostAddress()); } catch (Exception e) { logger.error(e.getMessage(), e); } }}
新聞熱點
疑難解答