Spring Cloud敏捷開發框架
來自專欄 Java高級開發交流1 人贊了文章
Spring Cloud敏捷開發框架
SpringCloud敏捷開發框架
1、概述
- 用來快速開發Spring Cloud項目
- 前期會考慮:數據讀寫分離、資料庫各種基本操作、集成自己開發的消息服務、分散式業務調度服務、自動生成代碼、後台管理系統頁面框架
開發工具及相關技術:
- Maven3.3.9
- Jdk1.8
- IntelliJ IDEA
- Springboot2.0.4
- Springcloud Finchley.SR1
- Mybatis
- Freemarker
- ElasticJob
- Sesjs
2、項目介紹
- p-base:
- p-base-comm:框架基礎庫
- p-base-jdbc:資料庫操作組建,資料庫操作基類、主從分離、資料庫操作的各種工具方法等
- p-base-jdbc-starter:p-base-jdbc的starter pom,若需要對資料庫進行操作,需在maven中引入該模塊
- p-base-page:分頁組件
- p-base-web:web項目的全局配置、工具等
- p-base-web-starter: p-base-web的starter pom
- p-code:
- p-code-generate:代碼生成器
- y-cloud:
- p-cloud-discovery:服務註冊中心
- p-cloud-gateway:服務網關
- y-core: 表示一個業務模塊
- p-core-comm:業務模塊公共類
- p-core-service:業務模塊restful服務介面
- p-core-api:p-core-service對外的feign介面類
- p-core-api-starter:p-core-api的springstarter,其他模塊如果需要調用p-core-service中的服務,需在maven中引入該模塊
- p-core-test:測試模塊,通過feign來調用p-core-service
- p-core-admin: 後台管理系統
3、埠
- p-cloud-discovery:7001
- p-cloud-gateway:8001
- p-core-service:9001
- p-core-test:9002
- p-core-admin:9003
4、啟動順序
- p-cloud-discovery
- p-cloud-gateway
- p-core-service
- p-core-test
5、運行示例
資料庫配置
- 1、以mysql為例,在本地創建2個庫:ms_master、ms_slave
- 2、分別ms_master、ms_slave中執行腳本:資料庫初始化腳本
redis配置
p-core-admin:後台管理系統通過redis來解決session問題
redis配置信息見p-core-admin項目中的application.yml配置文件
spring: redis: host: 192.168.11.19 port: 6379 password: 123 database: 0 session: store-type: redis #使用redis存儲session信息 timeout: 3600 #session過期時間 redis: namespace: spring:session #redis中用於存儲session信息的命名空間 flush-mode: immediate #session信息刷新模式,immediate:立即刷新,on_save:http response提交之後刷新 cleanup-cron: 0 * * * * * #清理redis中過期session數據的job執行頻率,默認每分鐘執行一次
hosts文件配置
127.0.0.1 admin.ms.org static.ms.org
http://admin.ms.org:訪問p-core-admin
http://static.ms.org:訪問靜態資源,指向p-parent/static目錄
nginx配置
server { listen 80; server_name static.ms.org; root C:/Users/pc/IdeaProjects1/p-parent/static;}server { listen 80; server_name admin.ms.org; location / { proxy_pass http://127.0.0.1:9003/; }}
啟動應用
- p-cloud-discovery
- p-cloud-gateway
- p-core-service
- p-core-test
- p-core-admin
訪問測試例子
- 訪問p-core-test例子
- 訪問p-core-admin
6、web集群session配置
目前項目中使用redis來解決集群session問題,如下:
- 1、引入maven依賴
<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency> <dependency> <groupId>org.springframework.session</groupId> <artifactId>spring-session-data-redis</artifactId> </dependency></dependencies>
- 2、配置application.properties
spring: redis: host: 192.168.11.19 port: 6379 password: 123 database: 0 session: store-type: redis #使用redis存儲session信息 timeout: 3600 #session過期時間 redis: namespace: spring:session #redis中用於存儲session信息的命名空間 flush-mode: immediate #session信息刷新模式,immediate:立即刷新,on_save:http response提交之後刷新 cleanup-cron: 0 * * * * * #清理redis中過期session數據的job執行頻率,默認每分鐘執行一次
- 3、代碼中使用session
request.getSession().setAttribute("key",value);
注意:key必須是字元串格式,value必須實現java.io.Serializable介面,支持序列化
** 相關截圖
推薦閱讀:
※親歷者說:敏捷?我被洗腦了嗎?
※敏捷開發模式下,如何進行質量管理?
※第12屆敏捷行業年度報告
※敏捷開發過程中如何開發高質量的軟體
※吳老講義:敏捷開發咋回事?(一)
TAG:SpringCloud | 敏捷開發 | 科技 |