Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Modeler   Code  
»áÔ±   
 
   
 
 
     
   
 ¶©ÔÄ
  ¾èÖú
DubboÓëZookeeper¡¢SpringMVCÕûºÏºÍʹÓ㨸ºÔؾùºâ¡¢ÈÝ´í£©
 
×÷Õߣºzhengcongyi À´Ô´£ºCSDN ·¢²¼ÓÚ£º 2016-10-27
  3878  次浏览      27
 

»¥ÁªÍøµÄ·¢Õ¹£¬ÍøÕ¾Ó¦ÓõĹæÄ£²»¶ÏÀ©´ó£¬³£¹æµÄ´¹Ö±Ó¦Óüܹ¹ÒÑÎÞ·¨Ó¦¶Ô£¬·Ö²¼Ê½·þÎñ¼Ü¹¹ÒÔ¼°Á÷¶¯¼ÆËã¼Ü¹¹ÊÆÔÚ±ØÐУ¬DubboÊÇÒ»¸ö·Ö²¼Ê½·þÎñ¿ò¼Ü£¬ÔÚÕâÖÖÇé¿öϵ®ÉúµÄ¡£ÏÖÔÚºËÐÄÒµÎñ³éÈ¡³öÀ´£¬×÷Ϊ¶ÀÁ¢µÄ·þÎñ£¬Ê¹Ç°¶ËÓ¦ÓÃÄܸü¿ìËÙºÍÎȶ¨µÄÏìÓ¦¡£

µÚÒ»£º½éÉÜDubbo±³¾°

´ó¹æÄ£·þÎñ»¯Ö®Ç°£¬Ó¦ÓÿÉÄÜÖ»ÊÇͨ¹ýRMI»òHessianµÈ¹¤¾ß£¬¼òµ¥µÄ±©Â¶ºÍÒýÓÃÔ¶³Ì·þÎñ£¬Í¨¹ýÅäÖ÷þÎñµÄURLµØÖ·½øÐе÷Óã¬Í¨¹ýF5µÈÓ²¼þ½øÐиºÔؾùºâ¡£

(1) µ±·þÎñÔ½À´Ô½¶àʱ£¬·þÎñURLÅäÖùÜÀí±äµÃ·Ç³£À§ÄÑ£¬F5Ó²¼þ¸ºÔؾùºâÆ÷µÄµ¥µãѹÁ¦Ò²Ô½À´Ô½´ó¡£ ´ËʱÐèÒªÒ»¸ö·þÎñ×¢²áÖÐÐÄ£¬¶¯Ì¬µÄ×¢²áºÍ·¢ÏÖ·þÎñ£¬Ê¹·þÎñµÄλÖÃ͸Ã÷¡£ ²¢Í¨¹ýÔÚÏû·Ñ·½»ñÈ¡·þÎñÌṩ·½µØÖ·ÁÐ±í£¬ÊµÏÖÈí¸ºÔØ¾ùºâºÍFailover£¬½µµÍ¶ÔF5Ó²¼þ¸ºÔؾùºâÆ÷µÄÒÀÀµ£¬Ò²ÄܼõÉÙ²¿·Ö³É±¾¡£

(2) µ±½øÒ»²½·¢Õ¹£¬·þÎñ¼äÒÀÀµ¹ØÏµ±äµÃ´í×Ù¸´ÔÓ£¬ÉõÖÁ·Ö²»ÇåÄĸöÓ¦ÓÃÒªÔÚÄĸöÓ¦ÓÃ֮ǰÆô¶¯£¬¼Ü¹¹Ê¦¶¼²»ÄÜÍêÕûµÄÃèÊöÓ¦Óõļܹ¹¹ØÏµ¡£ Õâʱ£¬ÐèÒª×Ô¶¯»­³öÓ¦ÓüäµÄÒÀÀµ¹ØÏµÍ¼£¬ÒÔ°ïÖú¼Ü¹¹Ê¦ÀíÇåÀí¹ØÏµ¡£

