springboot/springcloud

    面向架構(思維方式) java 面向對象 ESB總線 config config配置中心 api網關 zuul怪獸網關
    cloud的核心技術都是netflix出品 springcloud作爲大平臺出處
    eureka(收費的趨勢)
    hystrix刺蝟斷路器
    ribbon 負載均衡 類似nginx
    sidecar 支撐異構語言 nodejs大前端
    nginx c語言+lua
    rabbitmq erlang 最早的併發語言
    docker go 最新的併發語言
    java不是天生支持多核的語言 91年 go四核
    feign REST方式 接口體現
    java生態鏈

    plugins能自動起web服務的jar

    舊方式 打war包
    springboot 自動啓動服務(不可能把編譯器帶到服務器裏去) plugin插件 在dos下直接運行jar

    敏捷開發。
    和ssm整合。
    繼承springboot的父工程
    mybatis註解,訪問數據庫,添加依賴,pom.xml
    Spring,service層,和啓動類同級掃描。無需配置
    SpringMVC
    yml文件 首行縮進不能用Tab 冒號後面用空格

    MapperScan 註明映射路徑

    pom裏常用的工具有默認的標準版本號,部分不常用需要手動指定。

    SpringCloud:
    Eureka和ZooKeeper分佈式設計定理:CAP
    Ribboon 負載均衡器 nginx;前端
    Feign 封裝REST 接口

    爲什麼需要SpringCloud?
    dubbo阿里出品的微服務框架;三室兩廳:基於RPC+ZK+dubbox
    SpingCloud Spring出品;別墅:Eureka、Ribbon、Feign支持REST、Zuul API網關,Hystrix斷路器,Sidecar異構語言

    選擇了springCloud;開源。
    dubbo基於RPC,優點底層是二進制,安全性,性能,可壓縮。官宣:SpringCloud的子集專注於RPC解決方案。

    微服務
    業務垂直拆分的更細,數據庫也拆分,故障隔離。
    微服務不同服務器,服務器之前的調用,要走網絡傳輸,安全性和性能都打折扣。也有缺陷。
    服務之間互相調用頻繁還不如不拆,結合。需要在整體間找平衡感。

    Eureka
    Consistency(一致性)
    數據庫是強一致性的產品,反三範式(3NF)主鍵、不允許重複列、列不能是加工而成,冗餘設計。
    強一致性,一處修改了全部都同步改了。

    Zk(可用性)
    一半節點宕機或者正在有節點在選舉,那麼zk集羣都不可用。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章