国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

『RabbitMQ』入門指南(安裝,配置,應(yīng)用)

這篇具有很好參考價(jià)值的文章主要介紹了『RabbitMQ』入門指南(安裝,配置,應(yīng)用)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

前言

RabbitMQ 是在 AMQP(Advanced Message Queuing Protocol) 協(xié)議標(biāo)準(zhǔn)基礎(chǔ)上完整的,可復(fù)用的企業(yè)消息系統(tǒng)。它遵循 Mozilla Public License 開(kāi)源協(xié)議,采用 Erlang 實(shí)現(xiàn)的工業(yè)級(jí)的消息隊(duì)列(MQ)服務(wù)器,建立在 Erlang OTP 平臺(tái)上(因?yàn)椴捎?Erlang 開(kāi)發(fā),所以 RabbitMQ 穩(wěn)定性和可靠性比較高

其他主流 MQ 產(chǎn)品

  • ActiveMQ:Apache 出品,最流行的,能力強(qiáng)勁的開(kāi)源消息總線,基于 JMS(Java Message Service)規(guī)范
  • RocketMQ:阿里低延遲、高并發(fā)、高可用、高可靠的分布式消息中間件,基于 JMS,目前由 Apache 基金會(huì)維護(hù)
  • Kafka:分布式,分區(qū)的,多副本的,多訂閱者的消息發(fā)布訂閱系統(tǒng)(分布式 MQ 系統(tǒng)),可以用于搜索日志,監(jiān)控日志,訪問(wèn)日志等

本文為 RabbitMQ 入門教程,主要將會(huì)講解 RabbitMQ 安裝配置(Windows),相關(guān)概念,及項(xiàng)目中具體應(yīng)用

『RabbitMQ』入門指南(安裝,配置,應(yīng)用),框架工具,RabbitMQ,消息隊(duì)列,入門,Windows,SpringBoot

安裝

Erlang

官網(wǎng)下載鏈接:Downloads - Erlang/OTP

RabbitMQ 服務(wù)器必須首先安裝 Erlang 運(yùn)行環(huán)境,同時(shí)安裝時(shí)需要注意 RabbityMQ 所依賴的 Erlang 版本,我們可以查看下方官方版本對(duì)應(yīng)信息

版本對(duì)應(yīng):RabbitMQ Erlang Version Requirements — RabbitMQ

本次使用版本 Erlang OTP 25.3(點(diǎn)擊跳轉(zhuǎn)下載鏈接)

『RabbitMQ』入門指南(安裝,配置,應(yīng)用),框架工具,RabbitMQ,消息隊(duì)列,入門,Windows,SpringBoot

雙擊執(zhí)行 exe 安裝程序,除了安裝路徑其他都按照默認(rèn)即可

然后配置環(huán)境變量

ERLANG_HOME = D:\Erlang\Erlang\Erlang OTP

并且添加 /bin 目錄到 Path 環(huán)境變量中,即添加 %ERLANG_HOME%\bin 到 Path 中

安裝配置之后,打開(kāi) CMD,輸入 erl 然后回車鍵,會(huì)彈出版本信息,表示 Erlang 安裝成功

RabbitMQ

官方下載頁(yè)面:RabbitMQ Changelog — RabbitMQ

下載鏈接: RabbitMQ 3.12.0

安裝 exe 文件,執(zhí)行安裝包,同樣除了安裝路徑外其他保持默認(rèn)

配置環(huán)境變量

RABBITMQ_SERVER = D:\RabbitMQ\RabbitMQ\rabbitmq_server-3.12.0

然后添加 %RABBITMQ_SERVER%\sbin 到 Path 環(huán)境變量中

查看所有插件

rabbitmq-plugins list

注:如果出現(xiàn)問(wèn)題請(qǐng)參考最后一章 徹底卸載

『RabbitMQ』入門指南(安裝,配置,應(yīng)用),框架工具,RabbitMQ,消息隊(duì)列,入門,Windows,SpringBoot

之后我們需要安裝 rabbitmq_management 插件,可以使用可視化的方式查看 RabbitMQ 服務(wù)器實(shí)例的狀態(tài),以及操控 RabbitMQ 服務(wù)器