(3) ½Ó×Å£¬·þÎñµÄµ÷ÓÃÁ¿Ô½À´Ô½´ó£¬·þÎñµÄÈÝÁ¿ÎÊÌâ¾Í±©Â¶³öÀ´£¬Õâ¸ö·þÎñÐèÒª¶àÉÙ»úÆ÷Ö§³Å£¿Ê²Ã´Ê±ºò¸Ã¼Ó»úÆ÷£¿ ΪÁ˽â¾öÕâЩÎÊÌ⣬µÚÒ»²½£¬Òª½«·þÎñÏÖÔÚÿÌìµÄµ÷ÓÃÁ¿£¬ÏìӦʱ¼ä£¬¶¼Í³¼Æ³öÀ´£¬×÷ΪÈÝÁ¿¹æ»®µÄ²Î¿¼Ö¸±ê¡£ Æä´Î£¬Òª¿ÉÒÔ¶¯Ì¬µ÷ÕûÈ¨ÖØ£¬ÔÚÏßÉÏ£¬½«Ä³Ì¨»úÆ÷µÄÈ¨ÖØÒ»Ö±¼Ó´ó£¬²¢ÔÚ¼Ó´óµÄ¹ý³ÌÖмǼÏìӦʱ¼äµÄ±ä»¯£¬Ö±µ½ÏìӦʱ¼äµ½´ï·§Öµ£¬¼Ç¼´ËʱµÄ·ÃÎÊÁ¿£¬ÔÙÒÔ´Ë·ÃÎÊÁ¿³ËÒÔ»úÆ÷Êý·´ÍÆ×ÜÈÝÁ¿¡£

µÚ¶þ£ºDubboµÄ¼ò½é

DubboÊÇÒ»¸ö·Ö²¼Ê½·þÎñ¿ò¼Ü,½â¾öÁËÉÏÃæµÄËùÃæ¶ÔµÄÎÊÌ⣬DubboµÄ¼Ü¹¹ÈçͼËùʾ£º

½Úµã½Çɫ˵Ã÷£º

Provider: ±©Â¶·þÎñµÄ·þÎñÌṩ·½¡£

Consumer: µ÷ÓÃÔ¶³Ì·þÎñµÄ·þÎñÏû·Ñ·½¡£

Registry: ·þÎñ×¢²áÓë·¢ÏÖµÄ×¢²áÖÐÐÄ¡£

Monitor: ͳ¼Æ·þÎñµÄµ÷Óôε÷ºÍµ÷ÓÃʱ¼äµÄ¼à¿ØÖÐÐÄ¡£

Container: ·þÎñÔËÐÐÈÝÆ÷¡£

µ÷ÓùØÏµËµÃ÷£º

0. ·þÎñÈÝÆ÷¸ºÔðÆô¶¯£¬¼ÓÔØ£¬ÔËÐзþÎñÌṩÕß¡£

1. ·þÎñÌṩÕßÔÚÆô¶¯Ê±£¬Ïò×¢²áÖÐÐÄ×¢²á×Ô¼ºÌṩµÄ·þÎñ¡£

2. ·þÎñÏû·ÑÕßÔÚÆô¶¯Ê±£¬Ïò×¢²áÖÐÐĶ©ÔÄ×Ô¼ºËùÐèµÄ·þÎñ¡£

3. ×¢²áÖÐÐÄ·µ»Ø·þÎñÌṩÕßµØÖ·ÁÐ±í¸øÏû·ÑÕߣ¬Èç¹ûÓбä¸ü£¬×¢²áÖÐÐĽ«»ùÓÚ³¤Á¬½ÓÍÆËͱä¸üÊý¾Ý¸øÏû·ÑÕß

4. ·þÎñÏû·ÑÕߣ¬´ÓÌṩÕßµØÖ·ÁбíÖУ¬»ùÓÚÈí¸ºÔØ¾ùºâËã·¨£¬Ñ¡Ò»Ì¨ÌṩÕß½øÐе÷Óã¬Èç¹ûµ÷ÓÃʧ°Ü£¬ÔÙÑ¡Áíһ̨µ÷Óá£

5. ·þÎñÏû·ÑÕߺÍÌṩÕߣ¬ÔÚÄÚ´æÖÐÀۼƵ÷ÓôÎÊýºÍµ÷ÓÃʱ¼ä£¬¶¨Ê±Ã¿·ÖÖÓ·¢ËÍÒ»´Îͳ¼ÆÊý¾Ýµ½¼à¿ØÖÐÐÄ¡£

