【微服務】之一:從零開始,輕松搞定SpringCloud微服務系列--開山篇(spring boot 小demo)

Spring頂級框架有眾多越平,那么接下的篇幅频蛔,我將重點講解SpringCloud微框架的實現

Spring 頂級項目灵迫,包含眾多,我們重點學習一下晦溪,SpringCloud項目以及SpringBoot項目

一瀑粥、SpringCloud項目簡介

Spring Cloud:

微服務工具包,為開發(fā)者提供了在分布式系統的配置管理三圆、服務發(fā)現狞换、斷路器、智能路由舟肉、微代理哀澈、控制總線等開發(fā)工具包。

Spring Boot:

旨在簡化創(chuàng)建產品級的 Spring 應用和服務度气,簡化了配置文件割按,使用嵌入式web服務器,含有諸多開箱即用微服務功能

可以和spring cloud聯合部署磷籍。

image

二适荣、SpringCloud子項目介紹

Spring Cloud Config:配置管理開發(fā)工具包,可以讓你把配置放到遠程服務器院领,目前支持本地存儲弛矛、Git以及Subversion。
  Spring Cloud Bus:事件比然、消息總線丈氓,用于在集群(例如,配置變化事件)中傳播狀態(tài)變化强法,可與Spring Cloud Config聯合實現熱部署万俗。
  Spring Cloud Netflix:針對多種Netflix組件提供的開發(fā)工具包,其中包括Eureka饮怯、Hystrix闰歪、Zuul、Archaius等蓖墅。
  Netflix Eureka:云端負載均衡库倘,一個基于 REST 的服務,用于定位服務论矾,以實現云端的負載均衡和中間層服務器的故障轉移教翩。
  Netflix Hystrix:容錯管理工具,旨在通過控制服務和第三方庫的節(jié)點,從而對延遲和故障提供更強大的容錯能力贪壳。
  Netflix Zuul:邊緣服務工具饱亿,是提供動態(tài)路由,監(jiān)控,彈性路捧,安全等的邊緣服務关霸。
  Netflix Archaius:配置管理API,包含一系列配置管理API杰扫,提供動態(tài)類型化屬性队寇、線程安全配置操作、輪詢框架章姓、回調機制等功能佳遣。
  Spring Cloud for Cloud Foundry:通過Oauth2協議綁定服務到CloudFoundry,CloudFoundry是VMware推出的開源PaaS云平臺凡伊。
  Spring Cloud Sleuth:日志收集工具包零渐,封裝了Dapper,Zipkin和HTrace操作。
  Spring Cloud Data Flow:大數據操作工具系忙,通過命令行方式操作數據流诵盼。
  Spring Cloud Security:安全工具包,為你的應用程序添加安全控制银还,主要是指OAuth2风宁。
  Spring Cloud Consul:封裝了Consul操作,consul是一個服務發(fā)現與配置工具蛹疯,與Docker容器可以無縫集成戒财。
  Spring Cloud Zookeeper:操作Zookeeper的工具包,用于使用zookeeper方式的服務注冊和發(fā)現捺弦。
  Spring Cloud Stream:數據流操作開發(fā)包饮寞,封裝了與Redis,Rabbit、Kafka等發(fā)送接收消息列吼。
  Spring Cloud CLI:基于 Spring Boot CLI幽崩,可以讓你以命令行方式快速建立云組件。

三冈欢、微服務開發(fā)要素

1歉铝、Codebase:從一個代碼庫部署到多個環(huán)境。

2凑耻、Dependencies:使用顯式的聲明隔離依賴,即模塊單獨運行柠贤,并可以顯式管理依賴香浩。

3、Config:在系統外部存儲配置信息臼勉。

4邻吭、Backing Services:把支持性服務看做是資源,支持性服務包括數據庫宴霸、消息隊列囱晴、緩沖服務器等膏蚓。

5、Build, release, run:嚴格的劃分編譯畸写、構建驮瞧、運行階段,每個階段由工具進行管理枯芬。

6论笔、Processes:應用作為無狀態(tài)執(zhí)行。

7千所、Port binding:經由端口綁定導出服務狂魔,優(yōu)先選擇 HTTP API 作為通用的集成框架。

8淫痰、Concurrency:并發(fā)性使用水平擴展實現最楷,對于web就是水平擴展web應用實現。

9待错、Disposability:服務可處置性管嬉,任何服務可以隨意終止或啟動。

10朗鸠、Dev/prod parity:開發(fā)和生產環(huán)境保持高度一致蚯撩,一鍵式部署。

11烛占、Logs:將日志看做是事件流來管理胎挎,所有參與的服務均使用該方式處理日志。

12忆家、Admin processes:管理任務作為一次性的過程運行(使用腳本管理服務啟動和停止)犹菇。

——————————————————————————————————————————

接下來,我們開始創(chuàng)建應用了····

那么...

四芽卿、使用spring boot創(chuàng)建第一個應用

4.1 前言

spring boot 的核心技術當然還是spring,是基于spring 4.x揭芍。

4.2 環(huán)境說明

IDE:Myeclipse 10

JDK:1.8

管理:mvn 3