# 安裝插件
rabbitmq-plugins enable rabbitmq_management

訪問(wèn)管理界面: http://localhost:15672/ (賬號(hào)密碼:guest / guest)

『RabbitMQ』入門指南(安裝,配置,應(yīng)用),框架工具,RabbitMQ,消息隊(duì)列,入門,Windows,SpringBoot

前期安裝配置完畢,下面可以配合官方入門文檔學(xué)習(xí)

官方文檔:RabbitMQ Tutorials — RabbitMQ

消息隊(duì)列

定義

消息指的是兩個(gè)應(yīng)用間傳遞的數(shù)據(jù)。數(shù)據(jù)的類型有很多種形式,可能只包含文本字符串,也可能包含嵌入對(duì)象。

“消息隊(duì)列(Message Queue)”是在消息的傳輸過(guò)程中保存消息的容器。在消息隊(duì)列中,通常有生產(chǎn)者和消費(fèi)者兩個(gè)角色。生產(chǎn)者只負(fù)責(zé)發(fā)送數(shù)據(jù)到消息隊(duì)列,誰(shuí)從消息隊(duì)列中取出數(shù)據(jù)處理,他不管。消費(fèi)者只負(fù)責(zé)從消息隊(duì)列中取出數(shù)據(jù)處理,他不管這是誰(shuí)發(fā)送的數(shù)據(jù)

『RabbitMQ』入門指南(安裝,配置,應(yīng)用),框架工具,RabbitMQ,消息隊(duì)列,入門,Windows,SpringBoot

作用

解耦。如圖所示。假設(shè)有系統(tǒng) B、C、D 都需要系統(tǒng) A 的數(shù)據(jù),于是系統(tǒng) A 調(diào)用三個(gè)方法發(fā)送數(shù)據(jù)到 B、C、D。這時(shí),系統(tǒng) D 不需要了,那就需要在系統(tǒng) A 把相關(guān)的代碼刪掉。假設(shè)這時(shí)有個(gè)新的系統(tǒng) E 需要數(shù)據(jù),這時(shí)系統(tǒng) A 又要增加調(diào)用系統(tǒng) E 的代碼。為了降低這種強(qiáng)耦合,就可以使用 MQ,系統(tǒng) A 只需要把數(shù)據(jù)發(fā)送到 MQ,其他系統(tǒng)如果需要數(shù)據(jù),則從 MQ 中獲取即可

『RabbitMQ』入門指南(安裝,配置,應(yīng)用),框架工具,RabbitMQ,消息隊(duì)列,入門,Windows,SpringBoot

異步。如圖所示。一個(gè)客戶端請(qǐng)求發(fā)送進(jìn)來(lái),系統(tǒng) A 會(huì)調(diào)用系統(tǒng) B、C、D 三個(gè)系統(tǒng),同步請(qǐng)求的話,響應(yīng)時(shí)間就是系統(tǒng) A、B、C、D 的總和,也就是 800ms。如果使用 MQ,系統(tǒng) A 發(fā)送數(shù)據(jù)到 MQ,然后就可以返回響應(yīng)給客戶端,不需要再等待系統(tǒng) B、C、D 的響應(yīng),可以大大地提高性能。對(duì)于一些非必要的業(yè)務(wù),比如發(fā)送短信,發(fā)送郵件等等,就可以采用 MQ

『RabbitMQ』入門指南(安裝,配置,應(yīng)用),框架工具,RabbitMQ,消息隊(duì)列,入門,Windows,SpringBoot

削峰。如圖所示。這其實(shí)是 MQ 一個(gè)很重要的應(yīng)用。假設(shè)系統(tǒng) A 在某一段時(shí)間請(qǐng)求數(shù)暴增,有 5000 個(gè)請(qǐng)求發(fā)送過(guò)來(lái),系統(tǒng) A 這時(shí)就會(huì)發(fā)送 5000 條 SQL 進(jìn)入 MySQL 進(jìn)行執(zhí)行,MySQL 對(duì)于如此龐大的請(qǐng)求當(dāng)然處理不過(guò)來(lái),MySQL 就會(huì)崩潰,導(dǎo)致系統(tǒng)癱瘓。如果使用 MQ,系統(tǒng) A 不再是直接發(fā)送 SQL 到數(shù)據(jù)庫(kù),而是把數(shù)據(jù)發(fā)送到 MQ,MQ 短時(shí)間積壓數(shù)據(jù)是可以接受的,然后由消費(fèi)者每次拉取 2000 條進(jìn)行處理,防止在請(qǐng)求峰值時(shí)期大量的請(qǐng)求直接發(fā)送到 MySQL 導(dǎo)致系統(tǒng)崩潰

