国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當前位置: 首頁 > news >正文

做搞基視頻網(wǎng)站/網(wǎng)絡(luò)營銷的案例有哪些

做搞基視頻網(wǎng)站,網(wǎng)絡(luò)營銷的案例有哪些,圖書館門戶網(wǎng)站建設(shè)總結(jié),電腦微信公眾號登錄入口1.微服務(wù) 簡單來說,微服務(wù)架構(gòu)風格[1]是一種將一個單一應(yīng)用程序開發(fā)為一組小型服務(wù)的方法,每個服務(wù)運行在 自己的進程中,服務(wù)間通信采用輕量級通信機制(通常用HTTP資源API)。這些服務(wù)圍繞業(yè)務(wù)能力構(gòu)建并 且可通過全自動部署機制獨立部署。這…

1.微服務(wù)

簡單來說,微服務(wù)架構(gòu)風格[1]是一種將一個單一應(yīng)用程序開發(fā)為一組小型服務(wù)的方法,每個服務(wù)運行在 自己的進程中,服務(wù)間通信采用輕量級通信機制(通常用HTTP資源API)。這些服務(wù)圍繞業(yè)務(wù)能力構(gòu)建并 且可通過全自動部署機制獨立部署。這些服務(wù)共用一個最小型的集中式的管理,服務(wù)可用不同的語言開 發(fā),使用不同的數(shù)據(jù)存儲技術(shù)

1.1單體架構(gòu)

優(yōu)點:

1:部署簡單:由于是完整的結(jié)構(gòu)體,可以直接部署在一個服務(wù)器上即可。

2:技術(shù)單一:項目不需要復(fù)雜的技術(shù)棧,往往一套熟悉的技術(shù)棧就可以完成開發(fā)。

缺點:

1:系統(tǒng)啟動慢,一個進程包含了所有的業(yè)務(wù)邏輯,涉及到的啟動模塊過多,導(dǎo)致系統(tǒng)的啟動、重 啟時間周期過長;

2:系統(tǒng)錯誤隔離性差、可用性差,任何一個模塊的錯誤均可能造成整個系統(tǒng)的宕機;

3:可伸縮性差:系統(tǒng)的擴容只能只對這個應(yīng)用進行擴容,無法結(jié)合業(yè)務(wù)模塊的特點進行伸縮。

4: 線上問題修復(fù)周期長:任何一個線上問題修復(fù)需要對整個應(yīng)用系統(tǒng)進行全面升級。

5: 跨語言程度差-

6: 不利于安全管理,所有開發(fā)人員都擁有全量代碼。 項目規(guī)模比較小。

WMS OA辦公系統(tǒng)

1.2微服務(wù)的特點

1:微服務(wù)是一種 項目架構(gòu)思想(風格)

2:微服務(wù)架構(gòu)是一系列小服務(wù)的組合(組件化與多服務(wù))

3:任何一個微服務(wù),都是一個獨立的進程(獨立開發(fā)、獨立維護、獨立部署)

4:輕量級通信http協(xié)議(跨語言,跨平臺)

5:服務(wù)粒度(圍繞業(yè)務(wù)功能拆分---模塊拆分【系統(tǒng)管理服務(wù)】【日志服務(wù)】【焦慮測試】【抑郁測試系 統(tǒng)】)

