SpringCloud Alibaba 环境搭建

Nacos 安装与使用

wget https://github.com/alibaba/nacos/releases/download/2.1.1/nacos-server-2.1.1.tar.gz

nacos 数据库

注意:Nacos 目前只支持MySQL数据库,请安装MySQL8.0版本,以免出现其他错误。

新建数据库nacos_config,并运行【conf/nacos-mysql.sql】文件,初始化数据库即可

修改 Nacos 的配置文件

# 填自己的ip地址,本地填127.0.0.1就行
nacos.inetutils.ip-address=127.0.0.1
​
spring.datasource.platform=mysql
db.num=1
#填自己的数据库连接和密码
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=root
db.password.0=root

启动 Nacos

Windows:
startup.cmd -m standalone
​
Linux: 
sh startup.sh -m standalone

Docker

Nacos Docker 快速开始

mac-m1-docker 安装 nacos 异常

mac-m1-docker安装nacos异常_com.alibaba.nacos.api.exception.runtime.nacosrunti-CSDN博客

docker build -t nacos/nacos-server:v2.1.1 .

本地下载了一个 nacos2.1.1, 在 /Users/zjp/Projects/nacos 目录, 修改 /Users/zjp/Projects/nacos/conf/application.properties 中 mysql 连接 ip:port

host.docker.internal:3306

docker run -itd -e MODE=standalone --add-host host.docker.internal:host-gateway -p 8848:8848 -p 9848:9848 -m 2048m --memory-swap=2312m -v /Users/zjp/Projects/nacos/conf/application.properties:/home/nacos/conf/application.properties --name nacos nacos-server:v2.1.1

端口

7848:实现 Nacos 集群通信,一致性选举,心跳检测等功能

8848:Nacos 主端口,对外提供服务的Http端口

9848: 客户端 gRPC 请求服务端端口,用于客户端向服务端发起连接和请求,该端口的配置为:主端口(8848)+ 1000 偏移量

9849:服务端 gRPC 请求服务端端口,用于服务间同步等,该端口的配置为:主端口 + 1001偏移量

Redis

docker run -d -p 6379:6379 --name redis redis

ES 本地一键安装与启动

首次安装时,先使用docker创建一个供测试的虚拟网络,后续搭建的其他es节点或者组件(如kibana)都使用这个虚拟网络

docker network create learnnetwork
docker run --name es --net learnnetwork -d -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" arm64v8/elasticsearch:7.10.1
  • 9300端口为ES集群间组件的通信接口

  • 9200端口为浏览器访问的http协议的Restful接口:http://localhost:9200/

pom.xml
        <dependency>
            <groupId>org.elasticsearch</groupId>
            <artifactId>elasticsearch</artifactId>
            <version>7.10.1</version>
        </dependency>
​
        <dependency>
            <groupId>org.elasticsearch.client</groupId>
            <artifactId>elasticsearch-rest-high-level-client</artifactId>
            <version>7.10.1</version>
        </dependency>
​
        <dependency>
            <groupId>com.google.code.gson</groupId>
            <artifactId>gson</artifactId>
            <version>1.7.1</version>
        </dependency>

java
//        CreateIndexRequest request = new CreateIndexRequest("user");
//        CreateIndexResponse response = client.indices().create(request, RequestOptions.DEFAULT);
//        boolean isOk = response.isAcknowledged();
//        System.out.println(isOk);
​
//        GetIndexRequest request = new GetIndexRequest("user");
//        GetIndexResponse response = client.indices().get(request, RequestOptions.DEFAULT);
//        System.out.println(response.getAliases());
//        System.out.println(response.getMappings());
//        System.out.println(response.getSettings());
​
//        IndexRequest request = new IndexRequest();
//        request.index("user").id("1001");
//
//        User user = new User();
//        user.setName("zjp");
//        user.setAge(30);
//        String userStr = gson.toJson(user);
//
//        request.source(userStr, XContentType.JSON);
//
//        IndexResponse response = client.index(request, RequestOptions.DEFAULT);
//        System.out.println(response.getResult());
​
//        UpdateRequest request = new UpdateRequest();
//        request.index("user").id("1001");
//        request.doc(XContentType.JSON, "age", 28);
//
//        UpdateResponse response = client.update(request, RequestOptions.DEFAULT);
//        System.out.println(response.getGetResult());
​
//        GetRequest request = new GetRequest();
//        request.index("user").id("1001");
//
//        GetResponse documentFields = client.get(request, RequestOptions.DEFAULT);
//        System.out.println(documentFields.getSourceAsString());
​
//        BulkRequest bulk = new BulkRequest();
//
//        bulk.add(new IndexRequest().index("user").id("1001").source(XContentType.JSON, "name", "zjp"));
//        bulk.add(new IndexRequest().index("user").id("1002").source(XContentType.JSON, "name", "zjp1"));
//        bulk.add(new IndexRequest().index("user").id("1003").source(XContentType.JSON, "name", "zjp2"));
//        bulk.add(new IndexRequest().index("user").id("1004").source(XContentType.JSON, "name", "zjp3"));
//        bulk.add(new IndexRequest().index("user").id("1005").source(XContentType.JSON, "name", "zjp4"));
//
//        BulkResponse response = client.bulk(bulk, RequestOptions.DEFAULT);
//        System.out.println(response.getTook());
//        System.out.println(response.getItems());
​
        SearchRequest request = new SearchRequest();
        request.indices("user");
//        request.source(new SearchSourceBuilder().query(QueryBuilders.matchAllQuery()));
//        SearchSourceBuilder builder = new SearchSourceBuilder().query(QueryBuilders.termQuery("name", "zjp"));
        SearchSourceBuilder builder = new SearchSourceBuilder().query(QueryBuilders.matchAllQuery());
//        builder.from(0);
//        builder.size(2);
        builder.sort(SortBuilders.fieldSort("name.keyword").order(SortOrder.DESC));
        request.source(builder);
        SearchResponse response = client.search(request, RequestOptions.DEFAULT);
        SearchHits hits = response.getHits();
        System.out.println(hits.getTotalHits());
        System.out.println(response.getTook());
        for (SearchHit hit: hits) {
            System.out.println(hit.getSourceAsString());
        }
​
        client.close();

  • 23
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值