『RabbitMQ』入門指南(安裝,配置,應(yīng)用),框架工具,RabbitMQ,消息隊(duì)列,入門,Windows,SpringBoot

特點(diǎn)

可靠性:通過(guò)支持消息持久化,支持事務(wù),支持消費(fèi)和傳輸?shù)?ack 等來(lái)確??煽啃?/p>

路由機(jī)制:支持主流的訂閱消費(fèi)模式,如廣播,訂閱,headers 匹配等

擴(kuò)展性:多個(gè) RabbitMQ 節(jié)點(diǎn)可以組成一個(gè)集群,也可以根據(jù)實(shí)際業(yè)務(wù)情況動(dòng)態(tài)地?cái)U(kuò)展集群中節(jié)點(diǎn)

高可用性:隊(duì)列可以在集群中的機(jī)器上設(shè)置鏡像,使得在部分節(jié)點(diǎn)出現(xiàn)問(wèn)題的情況下隊(duì)仍然可用

多種協(xié)議:RabbitMQ 除了原生支持 AMQP 協(xié)議,還支持 STOMP,MQTT 等多種消息中間件協(xié)議

多語(yǔ)言客戶端:RabbitMQ 幾乎支持所有常用語(yǔ)言,比如 Java、Python、Ruby、PHP、C#、JavaScript 等

管理界面:RabbitMQ 提供了易用的用戶界面,使得用戶可以監(jiān)控和管理消息、集群中的節(jié)點(diǎn)等

插件機(jī)制:RabbitMQ 提供了許多插件,以實(shí)現(xiàn)從多方面進(jìn)行擴(kuò)展,當(dāng)然也可以編寫自己的插件

應(yīng)用

本章將會(huì)集成 rabbitmq 到 SpringBoot 中,并使用 rabbitmq-provider (生產(chǎn)者)和 rabbitmq-consumer(消費(fèi)者) 兩個(gè)項(xiàng)目進(jìn)行具體講解, 也可以在父項(xiàng)目中創(chuàng)建這兩個(gè)模塊(本文采用父子模塊方式)

所有代碼示例已經(jīng)上傳到 GitHub 倉(cāng)庫(kù)

倉(cāng)庫(kù)地址:ReturnTmp/rabbitmq-demo: rabbitmq 實(shí)例代碼 (github.com)

生產(chǎn)者

配置

創(chuàng)建子模塊 rabbitmq-provider

依賴配置(也可以 IDEA 初始化模塊直接勾選)

        <!--rabbitmq-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-amqp</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

application.yml

server:  
  port: 8021  
spring:  
  application:  
    name: rabbitmq-provider  
  rabbitmq:  
    host: 127.0.0.1  
    port: 5672  
    username: root  
    password: 111111  
    virtual-host: RootHost

其中虛擬 host 配置項(xiàng)不是必須的,需要自行創(chuàng)建 vhost,如果未自行創(chuàng)建,默認(rèn)為 virtual-host: /

注:vhost 可以理解為虛擬 broker,即 mini-RabbitMQ?server,其內(nèi)部均含有獨(dú)立的 queue、bind、exchange 等,最重要的是擁有獨(dú)立的權(quán)限系統(tǒng),可以做到 vhost 范圍內(nèi)的用戶控制。當(dāng)然,從 RabbitMQ 全局角度,vhost 可以作為不同權(quán)限隔離的手段

可以按照如下步驟創(chuàng)建 vhost

『RabbitMQ』入門指南(安裝,配置,應(yīng)用),框架工具,RabbitMQ,消息隊(duì)列,入門,Windows,SpringBoot

然后創(chuàng)建用戶(管理員)