DubboÌṩÁ˺ܶàЭÒ飬DubboЭÒé¡¢RMIЭÒé¡¢HessianЭÒ飬ÎÒÃDz鿴DubboÔ´´úÂ룬Óи÷ÖÖЭÒéµÄʵÏÖ£¬ÈçͼËùʾ£º

ÎÒÃÇ֮ǰûÓÃDubbo֮ǰʱ£¬´ó²¿·Ö¶¼Ê¹ÓÃHessianÀ´Ê¹ÓÃÎÒÃÇ·þÎñµÄ±©Â¶ºÍµ÷Óã¬ÀûÓÃHessianProxyFactoryµ÷ÓÃÔ¶³Ì½Ó¿Ú¡£

ÉÏÃæÊDzο¼ÁËDubbo¹Ù·½Íø½éÉÜ£¬½ÓÏÂÀ´ÎÒÃÇÀ´½éÉÜSpringMVC¡¢Dubbo¡¢ZookeeperÕûºÏʹÓá£

µÚÈý£ºDubboÓëZookeeper¡¢SpringMVCÕûºÏʹÓÃ

µÚÒ»²½£ºÔÚLinuxÉϰ²×°Zookeeper

Zookeeper×÷ΪDubbo·þÎñµÄ×¢²áÖÐÐÄ£¬DubboÔ­ÏÈ»ùÓÚÊý¾Ý¿âµÄ×¢²áÖÐÐÄ£¬Ã»²ÉÓÃZookeeper£¬ZookeeperÒ»¸ö·Ö²¼Ê½µÄ·þÎñ¿ò¼Ü£¬ÊÇÊ÷Ð͵ÄĿ¼·þÎñµÄÊý¾Ý´æ´¢£¬ÄÜ×öµ½¼¯Èº¹ÜÀíÊý¾Ý £¬ÕâÀïÄܺܺõÄ×÷ΪDubbo·þÎñµÄ×¢²áÖÐÐÄ£¬DubboÄÜÓëZookeeper×öµ½¼¯Èº²¿Ê𣬵±ÌṩÕß³öÏֶϵçµÈÒ쳣ͣ»úʱ£¬Zookeeper×¢²áÖÐÐÄÄÜ×Ô¶¯É¾³ýÌṩÕßÐÅÏ¢£¬µ±ÌṩÕßÖØÆôʱ£¬ÄÜ×Ô¶¯»Ö¸´×¢²áÊý¾Ý£¬ÒÔ¼°¶©ÔÄÇëÇó¡£ÎÒÃÇÏÈÔÚlinuxÉϰ²×°Zookeeper£¬ÎÒÃǰ²×°×î¼òµ¥µÄµ¥µã£¬¼¯Èº±È½ÏÂé·³¡£

£¨1£©ÏÂÔØZookeeper-3.4.6.tar.gz µØÖ·http://www.apache.org/dist/zookeeper/

£¨2£© ÎÒÃǷŵ½LinuxϵÄÒ»¸öÎļþ¼Ð£¬È»ºó½âѹ£º #tar zxvf zookeeper-3.4.6.tar.gz

£¨3£©È»ºóÔÚ¶ÔÓ¦µÄzookeeper-3.4.6/conf ÏÂÓÐÒ»¸öÎļþzoo_sample.cfgµÄÕâ¸öÎļþÀïÃæÅäÖÃÁ˼àÌý¿Í»§¶ËÁ¬½ÓµÄ¶Ë¿ÚµÈһЩÐÅÏ¢£¬Zookeeper ÔÚÆô¶¯Ê±»áÕÒzoo.cfgÕâ¸öÎļþ×÷ΪĬÈÏÅäÖÃÎļþ,ËùÒÔÎÒÃǸ´ÖÆÒ»¸öÃû³ÆÎªzoo.cfgµÄÎļþ£¬ÈçͼËùʾ£º

ÎÒÃDz鿴һÏÂÕâ¸öÎļþµÄÀïÃæµÄһЩÅäÖÃÐÅÏ¢£¬ÈçͼËùʾ£º

