zoukankan      html  css  js  c++  java
  • dubbo 笔记 cn2020版

    1、传统:3F 水平三
      单项目:表UI/业BLL/数层DAL  
      高版本效低、高耦合、3F交叉、维护性差、拆解公共/
      子项目

    2、D微服务 垂直|||   
        功能ESB服务:商品、订单、购物车、支付........  
     
     
       商品:表UI<...消费.......api..Rest......提供.........>业BLL/数层DAL  日志     javaMysql

    ___________________________________________________________________________
       订单:表UI<...消费.......api..Rest......提供.........>业BLL/数层DAL  日志     .netoracle


       dubbo springCloud:统一监控、定位

    2-1、 dubbo:微服务治理框架(Apache)  旧    高性、RPC、Sping无缝    
              消费-调用/提供-实现发布 URL=》【2】服务注册中心(Multicast注-测、ZK注-推荐、Redis注、Simple注)
                                               【3】服务监控(消费/提供=>服务调用实际状态)
                                             【4】远程通信/信息交换(Mina、Netty、Grizzly)


                                             【5】服务调用:  消费者2(subscribe)<->3(notify)注册中心
                                                         注册中心<-1(Register)提供者<-0容器(Start)
                                                   消费者4(invoke)->提供者(+-) 

                            消费者5(count)->监控者<-5(count)提供者
                                                                    消费者Consumer 容器者Container 注册者Register 监控者Monter 提供者Provider


                                                                      服务调用如下图
               


             访问量、响应时间、集群、依懒
           dubboX(REST、KRYO/FST序列、嵌入Tomcat-HTTP remoting、升Spring3.x 、ZK新版、dubboX|dubbo2.X兼容)   
           dubboX所有权dangdang.com

    2-2、 springCloud:新先

    2-3、获取dubbo、dubbox源码编译后安装到本地仓库

       i)、dubbo

             pom.xml

      <!-- https://mvnrepository.com/artifact/com.alibaba/dubbo -->
      <dependency>
        <groupId>com.alibaba</groupId>
        <artifactId>dubbo</artifactId>
        <version>2.6.7</version>
      </dependency>

           ii)、 dubbox

            
        https://github.com/hutai123/dubbox 注:dubbo2.8.4a-spring4.12

        下载源码 https://codeload.github.com/hutai123/dubbox/zip/master
        注:dubbo2.8.4a-spring4.12

        编译后安装到本地仓库 mvn clean install -Dmaven.test.skip=true

                 ###1执行mvn 先安装Maven安装配置【WIN10】#####################如下图

               
        ###2 idea mvn ##############################################如下图


       

        #########编译后: 管理中心dubbo-admin-2.8.4a.war##############
        ######### 监控中心部署包 dubbo-monitor-simple-2.8.4a-assembly.tar.gz
        C:UsersAdministrator.m2 epositorycomalibabadubbo  如下图

     
        ##################################################################

     3、D本地服务化
          传统: 分层 包


         提供者(实现ApiURL、Mapper.java Mapper.xml)===========》【Pro-Common(comTools、com配置、接口、DOVO)】
                   请求响应
         消费者(调用ApiURL   api规范)=》【Pro-Common(comTools、com配置、接口、DOVO)】
                调用ApiUR==》本地代理(服务结果)

     

      源码参考 dubbo-test     

     

    <!--局域网广播注册中心--> 地址不通可以修改地址或把VM机网卡禁用掉试一下

    <dubbo:registry address="multicast://239.5.6.3:12346"/>

    junit版本要一致如下图

       同机直连模式

           ##################同机直连模式 实际生产基本不用#
      <dubbo:registry address="N/A" check="flase"/>
      ############################################
      ####C:Usersdubbo-resolve.properties###########
      ${user.home}/dubbo-resolve.properties

       全注解(提供者/消费者)
        1)、打注解
        2)、扫包

            提供者

        消费者

     4、D分布服务调用

         p2p-dubbo-facade
                      cn.itsource.eloan.core.
                                             domain
                                     exception
                                    query.
                                    service.IUserService.java
                                    utils

          #################步骤#################
             ###拷代码配置代码
               ###serviceImpl、Mapper
              ###配置文件 jdbc.properties  log4j.properties  spring-core.xml
              ####导Jar
             ####服务发布spring-dubbo-provider.xml
             ####加注 扫注
             ####spring-core.xml <import resource="classpath:spring-dubbo-provider.xml"/>
             ####
            p2p-dubbo-service
                     cn.itsource.eloan.core.
                                           mapper.LoginInfoMapper.java
                                           LoginInfoMapper.xml
                                 service.impl.UserServiceImpl.java       @service
                  src.main.resources.
                                   jdbc.properties
                             log4j.properties
                             spring-core.xml                   <import resource="classpath:spring-dubbo-provider.xml"/>
                                   spring-dubbo-provider.xml
                  src.test.java.
                                 Startup                ApplicationContext

                

        

        #################步骤#################
            ###拷代码配置代码
            ###配置文件 spring-mvc.xml
            页面:webapp下面的所有
            ####导Jar
            ####服务发布spring-dubbo-provider.xml
            ####加注 扫注
            ####spring-mvc.xml <import resource="classpath:spring-dubbo-consumer.xml"/>
            ####测试tomcat部署web项目组
            ########
            p2p-dubbo-service

            cn.itsource.eloan.uiweb.
                                   controller.
                                                LoginController.java    @Reference
                                          MainController.java
                                          RegisterController.java   @Reference
                                    interceptor
                                  .core.utils.
                                           UserContext.java

               src.main.resources.
                               spring-mvc.xml              <import resource="classpath:spring-dubbo-consumer.xml"/>
                         spring-dubbo-consumer.xml   <dubbo:annotation package="cn.itsource.eloan.uiweb.controller"/>
               src.main.webapp.
                                 css
                           images
                           js
                           WEB-INF
                            index.jsp
                           login.jsp
                           register.jsp
                          borrow.jsp

     5、D管理平台


     

    6、D监控中心

     7、其他

      zk win 启动
      找不到或无法加载主类 org.apache.zookeeper.server.quorum.QuorumPeerMain

      解决:apache-zookeeper-3.5.5-bin 下载带bin名称
           https://github.com/apache/zookeeper window

  • 相关阅读:
    模拟队列
    代理模式及java简易实现
    归并排序模板(Java)
    快排Java模板
    durid配置jdbc报错 com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server
    File类
    数据库范式、多表查询,事务
    valuestack(值栈) 和 actioncontext(上下文)
    Action
    Cookie 和Session
  • 原文地址:https://www.cnblogs.com/smallfa/p/12306061.html
Copyright © 2011-2022 走看看