『RabbitMQ』入門指南(安裝,配置,應(yīng)用),框架工具,RabbitMQ,消息隊(duì)列,入門,Windows,SpringBoot

然后我們需要為用戶分配權(quán)限,指定使用我們剛剛創(chuàng)建的 vhost

『RabbitMQ』入門指南(安裝,配置,應(yīng)用),框架工具,RabbitMQ,消息隊(duì)列,入門,Windows,SpringBoot

代碼

創(chuàng)建直連交換機(jī)配置類

注:RabbitMQ 共有四種交換機(jī),分別為:直連交換機(jī),扇形交換機(jī),主題交換機(jī),首部交換機(jī)。這里使用直連交換機(jī)演示,其他讀者可以自行嘗試

@Configuration
public class DirectRabbitConfig {

    //隊(duì)列 起名:TestDirectQueue
    @Bean
    public Queue TestDirectQueue() {
        // durable:是否持久化,默認(rèn)是false,持久化隊(duì)列:會(huì)被存儲(chǔ)在磁盤上,當(dāng)消息代理重啟時(shí)仍然存在,暫存隊(duì)列:當(dāng)前連接有效
        // exclusive:默認(rèn)也是false,只能被當(dāng)前創(chuàng)建的連接使用,而且當(dāng)連接關(guān)閉后隊(duì)列即被刪除。此參考優(yōu)先級(jí)高于durable
        // autoDelete:是否自動(dòng)刪除,當(dāng)沒(méi)有生產(chǎn)者或者消費(fèi)者使用此隊(duì)列,該隊(duì)列會(huì)自動(dòng)刪除。
        //   return new Queue("TestDirectQueue",true,true,false);

        //一般設(shè)置一下隊(duì)列的持久化就好,其余兩個(gè)就是默認(rèn)false
        return new Queue("TestDirectQueue", true);
    }

    //Direct交換機(jī) 起名:TestDirectExchange
    @Bean
    DirectExchange TestDirectExchange() {
        //  return new DirectExchange("TestDirectExchange",true,true);
        return new DirectExchange("TestDirectExchange", true, false);
    }

    //綁定  將隊(duì)列和交換機(jī)綁定, 并設(shè)置用于匹配鍵:TestDirectRouting
    @Bean
    Binding bindingDirect() {
        return BindingBuilder.bind(TestDirectQueue()).to(TestDirectExchange()).with("TestDirectRouting");
    }


    @Bean
    DirectExchange lonelyDirectExchange() {
        return new DirectExchange("lonelyDirectExchange");
    }

}

然后寫簡(jiǎn)單的接口進(jìn)行消息推送(可以視情況寫為定時(shí)任務(wù))

@RestController
public class SendMessageController {

    @Autowired
    RabbitTemplate rabbitTemplate;  //使用RabbitTemplate,這提供了接收/發(fā)送等等方法

    @GetMapping("/sendDirectMessage")
    public String sendDirectMessage() {
        String messageId = String.valueOf(UUID.randomUUID());
        String messageData = "test message, hello!";
        String createTime = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
        Map<String, Object> map = new HashMap<>();
        map.put("messageId", messageId);
        map.put("messageData", messageData);
        map.put("createTime", createTime);
        //將消息攜帶綁定鍵值:TestDirectRouting 發(fā)送到交換機(jī)TestDirectExchange
        rabbitTemplate.convertAndSend("TestDirectExchange", "TestDirectRouting", map);
        return "ok";
    }
}

啟動(dòng)項(xiàng)目,調(diào)用接口: http://localhost:8021/sendDirectMessage

查看 RabbitMQ 管理頁(yè)面查看是否推送成功

『RabbitMQ』入門指南(安裝,配置,應(yīng)用),框架工具,RabbitMQ,消息隊(duì)列,入門,Windows,SpringBoot

『RabbitMQ』入門指南(安裝,配置,應(yīng)用),框架工具,RabbitMQ,消息隊(duì)列,入門,Windows,SpringBoot

消費(fèi)者

配置

創(chuàng)建子模塊 rabbitmq-consumer

依賴配置

        <!--rabbitmq-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-amqp</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

application.yml

server:  
  port: 8022  