˵Ã÷£º

clientPort£º¼àÌý¿Í»§¶ËÁ¬½ÓµÄ¶Ë¿Ú¡£

tickTime£º»ù±¾Ê¼þµ¥Ôª£¬ÒÔºÁÃëΪµ¥Î»¡£ËüÓÃÀ´¿ØÖÆÐÄÌøºÍ³¬Ê±£¬Ä¬ÈÏÇé¿öÏÂ×îСµÄ»á»°³¬Ê±Ê±¼äΪÁ½±¶µÄ tickTime¡£

ÎÒÃÇ¿ÉÒÔ¶ÔÅäÖÃÎļþµÄ¶Ë¿ÚµÈ»òÕß½øÐи߼¶ÅäÖúͼ¯ÈºÅäÖÃÀýÈ磺maxClientCnxns£ºÏÞÖÆÁ¬½Óµ½ ZooKeeper µÄ¿Í»§¶ËµÄÊýÁ¿µÈ

(4)Æô¶¯Zookeeper µÄ·þÎñ£¬ÈçͼËùʾ£º

µ½Õâ±ßZookeeperµÄ°²×°ºÍÅäÖÃÍê³É

µÚ¶þ²½£ºÅäÖÃdubbo-adminµÄ¹ÜÀíÒ³Ãæ£¬·½±ãÎÒÃǹÜÀíÒ³Ãæ

(1)ÏÂÔØdubbo-admin-2.4.1.war°ü£¬ÔÚLinuxµÄtomcat²¿Êð£¬ÏȰÑdubbo-admin-2.4.1·ÅÔÚtomcatµÄwebapps/ROOTÏ£¬È»ºó½øÐнâѹ£º #jar -xvf dubbo-admin-2.4.1.war

(2)È»ºóµ½webapps/ROOT/WEB-INFÏ£¬ÓÐÒ»¸ödubbo.propertiesÎļþ£¬ÀïÃæÖ¸ÏòZookeeper £¬Ê¹ÓõÄÊÇZookeeper µÄ×¢²áÖÐÐÄ£¬ÈçͼËùʾ£º

(3)È»ºóÆô¶¯tomcat·þÎñ£¬Óû§ÃûºÍÃÜÂ룺root,²¢·ÃÎÊ·þÎñ£¬ÏÔʾµÇÂ½Ò³Ãæ£¬ËµÃ÷dubbo-admin²¿Êð³É¹¦£¬ÈçͼËùʾ£º

µÚÈý²½£ºSpringMVCÓëDubboµÄÕûºÏ£¬Õâ±ßʹÓõÄMavenµÄ¹ÜÀíÏîÄ¿ µÚÒ»£ºÎÒÃÇÏÈ¿ª·¢·þÎñ×¢²áµÄ£¬¾ÍÊÇÌṩ·þÎñ£¬ÏîÄ¿½á¹¹ÈçͼËùʾ£º

£¨1£©test-maven-apiÏîÄ¿¼ÓÈëÁËÒ»¸ö·þÎñ½Ó¿Ú£¬´úÂëÈçÏ£º

[java] view plain copy
public interface TestRegistryService {
public String hello(String name);
}

£¨2£©test-maven-consoleÔÚpom.xml¼ÓÈëDubboºÍZookeeperµÄjar°ü¡¢ÒýÓÃtest-maven-apiµÄjar°ü£¬´úÂëÈçÏ£º

 <dependency>  
<groupId>cn.test</groupId>
<artifactId>test-maven-api</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>

<dependency>
<groupId>com.alibaba</groupId>
<artifactId>dubbo</artifactId>
<version>2.5.3</version>
</dependency>

<dependency>
<groupId>org.apache.zookeeper</groupId>
<artifactId>zookeeper</artifactId>
<version>3.4.6</version>
</dependency>

<dependency>
<groupId>com.github.sgroschupf</groupId>
<artifactId>zkclient</artifactId>
<version>0.1</version>
</dependency>

(3)test-maven-consoleʵÏÖ¾ßÌåµÄ·þÎñ£¬´úÂëÈçÏ£º