6:去中心化管理(去中心化"地治理技術(shù)、去中心化地管理數(shù)據(jù))

1.3微服務(wù)框架的優(yōu)勢

1.易于開發(fā)和維護 一個微服務(wù)只關(guān)注一個特定的業(yè)務(wù)功能,所以它的業(yè)務(wù)清晰、代碼量較少。開發(fā)和維護單個微服務(wù)相對 比較簡單,整個應(yīng)用是由若干個微服務(wù)構(gòu)建而成,所以整個應(yīng)用也會維持在可控狀態(tài);

⒉.單個微服務(wù)啟動較快 單個微服務(wù)代碼量較少,所以啟動會比較快;

3.局部修改容易部署 單體應(yīng)用只要有修改,就要重新部署整個應(yīng)用,微服務(wù)解決了這樣的問題。一般來說,對某個微服務(wù)進 行修改,只需要重新部署這個服務(wù)即可

4.技術(shù)棧不受限 在微服務(wù)中,我們可以結(jié)合項目業(yè)務(wù)及團隊的特點,合理地選擇技術(shù)棧

5.按需伸縮 焦慮系統(tǒng)訪問量大,只需要對焦慮系統(tǒng)進行擴展

1.4SpringCloud與微服務(wù)關(guān)系

  • Springcloud為微服務(wù)思想提供了完美的解決方案

  • Springcloud是一些列框架的集合體(服務(wù)的注冊與發(fā)現(xiàn)【注冊中心】、服務(wù)間遠程調(diào)用、服務(wù)降級、服務(wù)熔斷、服務(wù)限流、分布式事務(wù),網(wǎng)關(guān)等等)

  • 一般我們說springc1oud 其實指的是Springc1oud-netflix,Springcloud并不是造輪子,只是把Netflix公司的組件做二次開發(fā)。

1.6SpringBoot和SpringCloud關(guān)系

  • SpringBoot專注于快速方便的開發(fā)單個個體微服務(wù)。

  • SpringCloud是關(guān)注全局的微服務(wù)協(xié)調(diào)、整理、治理的框架,它將SpringBoot開發(fā)的單體整合并管理起來。

  • SpringBoot可以離開SpringCloud獨立使用開發(fā)項目,但是SpringCloud離不開SpringBoot,屬于依賴關(guān)系。

2.搭建

springboot要3.0.0

1.父模塊的pom

<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>3.0.0</version><relativePath/> <!-- lookup parent from repository --></parent><groupId>com.ghx</groupId><artifactId>demowei02-parent</artifactId><version>0.0.1-SNAPSHOT</version><name>demowei02-parent</name><description>demowei02-parent</description><modules><module>springcloud-common</module><module>springcloud-product</module><module>springcloud-order</module></modules><!--    父工程管理的子模塊--><!--    打包方式--><packaging>pom</packaging><!-- 定義版本號 --><properties><java.version>1.8</java.version><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding><!-- springcloud的版本 --><spring-cloud.version>2022.0.0</spring-cloud.version><!-- springcloud阿里巴巴的版本 --><spring-cloud-alibaba.version>2022.0.0.0-RC1</spring-cloud-alibaba.version></properties><!-- dependencyManagement:他只負責jar的管理,不負責jar的下載。子模塊在引用時無需再指定版本號 --><dependencyManagement><dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>${spring-cloud.version}</version><type>pom</type><scope>import</scope></dependency><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-alibaba-dependencies</artifactId><version>${spring-cloud-alibaba.version}</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build></project>

2.1

package com.ghx.order.service.impl;import com.ghx.common.entity.Order;
import com.ghx.common.entity.Product;
import com.ghx.order.dao.OrderDao;
import com.ghx.order.feig.ProducFeign;
import com.ghx.order.service.OrderService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cloud.client.ServiceInstance;
import org.springframework.cloud.client.discovery.DiscoveryClient;
import org.springframework.stereotype.Service;
import org.springframework.web.client.RestTemplate;import java.net.URI;
import java.util.List;
import java.util.Random;/*** @author :guo* @date :Created in 2025/2/28 15:07* @description:* @version:*/
@Service
public class OrderServiceImpl implements OrderService {@Autowiredprivate RestTemplate restTemplate;@Autowiredprivate OrderDao orderDao;@Overridepublic String insert(int num,int pid) {Order order = new Order();order.setNumber(num);order.setUid(1);order.setUsername("guo");//獲取商品的信息===>通過HTTP協(xié)議調(diào)用其他微服務(wù)。===>自己封裝Http工具===》spring提供RestTemplate 沒有交于spring管理//url: 路徑--服務(wù)提供者的路徑//Class: 返回值類型反射類Product product=restTemplate.getForObject("http://localhost:8001/product/getById?pid="+pid, Product.class);order.setPname(product.getPname());order.setPprice(product.getPprice());order.setPid(product.getPid());int insert = orderDao.insert(order);return insert > 0 ? "下單成功" : "下單失敗";}
}

3.服務(wù)治理

服務(wù)治理是微服務(wù)架構(gòu)中最核心最基本的模塊。用于實現(xiàn)各個微服務(wù)的自動化注冊與發(fā)現(xiàn)。

服務(wù)注冊:在服務(wù)治理框架中,都會構(gòu)建一個*注冊中心*,每個服務(wù)單元向注冊中心登記自己提供服務(wù)的詳細信息。并在注冊中心形成一張服務(wù)的*清單*,服務(wù)注冊中心需要以*心跳30s 90s*的方式去監(jiān)測清單中 的服務(wù)是否可用,如果不可用,需要在服務(wù)清單中剔除不可用的服務(wù)。

服務(wù)發(fā)現(xiàn):服務(wù)調(diào)用方向服務(wù)注冊中心咨詢服務(wù),并獲取*所有服務(wù)*的實例清單,實現(xiàn)對具體服務(wù)實

3.1常見的注冊中心軟件

Zookeeper

zookeeper是一個分布式服務(wù)框架,是Apache Hadoop 的一個子項目,它主要是用來解決分布式

應(yīng)用中經(jīng)常遇到的一些數(shù)據(jù)管理問題,如:統(tǒng)一命名服務(wù)、狀態(tài)同步服務(wù)、集群管理、分布式應(yīng)用

配置項的管理等。

Eureka

Eureka是Springcloud Netflix中的重要組件,主要作用就是做服務(wù)注冊和發(fā)現(xiàn)。但是現(xiàn)在已經(jīng)閉

源 ,停更不停用。

Consul

Consul是基于GO語言開發(fā)的開源工具,主要面向分布式,服務(wù)化的系統(tǒng)提供服務(wù)注冊、服務(wù)發(fā)現(xiàn)

和配置管理的功能。Consul的功能都很實用,其中包括:服務(wù)注冊/發(fā)現(xiàn)、健康檢查、Key/Value

存儲、多數(shù)據(jù)中心和分布式一致性保證等特性。Consul本身只是一個二進制的可執(zhí)行文件,所以

安裝和部署都非常簡單,只需要從官網(wǎng)下載后,在執(zhí)行對應(yīng)的啟動腳本即可。

Nacos (服務(wù)治理 配置中心)

Nacos是一個更易于構(gòu)建云原生應(yīng)用的動態(tài)服務(wù)發(fā)現(xiàn)、配置管理和服務(wù)管理平臺。它是 Spring

Cloud Alibaba 組件之一,負責服務(wù)注冊發(fā)現(xiàn)和服務(wù)配置. [服務(wù)治理的作用和微服務(wù)配置管理]

3.2nacos服務(wù)治理

1.引入依賴

<!--        nacos--><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId></dependency>

2.配置注冊中心的地址和名稱,例如:

#設(shè)置注冊中心的地址
spring.cloud.nacos.server-addr=localhost:8848
spring.application.name=springcloud-product

3.獲取

@Service
public class OrderServiceImpl implements OrderService {@Autowiredprivate RestTemplate restTemplate;@Autowiredprivate OrderDao orderDao;@Autowired//可以獲取注冊中心的服務(wù)private DiscoveryClient discoveryClient;@Overridepublic String insert(int num,int pid) {Order order = new Order();order.setNumber(num);order.setUid(1);order.setUsername("guo");//獲取商品的信息===>通過HTTP協(xié)議調(diào)用其他微服務(wù)。===>自己封裝Http工具===》spring提供RestTemplate 沒有交于spring管理//url: 路徑--服務(wù)提供者的路徑//Class: 返回值類型反射類List<ServiceInstance> instances = discoveryClient.getInstances("springcloud-product");ServiceInstance serviceInstance = instances.get(0);String path = serviceInstance.getUri().toString();
//        Product product=restTemplate.getForObject("http://localhost:8001/product/getById?pid="+pid, Product.class);Product product=restTemplate.getForObject(path+"/product/getById?pid="+pid, Product.class);order.setPname(product.getPname());order.setPprice(product.getPprice());order.setPid(product.getPid());int insert = orderDao.insert(order);return insert > 0 ? "下單成功" : "下單失敗";}
}

4.負載均衡

4.1手動寫

package com.ghx.order.service.impl;import com.ghx.common.entity.Order;
import com.ghx.common.entity.Product;
import com.ghx.order.dao.OrderDao;
import com.ghx.order.feig.ProducFeign;
import com.ghx.order.service.OrderService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cloud.client.ServiceInstance;
import org.springframework.cloud.client.discovery.DiscoveryClient;
import org.springframework.stereotype.Service;
import org.springframework.web.client.RestTemplate;import java.net.URI;
import java.util.List;
import java.util.Random;/*** @author :guo* @date :Created in 2025/2/28 15:07* @description:* @version:*/
@Service
public class OrderServiceImpl implements OrderService {@Autowiredprivate RestTemplate restTemplate;@Autowiredprivate OrderDao orderDao;@Autowired//可以獲取注冊中心的服務(wù)private DiscoveryClient discoveryClient;@Overridepublic String insert(int num,int pid) {Order order = new Order();order.setNumber(num);order.setUid(1);order.setUsername("guo");//獲取商品的信息===>通過HTTP協(xié)議調(diào)用其他微服務(wù)。===>自己封裝Http工具===》spring提供RestTemplate 沒有交于spring管理//url: 路徑--服務(wù)提供者的路徑//Class: 返回值類型反射類List<ServiceInstance> instances = discoveryClient.getInstances("springcloud-product");int index = new Random().nextInt(instances.size());ServiceInstance serviceInstance = instances.get(index);String path = serviceInstance.getUri().toString();order.setPname(product.getPname());order.setPprice(product.getPprice());order.setPid(product.getPid());int insert = orderDao.insert(order);return insert > 0 ? "下單成功" : "下單失敗";}
}

4.2使用springcloud LoadBalancer

1.添加依賴

<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-loadbalancer</artifactId>
</dependency>

2.在RestTemplate類上使用@LoadBalanced

3.修改代碼

package com.ghx.order.service.impl;import com.ghx.common.entity.Order;
import com.ghx.common.entity.Product;
import com.ghx.order.dao.OrderDao;
import com.ghx.order.feig.ProducFeign;
import com.ghx.order.service.OrderService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cloud.client.ServiceInstance;
import org.springframework.cloud.client.discovery.DiscoveryClient;
import org.springframework.stereotype.Service;
import org.springframework.web.client.RestTemplate;import java.net.URI;
import java.util.List;
import java.util.Random;/*** @author :guo* @date :Created in 2025/2/28 15:07* @description:* @version:*/
@Service
public class OrderServiceImpl implements OrderService {@Autowiredprivate RestTemplate restTemplate;@Autowiredprivate OrderDao orderDao;@Autowired//可以獲取注冊中心的服務(wù)private DiscoveryClient discoveryClient;@Overridepublic String insert(int num,int pid) {Order order = new Order();order.setNumber(num);order.setUid(1);order.setUsername("guo");//獲取商品的信息===>通過HTTP協(xié)議調(diào)用其他微服務(wù)。===>自己封裝Http工具===》spring提供RestTemplate 沒有交于spring管理//url: 路徑--服務(wù)提供者的路徑//Class: 返回值類型反射類List<ServiceInstance> instances = discoveryClient.getInstances("springcloud-product");int index = new Random().nextInt(instances.size());ServiceInstance serviceInstance = instances.get(index);String path = serviceInstance.getUri().toString();Product product=restTemplate.getForObject("http://springcloud-product/product/getById?pid="+pid, Product.class);order.setPname(product.getPname());order.setPprice(product.getPprice());order.setPid(product.getPid());int insert = orderDao.insert(order);return insert > 0 ? "下單成功" : "下單失敗";}
}

4.3使用openfeign完成服務(wù)調(diào)用

原來使用restTemplate完成服務(wù)之間的調(diào)用: 它不符合我們的編程習(xí)慣。---在某層需要另一層的對象時,直接通過@Autowire注入,并通過對象調(diào)用其他的方法,傳入相關(guān)的參數(shù)。

4.3.1什么是OpenFeign

OpenFeign是Spring Cloud提供的一個聲明式的偽Http客戶端, 它使得調(diào)用遠程服務(wù)就像調(diào)用本地服務(wù)一樣簡單, 只需要創(chuàng)建一個接口并添加一個注解即可。

Nacos很好的兼容了OpenFeign, OpenFeign負載均衡默認集成了SpringCloudLoadBalance, 所以在Nacos下使用OpenFegin默認就實現(xiàn)了負載均衡的效果。

4.3.2使用

1.引入依賴

<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>

2.創(chuàng)建openfeign接口

package com.ghx.order.feig;import com.ghx.common.entity.Product;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;/*** @author :guo* @date :Created in 2025/3/3 11:34* @description:* @version:*/
@FeignClient(value = "springcloud-product")
public interface ProducFeign {@GetMapping("/product/getById")public Product getById(@RequestParam Integer pid);
}

3.開啟openfeign注解驅(qū)動

4.修改代碼

http://m.aloenet.com.cn/news/262.html

相關(guān)文章:

  • 網(wǎng)站怎么做下載連接/百度長尾關(guān)鍵詞挖掘
  • 網(wǎng)站彈窗客服代碼/刷推廣鏈接
  • 政府網(wǎng)站公眾號建設(shè)方案/谷歌瀏覽器 安卓下載2023版
  • wordpress tutorial/seo優(yōu)化排名服務(wù)
  • 網(wǎng)站被谷歌降權(quán)/廣州seo招聘網(wǎng)
  • 網(wǎng)站聊天怎么做/最新軍事報道
  • 成都微信端網(wǎng)站建/蘇州seo按天扣費
  • 網(wǎng)站沒有百度快照/全網(wǎng)絡(luò)品牌推廣
  • 制作企業(yè)網(wǎng)站需要注意的事項/地推是什么
  • 資料填寫網(wǎng)站類型怎么做/新聞發(fā)稿公司
  • 免費建網(wǎng)站撫順/win10優(yōu)化大師有用嗎
  • 萬盛網(wǎng)站建設(shè)公司/當下最流行的營銷方式
  • 下載好看影視大全極速版/seo是什么工作內(nèi)容
  • 重慶響應(yīng)式網(wǎng)站建設(shè)公司/哪個軟件可以自動排名
  • python源碼分享網(wǎng)站/深度搜索
  • 龍華網(wǎng)站建設(shè)方案表/免費海報模板網(wǎng)站
  • 關(guān)鍵詞seo優(yōu)化/優(yōu)化大師官方免費下載
  • 百度指數(shù) 網(wǎng)站/杭州優(yōu)化公司哪家好
  • 哈爾濱市建設(shè)網(wǎng)站/寧波網(wǎng)絡(luò)推廣產(chǎn)品服務(wù)
  • 湛江網(wǎng)站建設(shè)哪家好/網(wǎng)絡(luò)營銷公司全網(wǎng)推廣公司
  • 個人可以做淘寶客網(wǎng)站嗎/網(wǎng)絡(luò)營銷首先要進行
  • 免費制作單頁的網(wǎng)站/媒體推廣
  • 嘉興網(wǎng)站搭建/軟文發(fā)布平臺哪個好
  • 專做品牌的網(wǎng)站/seo專員招聘
  • 怎么在網(wǎng)站里做關(guān)鍵詞優(yōu)化/小程序開發(fā)多少錢
  • 上海公司網(wǎng)站開發(fā)/互聯(lián)網(wǎng)運營培訓(xùn)課程
  • 外貿(mào)網(wǎng)站建設(shè)內(nèi)容包括哪些/軟文推廣去哪個平臺好
  • 圖書館網(wǎng)站建設(shè)背景/優(yōu)化seo可以從以下幾個方面進行
  • 有效的網(wǎng)站建設(shè)公司/seo黑帽教程視頻
  • 工業(yè)和信息化部網(wǎng)站備案系統(tǒng)是什么意思/企業(yè)短視頻推廣