spring:  
  application:  
    name: rabbitmq-consumer  
  rabbitmq:  
    host: 127.0.0.1  
    port: 5672  
    username: root  
    password: 111111  
    virtual-host: RootHost
代碼

創(chuàng)建消息接收監(jiān)聽(tīng)類

@Component
@RabbitListener(queues = "TestDirectQueue")
public class DirectReceiver {

    @RabbitHandler
    public void process(Map testMessage) {
        System.out.println("DirectReceiver receive message: " + testMessage.toString());
    }
}

之后啟動(dòng)項(xiàng)目,查看消費(fèi)者接收情況

『RabbitMQ』入門指南(安裝,配置,應(yīng)用),框架工具,RabbitMQ,消息隊(duì)列,入門,Windows,SpringBoot

序列化

發(fā)送接收消息可能出現(xiàn) Failed to convert message 問(wèn)題,可以通過(guò)使用 JSON 序列化傳輸信息方式解決

生產(chǎn)者
@Configuration
public class RabbitMQConfig implements InitializingBean {

    /**
     * 自動(dòng)注入RabbitTemplate模板
     */
    @Resource
    private RabbitTemplate rabbitTemplate;

    /**
     * 發(fā)送消息JSON序列化
     */
    @Override
    public void afterPropertiesSet() {
        //使用JSON序列化
        rabbitTemplate.setMessageConverter(new Jackson2JsonMessageConverter());
    }
}
消費(fèi)者
@Configuration
public class RabbitMQConfig {

    @Bean
    public MessageConverter jsonMessageConverter(ObjectMapper objectMapper) {
        return new Jackson2JsonMessageConverter(objectMapper);
    }
}

徹底卸載

我們安裝中可能出現(xiàn)各種問(wèn)題,一般情況下是 RabbitMQ 和 Erlang 版本不對(duì)應(yīng),需要完全卸載 RabbitMQ 和 Erlang,可以按照如下步驟卸載

注:博主首次安裝使用的是 Erlang 20.3 Rabbit 3.7.15 ,之后似乎小版本不對(duì)應(yīng),出現(xiàn)問(wèn)題,需要重新卸載安裝

(1)打開(kāi) Windows 控制面板,雙擊“程序和功能”。

(2)在當(dāng)前安裝的程序列表中,右鍵單擊 RabbitMQ Server,然后單擊“卸載”。

(3)在當(dāng)前安裝的程序列表中,右鍵單擊“Erlang OTP”,然后單擊“卸載”。

(4)打開(kāi) Windows 任務(wù)管理器。

(5)在任務(wù)管理器中,查找進(jìn)程 epmd.exe。 如果此進(jìn)程仍在運(yùn)行,請(qǐng)右鍵單擊該進(jìn)程,然后單擊“結(jié)束進(jìn)程”。

(6)刪除 RabbitMQ 和 Erlang 的所有安裝目錄。

(7)刪除文件 C:\Windows\System32\config\systemprofile.erlang.cookie如果存在)。

(8)轉(zhuǎn)到用戶文件夾:C:\Users\[username],然后刪除文件.erlang.cookie。

(9)同樣在 User 文件夾中,轉(zhuǎn)到 AppData \ Roaming \ RabbitMQ。刪除 RabbitMQ 文件夾。

(10)刪除注冊(cè)表 HKEY_LOCAL_MACHINE\SOFTWARE\Ericsson\Erlang\ErlSrv 的子項(xiàng)。

(11)打開(kāi)運(yùn)行 cmd->sc delete RabbitMQ。