@Service("testRegistryService")  
ublic class TestRegistryServiceImpl implements TestRegistryService {
public String hello(String name) {
return "hello"+name;
}

(4)ÎÒÃÇ·þÎñÒÔ¼°ÊµÏÖºÃÁË£¬ÕâʱҪ±©Â¶·þÎñ£¬´úÂëÈçÏ£º

<?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:jee="http://www.springframework.org/schema/jee"
xmlns:tx="http://www.springframework.org/schema/tx"
<span style="color:#cc0000;">xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"</span>
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.1.xsd
http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.1.xsd
<span style="color:#990000;">http://code.alibabatech.com/schema/dubbo http://code.alibabatech.com/schema/dubbo/dubbo.xsd</span>
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd"
default-lazy-init="false" >
<!-- Ìṩ·½Ó¦ÓÃÃû³ÆÐÅÏ¢£¬Õâ¸öÏ൱ÓÚÆðÒ»¸öÃû×Ö£¬ÎÒÃÇdubbo¹ÜÀíÒ³Ãæ±È½ÏÇåÎúÊÇÄĸöÓ¦Óñ©Â¶³öÀ´µÄ -->
<dubbo:application name="dubbo_provider"></dubbo:application>
<!-- ʹÓÃzookeeper×¢²áÖÐÐı©Â¶·þÎñµØÖ· -->
<dubbo:registry address="zookeeper://127.0.0.1:2181" check="false" subscribe="false" register=""></dubbo:registry>
<!-- Òª±©Â¶µÄ·þÎñ½Ó¿Ú -->
<dubbo:service interface="cn.test.dubbo.registry.service.TestRegistryService" ref="testRegistryService" />
</beans>

˵Ã÷£º dubbo:registry ±êǩһЩÊôÐÔµÄ˵Ã÷£º

1£©registerÊÇ·ñÏò´Ë×¢²áÖÐÐÄ×¢²á·þÎñ£¬Èç¹ûÉèΪfalse£¬½«Ö»¶©ÔÄ£¬²»×¢²á¡£

2£©check×¢²áÖÐÐIJ»´æÔÚʱ£¬ÊÇ·ñ±¨´í¡£

3£©subscribeÊÇ·ñÏò´Ë×¢²áÖÐÐĶ©ÔÄ·þÎñ£¬Èç¹ûÉèΪfalse£¬½«Ö»×¢²á£¬²»¶©ÔÄ¡£

4£©timeout×¢²áÖÐÐÄÇëÇó³¬Ê±Ê±¼ä(ºÁÃë)¡£

5£©address¿ÉÒÔZookeeper¼¯ÈºÅäÖ㬵ØÖ·¿ÉÒÔ¶à¸öÒÔ¶ººÅ¸ô¿ªµÈ¡£

dubbo:service±êÇ©µÄһЩÊôÐÔ˵Ã÷£º

1£©interface·þÎñ½Ó¿ÚµÄ·¾¶

2£©refÒýÓöÔÓ¦µÄʵÏÖÀàµÄBeanµÄID

3£©registryÏòÖ¸¶¨×¢²áÖÐÐÄ×¢²á£¬ÔÚ¶à¸ö×¢²áÖÐÐÄʱʹÓã¬ÖµÎª<dubbo:registry>µÄidÊôÐÔ£¬¶à¸ö×¢²áÖÐÐÄIDÓöººÅ·Ö¸ô£¬Èç¹û²»Ï뽫¸Ã·þÎñ×¢²áµ½ÈκÎregistry£¬¿É½«ÖµÉèΪN/A

4£©register ĬÈÏtrue £¬¸ÃЭÒéµÄ·þÎñÊÇ·ñ×¢²áµ½×¢²áÖÐÐÄ¡£

(5)Æô¶¯ÏîÄ¿£¬È»ºóÎÒÃÇÔÚDubbo¹ÜÀíÒ³ÃæÉÏÏÔʾ£¬ÒѾ­±©Â¶µÄ·þÎñ£¬µ«ÏÔʾ»¹Ã»ÓÐÏû·ÑÕߣ¬ÒòΪÎÒÃÇ»¹Ã»ÊµÏÖÏû·ÑÕß·þÎñ£¬ÈçͼËùʾ£º

µÚ¶þ£ºÎÒÃÇÔÚ¿ª·¢·þÎñÏû·ÑÕߣ¬¾ÍÊǵ÷Ó÷þÎñ£¬ÎÒÃÇÔÚн¨Ò»¸öеÄÏû·ÑÕßÏîÄ¿½á¹¹ÈçͼËùʾ£º

£¨1£©test-maven-server-consoleµÄpom.xmlÒýÈëDubboºÍZookeeperµÄjar°ü¡¢test-maven-apiµÄjar°ü£¬ÒòΪÒýÈëtest-maven-apiµÄjar°ü£¬ÎÒÃÇÔÚÏîÄ¿Öе÷ÓÃÏñÔÚ±¾µØµ÷ÓÃÒ»Ñù¡£´úÂëÈçÏ£º

 <dependency>  
<groupId>cn.test</groupId>
<artifactId>test-maven-api</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>

<dependency>
<groupId>com.alibaba</groupId>
<artifactId>dubbo</artifactId>
<version>2.5.3</version>
</dependency>

<dependency>
<groupId>org.apache.zookeeper</groupId>
<artifactId>zookeeper</artifactId>
<version>3.4.6</version>
</dependency>

<dependency>
<groupId>com.github.sgroschupf</groupId>
<artifactId>zkclient</artifactId>
<version>0.1</version>
</dependency>

£¨2£©test-maven-server-consoleÏîÄ¿µÄ¾ßÌåʵÏÖ£¬´úÂëÈçÏ£º

@Controller  
public class IndexController {

@Autowired
private TestRegistryService testRegistryService;

@RequestMapping("/hello")
public String index(Model model){
String name=testRegistryService.hello("zz");
System.out.println("xx=="+name);
return "";
}

}

(3)ÎÒÃÇÒªÒýÓõĵØÖ·£¬´úÂëÈçÏ£º

<?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:jee="http://www.springframework.org/schema/jee"
xmlns:tx="http://www.springframework.org/schema/tx"
<span style="background-color: rgb(255, 255, 255);"> <span style="color:#990000;">xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"</span></span>
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.1.xsd
http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.1.xsd
<span style="color:#990000;">http://code.alibabatech.com/schema/dubbo http://code.alibabatech.com/schema/dubbo/dubbo.xsd</span>
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd"
default-lazy-init="false" >

<dubbo:application name="dubbo_consumer"></dubbo:application>
<!-- ʹÓÃzookeeper×¢²áÖÐÐı©Â¶·þÎñµØÖ· -->
<dubbo:registry address="zookeeper://192.168.74.129:2181" check="false"></dubbo:registry>
<!-- ÒªÒýÓõķþÎñ -->
<dubbo:reference interface="cn.test.dubbo.registry.service.TestRegistryService" id="testRegistryService"> </dubbo:reference>
</beans>

˵Ã÷£º dubbo:reference µÄһЩÊôÐÔµÄ˵Ã÷£º

1£©interfaceµ÷ÓõķþÎñ½Ó¿Ú

2£©check Æô¶¯Ê±¼ì²éÌṩÕßÊÇ·ñ´æÔÚ£¬true±¨´í£¬falseºöÂÔ

3£©registry ´ÓÖ¸¶¨×¢²áÖÐÐÄ×¢²á»ñÈ¡·þÎñÁÐ±í£¬ÔÚ¶à¸ö×¢²áÖÐÐÄʱʹÓã¬ÖµÎª<dubbo:registry>µÄidÊôÐÔ£¬¶à¸ö×¢²áÖÐÐÄIDÓöººÅ·Ö¸ô

4£©loadbalance ¸ºÔؾùºâ²ßÂÔ£¬¿Éѡֵ£ºrandom,roundrobin,leastactive£¬·Ö±ð±íʾ£ºËæ»ú£¬ÂÖÑ­£¬×îÉÙ»îÔ¾µ÷Óà (4)ÏîÄ¿Æô¶¯£¬Dubbo¹ÜÀíÒ³Ãæ£¬ÄÜ¿´µ½Ïû·ÑÕߣ¬ÈçͼËùʾ£º

(5)È»ºó·ÃÎÊÏû·ÑÕßÏîÄ¿£¬Controller²ãÄÜÏñµ÷Óñ¾µØÒ»Ñùµ÷Ó÷þÎñµÄ¾ßÌåʵÏÖ£¬ÈçͼËùʾ£º

DubboÌṩÁ˶àÖÖÈÝ´í·½°¸,°üÀ¨¸ºÔؾùºâÕâЩ£¬ÈçͼËùʾ£º

   
3878 ´Îä¯ÀÀ       27
Ïà¹ØÎÄÕÂ

Óû§¹ÊÊÂÓëÓÃÀý
½»»¥Éè¼ÆÊ¦Ö®¾«Òæ»­²¼Æª
Êý¾Ý·ÖÎöÖ®Óû§»­Ïñ·½·¨Óëʵ¼ù
ÈçºÎ¿ìËÙ½¨Á¢Óû§Ä£ÐÍ£¿
 
Ïà¹ØÎĵµ

Óû§½çÃæÉè¼Æ
¸øÆóÒµ×ö´óÊý¾Ý¾«×¼Óû§»­Ïñ
Óû§ÌåÑéºÍ½»»¥Éè¼Æ
´óÊý¾ÝϵÄÓû§»­Ïñ
Ïà¹Ø¿Î³Ì

Óû§ÌåÑé&½çÃæÉè¼Æ
Óû§ÌåÑé¡¢Ò×ÓÃÐÔ²âÊÔÓëÆÀ¹À
Óû§Ñо¿ÓëÓû§½¨Ä£
Óû§ÌåÑéµÄÈí¼þUIÉè¼Æ×î¼Ñʵ¼ù
×îл¼Æ»®
DeepSeekÔÚÈí¼þ²âÊÔÓ¦ÓÃʵ¼ù 4-12[ÔÚÏß]
DeepSeek´óÄ£ÐÍÓ¦Óÿª·¢Êµ¼ù 4-19[ÔÚÏß]
UAF¼Ü¹¹ÌåϵÓëʵ¼ù 4-11[±±¾©]
AIÖÇÄÜ»¯Èí¼þ²âÊÔ·½·¨Óëʵ¼ù 5-23[ÉϺ£]
»ùÓÚ UML ºÍEA½øÐзÖÎöÉè¼Æ 4-26[±±¾©]
ÒµÎñ¼Ü¹¹Éè¼ÆÓ뽨ģ 4-18[±±¾©]

´ÓÊÖ»úµÇÂ¼Ò³ÃæÉè¼ÆÏëµ½µÄ
ÈçºÎ°ÑÎÞÒâʶÒýÈë½»»¥Éè¼ÆÖÐ
½»»¥Éè¼ÆµÄÕæÏà
µ±ÊÓ¾õÉè¼ÆÊ¦ÓöÉϲúÆ·¾­Àí
ÊÖ»ú½»»¥Éè¼ÆÔ­Ôò
Óû§ÌåÑéÖ®ÍøÒ³°å¿éÉè¼Æ

ÒÔÓû§ÎªÖÐÐĵÄÉè¼Æ
¿ÉÓÃÐÔÆÀ¹À
Desktop¼°Web-basedÊÓ¾õÉè¼Æ
ÈÏÖªÔ­ÀíÓëÉè¼ÆÓ¦ÓÃ
ÊÖ»úÓû§½çÃæÉè¼Æ

±±¾© ÒÔÓû§ÎªÖÐÐĵĽçÃæÉè¼Æ
±±¾© Óû§ÌåÑé& ½çÃæÉè¼Æ
ÉϺ£ »ªÎª Óû§ÌåÑé& ½çÃæÉè¼Æ
ÉîÛÚ Óû§ÌåÑé& ½çÃæÉè¼Æ
°®Á¢ÐÅ ÒÔÓû§ÎªÖÐÐĵÄÉè¼Æ
±±¾© Óû§ÌåÑéÓë½çÃæÉè¼Æ
¸£ÖÝ ÒÔÓû§ÎªÖÐÐĵĽçÃæÉè¼Æ