服務器:tomcat

(關于環(huán)境搭建我們這里不多說了,需要的自行找度娘)

 4.3 創(chuàng)建一個maven項目

先在pom.xml中加入依賴的包卸例。

 <?xml version="1.0" encoding="UTF-8"?>
 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 
     <modelVersion>4.0.0</modelVersion>
     <groupId>Cloud</groupId>
     <artifactId>hyh</artifactId>
     <version>0.0.1-SNAPSHOT</version>
 
     <parent>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-parent</artifactId>
         <version>1.3.0.RELEASE</version>
     </parent>
 
     <dependencies>
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-web</artifactId>
         </dependency>
         
     </dependencies>
 
     <build>
         <plugins>
             <plugin>
                 <groupId>org.springframework.boot</groupId>
                 <artifactId>spring-boot-maven-plugin</artifactId>
                 <dependencies>
                     <dependency>
                         <groupId>org.springframework</groupId>
                         <artifactId>springloaded</artifactId>
                         <version>1.2.5.RELEASE</version>
                     </dependency>
                 </dependencies>
             </plugin>
         </plugins>
     </build>
 </project>

如圖:

image

我們創(chuàng)建了一個類:SpringBootTest.java:

package com.hyh.bk;
 
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.ResponseBody;
 @Controller
 @SpringBootApplication
 public class SpringBootTest {
     
     @ResponseBody
     @RequestMapping(value="/")
     String location(){
         return "北京";
     }
     /**
      * 主函數
      * 
      */
     public static void main(String[] args) {
         System.out.println("-------------");
         SpringApplication.run(SpringBootTest.class, args);
     }
 }

解釋:

@SpringBootApplication=@Configuration + @EnableAutoConfiguration + @ComponentScan

@Configuration,@ComponentSca這倆注解語法是spring框架中的称杨。起步于spring 3.x

@EnableAutoConfiguration是spring boot語法,表示自動配置筷转。

原創(chuàng) 姑原,歡迎轉載,請注明出處!

 原文地址:http://www.cnblogs.com/hyhnet/p/5626421.html

** 官方博客:http://www.hanyahong.com **

    交流wx請加: wixf150,請輸入 微服務驗證

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末呜舒,一起剝皮案震驚了整個濱河市锭汛,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖唤殴,帶你破解...
    沈念sama閱讀 218,607評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件般婆,死亡現場離奇詭異,居然都是意外死亡朵逝,警方通過查閱死者的電腦和手機蔚袍,發(fā)現死者居然都...
    沈念sama閱讀 93,239評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來廉侧,“玉大人页响,你說我怎么就攤上這事《翁埽” “怎么了闰蚕?”我有些...
    開封第一講書人閱讀 164,960評論 0 355
  • 文/不壞的土叔 我叫張陵,是天一觀的道長连舍。 經常有香客問我没陡,道長,這世上最難降的妖魔是什么索赏? 我笑而不...
    開封第一講書人閱讀 58,750評論 1 294
  • 正文 為了忘掉前任盼玄,我火速辦了婚禮,結果婚禮上潜腻,老公的妹妹穿的比我還像新娘埃儿。我一直安慰自己,他們只是感情好融涣,可當我...
    茶點故事閱讀 67,764評論 6 392
  • 文/花漫 我一把揭開白布童番。 她就那樣靜靜地躺著,像睡著了一般威鹿。 火紅的嫁衣襯著肌膚如雪剃斧。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,604評論 1 305
  • 那天忽你,我揣著相機與錄音幼东,去河邊找鬼。 笑死科雳,一個胖子當著我的面吹牛根蟹,可吹牛的內容都是我干的。 我是一名探鬼主播炸渡,決...
    沈念sama閱讀 40,347評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼娜亿,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了蚌堵?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 39,253評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎吼畏,沒想到半個月后督赤,有當地人在樹林里發(fā)現了一具尸體,經...
    沈念sama閱讀 45,702評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡涯捻,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,893評論 3 336
  • 正文 我和宋清朗相戀三年轧房,在試婚紗的時候發(fā)現自己被綠了而账。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,015評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡没卸,死狀恐怖,靈堂內的尸體忽然破棺而出秒旋,到底是詐尸還是另有隱情约计,我是刑警寧澤,帶...
    沈念sama閱讀 35,734評論 5 346
  • 正文 年R本政府宣布迁筛,位于F島的核電站煤蚌,受9級特大地震影響,放射性物質發(fā)生泄漏细卧。R本人自食惡果不足惜尉桩,卻給世界環(huán)境...
    茶點故事閱讀 41,352評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望贪庙。 院中可真熱鬧蜘犁,春花似錦、人聲如沸止邮。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,934評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽农尖。三九已至析恋,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間盛卡,已是汗流浹背助隧。 一陣腳步聲響...
    開封第一講書人閱讀 33,052評論 1 270
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留滑沧,地道東北人并村。 一個月前我還...
    沈念sama閱讀 48,216評論 3 371
  • 正文 我出身青樓,卻偏偏與公主長得像滓技,于是被迫代替她去往敵國和親哩牍。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,969評論 2 355

推薦閱讀更多精彩內容