(12)打開(kāi)運(yùn)行->regedit 找到 RabbitMQ 節(jié)點(diǎn),刪掉即可(如果存在

參考鏈接

  • Windows 下安裝 RabbitMQ 服務(wù)器及基本配置 - 藍(lán)之風(fēng) - 博客園 (cnblogs.com)
  • RabbitMQ Windows 安裝、配置、使用 - 小白教程-阿里云開(kāi)發(fā)者社區(qū) (aliyun.com)
  • Windows 如何完全卸載 RabbitMQ 和 Erlang 刪除注冊(cè)表
  • windows 下 Erlang 與 RabbitMQ 重新安裝時(shí),由于卸載不干凈導(dǎo)致各類錯(cuò)誤
  • 超詳細(xì)的 RabbitMQ 入門,看這篇就夠了!-阿里云開(kāi)發(fā)者社區(qū) (aliyun.com)
  • RabbitMQ 整合 Spring Boot,實(shí)現(xiàn) Hello World
  • Springboot 整合 RabbitMq ,用心看完這一篇就夠了
  • RabbitMq 核心知識(shí)點(diǎn)小結(jié) - 知乎 (zhihu.com)
  • RabbitMQ消費(fèi)消息坑:failed to convert serialized Message content - jiuchengi

本文由博客一文多發(fā)平臺(tái) OpenWrite 發(fā)布!文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-751459.html

到了這里,關(guān)于『RabbitMQ』入門指南(安裝,配置,應(yīng)用)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Django框架:入門指南與常用命令

    引言: 在當(dāng)今的Web開(kāi)發(fā)世界中,Django無(wú)疑是一個(gè)備受矚目的框架。它以其強(qiáng)大的功能和易用性,吸引著越來(lái)越多的開(kāi)發(fā)者。這篇博客將為你提供一個(gè)關(guān)于Django的概覽,以及一些常用的命令,幫助你快速上手。 一、Django簡(jiǎn)介: Django是一個(gè)高級(jí)Python Web框架,它鼓勵(lì)快速開(kāi)發(fā)和干

    2024年02月03日
    瀏覽(24)
  • C++界面開(kāi)發(fā)框架Qt 6.x入門指南 - 擁有程序主窗口

    C++界面開(kāi)發(fā)框架Qt 6.x入門指南 - 擁有程序主窗口

    Qt技術(shù)交流群:166830288??????歡迎一起進(jìn)群討論 點(diǎn)擊獲取Qt組件下載 Qt?Widget 是桌面環(huán)境中典型的用戶界面元素,這些小部件很好地集成到底層平臺(tái),在 Windows、Linux 和 macOS 上提供原生外觀。 這些小部件成熟且具有豐富的用戶界面元素,適用于大多數(shù)傳統(tǒng)用戶界面。 與?

    2024年02月05日
    瀏覽(15)
  • 前端桌面應(yīng)用開(kāi)發(fā)實(shí)踐:Electron入門指南

    隨著互聯(lián)網(wǎng)的快速發(fā)展,前端開(kāi)發(fā)不再局限于網(wǎng)頁(yè)應(yīng)用,而是逐漸涉及到桌面應(yīng)用的開(kāi)發(fā)。Electron作為一種流行的前端桌面應(yīng)用開(kāi)發(fā)框架,為開(kāi)發(fā)者提供了一種快速構(gòu)建跨平臺(tái)桌面應(yīng)用的方式。本文將介紹Electron的基本概念和使用方法,并通過(guò)一個(gè)簡(jiǎn)單的示例來(lái)說(shuō)明其開(kāi)發(fā)實(shí)踐

    2024年02月11日
    瀏覽(30)
  • 應(yīng)用程序接口(API)安全的入門指南

    應(yīng)用程序接口(API)安全的入門指南

    本文簡(jiǎn)單回顧了 API 的發(fā)展歷史,其基本概念、功能、相關(guān)協(xié)議、以及使用場(chǎng)景,重點(diǎn)討論了與之相關(guān)的不同安全要素、威脅、認(rèn)證方法、以及十二項(xiàng)優(yōu)秀實(shí)踐。?? 根據(jù)有記錄的歷史,隨著 Salesforce 的銷售自動(dòng)化解決方案的推出,首個(gè) Web API 在 1990 年底出現(xiàn)了。在那個(gè)時(shí)候,

    2024年02月03日
    瀏覽(26)
  • 云原生入門指南:構(gòu)建未來(lái)的彈性、高效和可靠應(yīng)用

    什么是云原生? 云原生的定義 :云原生是一種構(gòu)建和 運(yùn)行在云端 的應(yīng)用開(kāi)發(fā)和部署方法論,旨在提高應(yīng)用的彈性、可伸縮性、可觀察性和容錯(cuò)性。 云原生與傳統(tǒng)應(yīng)用開(kāi)發(fā)的區(qū)別:傳統(tǒng)應(yīng)用通常被設(shè)計(jì)和優(yōu)化為運(yùn)行在特定環(huán)境中,而云原生應(yīng)用則利用云計(jì)算和容器化技術(shù),

    2024年02月10日
    瀏覽(27)
  • QSS盒子模型入門指南:了解和應(yīng)用基礎(chǔ)知識(shí)

    QSS盒子模型入門指南:了解和應(yīng)用基礎(chǔ)知識(shí)

    #概述 QSS(Qt Style Sheets)是一種用于美化和定制化Qt應(yīng)用程序的樣式表語(yǔ)言。了解和掌握QSS盒子模型的基本概念對(duì)于創(chuàng)建漂亮的用戶界面布局至關(guān)重要。本文將詳細(xì)介紹QSS盒子模型的各個(gè)組成部分,并提供一些入門級(jí)的示例,幫助您快速掌握盒子模型的基礎(chǔ)知識(shí)。 在QSS盒子模

    2024年02月07日
    瀏覽(23)
  • Midjourney入門指南:簡(jiǎn)單提示詞,搞定高質(zhì)量應(yīng)用設(shè)計(jì)

    Midjourney入門指南:簡(jiǎn)單提示詞,搞定高質(zhì)量應(yīng)用設(shè)計(jì)

    Midjourney是一款文本到圖像的AI工具,可以根據(jù)純文本描述生成圖片,例如UI屏幕、應(yīng)用程序圖標(biāo)、產(chǎn)品圖片、標(biāo)志和吉祥物等。雖然它不能替代UI設(shè)計(jì)師,但它可以在產(chǎn)品設(shè)計(jì)和視覺(jué)探索的早期階段成為有幫助的工具。要使用Midjourney,您需要加入Discord,并編寫清晰的提示,闡

    2024年02月06日
    瀏覽(90)
  • PWA 入門指南:理解與構(gòu)建現(xiàn)代化 Web 應(yīng)用

    PWA 入門指南:理解與構(gòu)建現(xiàn)代化 Web 應(yīng)用

    關(guān)于作者: 還是大劍師蘭特 :曾是美國(guó)某知名大學(xué)計(jì)算機(jī)專業(yè)研究生,現(xiàn)為航空航海領(lǐng)域高級(jí)前端工程師;CSDN知名博主,GIS領(lǐng)域優(yōu)質(zhì)創(chuàng)作者,深耕openlayers、leaflet、mapbox、cesium,canvas,webgl,echarts等技術(shù)開(kāi)發(fā),歡迎加底部微信(gis-dajianshi),一起交流。 熱門專欄 精彩推薦

    2024年03月18日
    瀏覽(32)
  • Graphviz安裝向?qū)Ъ叭腴T指南

    Graphviz安裝向?qū)Ъ叭腴T指南

    目錄 1、首先在官網(wǎng)下載graphviz 2、安裝。 3、測(cè)試并在Windows命令行中使用 4、在Python中使用? 5、在自帶的gvedit.exe?程序中使用 6、在語(yǔ)雀中使用? 7、繪制一棵簡(jiǎn)單的二叉樹(shù) 8、詳細(xì)語(yǔ)法介紹 8.1 帶標(biāo)簽 8.2 修改方框顏色和形狀 8.3子視圖? 8.4 結(jié)構(gòu)視圖 8.5 繼承關(guān)系? 下載網(wǎng)址:

    2024年02月14日
    瀏覽(49)
  • C++ 編程入門指南:深入了解 C++ 語(yǔ)言及其應(yīng)用領(lǐng)域

    C++ 是一種跨平臺(tái)的編程語(yǔ)言,可用于創(chuàng)建高性能應(yīng)用程序。 C++ 是由 Bjarne Stroustrup 開(kāi)發(fā)的,作為 C 語(yǔ)言的擴(kuò)展。 C++ 為程序員提供了對(duì)系統(tǒng)資源和內(nèi)存的高級(jí)控制。 該語(yǔ)言在 2011 年、2014 年、2017 年和 2020 年進(jìn)行了 4 次重大更新,分別為 C++11、C++14、C++17 和 C++20。 C++ 是世界上

    2024年03月21日
    瀏覽(33)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包