文章目录
- 前言
- 一、移动云云主机ECS
- 云主机ECS产品优势
- 云主机ECS产品功能
- 云主机ECS应用场景
- 二、移动云云主机ECS选购
- 三、移动云云主机ECS配置
- 四、移动云云主机ECS牛刀小试
- 五、移动云云主机ECS安装部署消息中间件RocketMQ
- 云主机ECS安装RocketMQ
- 云主机ECS配置RocketMQ
- 云主机ECS启动RocketMQ
- 云主机ECS构建生产者消费者模型
- 总结
前言
移动云以“央企保障、安全智慧、算网一体、属地服务”为品牌支撑,聚焦智能算力建设,打造一朵智能、智慧、安全可信可控的云,提供更优质的算力服务,引领云计算产业发展
- 30+资源节点实现全国省份100%覆盖
- 230+自有产品产品丰富度国内排名前二
- 60+可信云认证斩获60+项可信云资质认证
- TOP2生态规模生态市场规模全国第二
一、移动云云主机ECS
云主机 ECS (Elastic Compute Server)是一种按需获取的云端服务器,为您提供高可靠、弹性扩展的计算资源服务,您可以根据需求选择不同规格的CPU、内存、操作系统、硬盘和网络来创建您的云主机,满足您的个性化业务需求。云主机从订购到使用仅需数十秒时间,助您快速灵活地构建企业应用。
移动云部是粗略的只有一种云主机,而是有适应各种场景的云产品的规格,比如Web应用,数据库,游戏等等方面供我们选择。
云主机ECS产品优势
-
成本低廉
云主机资源按使用量计费,较传统IT系统,大幅度缩减建设与维护成本。 -
快速交付
云主机从订购到使用仅需数十秒,可快速交付到用户手中。 -
便捷易用
云主机的所有操作在控制台可轻松查看并使用,操作指引与说明简洁易懂。 -
稳定可靠
云主机服务通过可信云服务认证并获得可信云五星级云主机认证,可用性达到99.975%。
云主机ECS产品功能
-
丰富镜像供您选择
丰富的公共镜像与市场镜像满足您各类业务需求。 -
自定义镜像助您快速部署
自定义镜像可用于创建云主机,快速复制云主机操作系统环境。 -
云服务器备份保障系统安全
对云主机系统盘创建备份,可用于快速恢复数据状态,保障系统数据安全。 -
云硬盘供您灵活使用
云主机支持最大挂载22块云硬盘,多种性能按需选用。 -
VPC虚拟私有云实现安全隔离
VPC虚拟私有云是可以自定义的专有隔离网络,实现网络隔离。
云主机ECS应用场景
ECS有多种经典的应用场景,包括但不限于:企业电商、Web应用、大数据分析、机器学习、深度学习、云渲染、游戏部署、视频直播、数据库应用等方面,我在这里只做部分演示:
Web应用
常规的Web应用使用的架构,移动云推荐计算/通用系列云主机,提供均衡、强劲的计算、内存和网络服务,根据业务负载压力随时调整实例配置无需担心业务突增时算力不足。
机器学习、深度学习
对于机器学习、深度学习、训练推理、科学计算、地震分析等场景,移动云推荐GPU云主机,提供GPU算力能力。
数据库应用
对于内存要求较高的数据库使用场景,移动云云主机搭配超高IO云硬盘,满足海量数据处理需求。
二、移动云云主机ECS选购
首先我们需要访问移动云官方主页:移动云官网
我们可以根据自己的实际业务进行选择,比较常用的就是Web应用方面,但白嫖怪的我一眼就看到了免费试用
免费体验的类型有很多,有云主机、弹性计算、云存储、数据库等等,但前提是先要进行实名认证,我们就选第一个通用入门型云主机即可。
我们需要选择的几个地方,一个是Liunx镜像,一个是带宽,反正是免费的,直接拉满呗5Mps,然后确定订单即可。
这么多配置算下来才0元,立马支付。
我们点击管理控制台即可。
云主机ECS正在创建中,稍等一会即可。
当我们看到云主机ECS显示运行中,证明我们的移动云产品已经顺利购买并且运行。
三、移动云云主机ECS配置
因为我们移动云主机是新买的,我们需要配置一些信息,比如设置一下密码,安全组等等。
重置密码:
安全组:
当我们配置完所有规则之后需要重新一下服务器:
四、移动云云主机ECS牛刀小试
我们能不能在移动云云主机ECS运行下hello.c文件,然后输出Hello ECS!当然是可以的让我们一起来看一看:
我们首先在移动云控制台进行VNC远程登陆
默认的账号是:root,密码输入我们刚刚设置的密码即可。
我们要想运行hello.c,首先要安装gcc:
yum install gcc
我们来创建一个hello.c文件:
touch hello.c
我们使用vim编辑器编辑hello.c文件
vim hello.c
按i进入插入模式,在hello.c加入C语言代码
#include<stdio.h>
int main()
{
printf("Hello ECS!");
return 0 ;
}
保存退出 !wq
编译 C 语言代码,并生成可执行文件,在hello.c当前目录执行
gcc -o hellotest hello.c
就会生成名为hellotest的可执行文件,在当前目录执行./hellotest
五、移动云云主机ECS安装部署消息中间件RocketMQ
因为我们刚刚是开放了安全组的,所以我们可以直接在Xhsell进行远程连接的。
云主机ECS安装RocketMQ
首先我们需要先去RocketMQ 官网进行下载:RocketMQ 官网
我们这里选择4.9.7版本即可
创建 RocketMQ 安装目录:
mkdir -p /usr/local/rocketmq
我们需要将下载好的rocketmq上传到移动云ECS主机上去,我们需要安装:
yum install -y lrzsz
将安装包解压到新建的安装目录:
unzip -d /usr/local/rocketmq rocketmq-all-4.9.7-bin-release.zip
云主机ECS配置RocketMQ
进入 rocketmq 安装目类
cd /usr/local/rocketmq/rocketmq-all-4.9.7-bin-release
创建存放数据的目录:
mkdir -p store store/commitlog store/consumequeue
进入 conf 目录,编辑 broker.conf 文件
vim broker.conf
在 broker.conf 文件中追加下面内容
listenPort=10911
namesrvAddr=localhost:9876
storePathRootDir=/usr/local/rocketmq/rocketmq-all-4.9.4-bin-release/store
storePathCommitLog=/usr/local/rocketmq/rocketmq-all-4.9.4-bin-release/store/commitlog
storePathConsumerQueue=/usr/local/rocketmq/rocketmq-all-4.9.4-bin-release/store/consumequeue
开放防火墙 9876 和 10911 端口
firewall-cmd --zone=public --add-port=9876/tcp --permanent
firewall-cmd --zone=public --add-port=10911/tcp --permanent
更新防火墙规则
firewall-cmd --reload
云主机ECS启动RocketMQ
启动nameserver
nohup sh mqnamesrv &
启动 broker
nohup sh mqbroker -c /usr/local/rocketmq/rocketmq-all-4.9.4-bin-release/conf/broker.conf &
云主机ECS构建生产者消费者模型
引入Rocketmq依赖:
<!-- RocketMQ 客户端依赖 -->
<dependency>
<groupId>org.apache.rocketmq</groupId>
<artifactId>rocketmq-client</artifactId>
<version>4.9.7</version>
</dependency>
生产者代码:
import org.apache.rocketmq.client.producer.DefaultMQProducer;
import org.apache.rocketmq.common.message.Message;
public class Producer {
public static void main(String[] args) throws Exception {
// 实例化消息生产者
DefaultMQProducer producer = new DefaultMQProducer("producerGroup");
// 设置NameServer的地址
producer.setNamesrvAddr("36.212.205.161:9876");
// 启动生产者
producer.start();
for (int i = 0; i < 10; i++) {
// 创建消息,并指定Topic、Tag和消息体
Message msg = new Message("TopicTest", "TagA", ("Hello RocketMQ " + i).getBytes());
// 发送消息
producer.send(msg);
}
// 关闭生产者
producer.shutdown();
}
}
消费者代码:
import org.apache.rocketmq.client.consumer.DefaultMQPushConsumer;
import org.apache.rocketmq.client.consumer.listener.ConsumeConcurrentlyContext;
import org.apache.rocketmq.client.consumer.listener.ConsumeConcurrentlyStatus;
import org.apache.rocketmq.client.consumer.listener.MessageListenerConcurrently;
import org.apache.rocketmq.common.message.MessageExt;
import java.util.List;
public class Consumer {
public static void main(String[] args) throws Exception {
// 实例化消息消费者
DefaultMQPushConsumer consumer = new DefaultMQPushConsumer("consumerGroup");
// 设置NameServer的地址
consumer.setNamesrvAddr("36.212.205.161:9876");
// 订阅Topic
consumer.subscribe("TopicTest", "*");
// 注册消息监听器
consumer.registerMessageListener(new MessageListenerConcurrently() {
@Override
public ConsumeConcurrentlyStatus consumeMessage(List<MessageExt> msgs, ConsumeConcurrentlyContext context) {
for (MessageExt msg : msgs) {
System.out.println(new String(msg.getBody()));
}
return ConsumeConcurrentlyStatus.CONSUME_SUCCESS;
}
});
// 启动消费者
consumer.start();
System.out.println("Consumer Started.");
}
}
生产者通过DefaultMQProducer类实例化,并设置了NameServer的地址,然后循环发送消息到指定Topic。消费者通过DefaultMQPushConsumer类实例化,同样设置了NameServer的地址,并订阅了相应的Topic,同时注册了一个消息监听器来处理接收到的消息。
总结
通过本次使用移动云主机ECS进行一些基本的操作和安装部署消息中间件RocketMQ之后,我发现移动云的云主机可以满足我们各种个性化业务需求。云主机从订购到开通使用仅需数分钟时间,快速灵活地构建企业应用。根据我们的具体要求,有丰富的镜像供您选择,而且移动云的云主机在性能和安全性上可以说是非常可靠了。移动云是一款非常适合企业使用的产品,不仅有丰富的应用资源和强大的聚合能力,而且企业可以根据自身需要灵活配置业务,最后加以全链路的数据安全保障,从而助力企业信息化体系的建立和健全。
包括移动云云主机ECS控制台管理的这个页面设计和功能的支持也是十分完善的,用户想要去找什么功能都能直接找到,并且就算某个功能我们不太会用,移动云也为我们提供了非常易懂和完善的文档供我们阅读和学习,手把手教会。