每天进步一点点---------畅购商城第三天 文件微服务(单机版)

在练习畅购商城项目,依赖畅购商城的文件微服务,边学变练,做一个整理,目前是单机部署,集群还未尝试。

文件微服务架构

自己理解的部署图,可能并不标准,哪位大神懂的话,可以指点一下,其中,Web或者其它微服务会调用文件微服务,需要头信息的Content=Type为Multipart/form-data,文件微服务相当于FastDFS的客户端,调用FastDFS tracker,Tracker调用Storage,实现文件的存储,Storage需要安装nginx和fastdfs-nginx-module实现文件同步,此尝试全部在一台虚拟机使用。
在这里插入图片描述

安装

(1)fastDFS分布式文件系统组件安装
在redhat7.6安装fastDFS如下,以非root用户fastdfs执行,无法ssh登录,安装在/opt/fasf/DFS目录下,用户id为13000,由于redhat7.6本地镜像未找到libevent-devel,手动下载libevent-devel的rpm包放到安装包中,redhat选择Basic Web Server模式安装后,执行Install脚本可以直接安装成功,具体目录如下:
在这里插入图片描述
fdfsInstall.conf配置文件如下:

fastdfsGroupId=13000
fastdfsUserId=13000
fastdfsGroupName=fastdfs
fastdfsUserName=fastdfs
fastdfsPassword=XXXX
fastdfsInstallDIR="/opt/fasfDFS/"

fastDFSInstall.sh如下:

#!/bin/bash

source ./../utils.sh
source ./fdfsInstall.conf

function addFastDFSUser() {
   
	if id -u ${fastdfsUserName} >/dev/null 2>&1; then
		return 0
	else
		groupadd -g "${fastdfsGroupId}" "${fastdfsGroupName}"
		useradd -M "${fastdfsUserName}" -u "${fastdfsUserId}" -s /sbin/nologin -g "${fastdfsGroupId}" -p "${fastdfsPassword}"
		echo "${fastdfsPassword}" | passwd --stdin "${fastdfsUserName}"
	fi
}

function checkRpm() {
   
	local rpmName=$1
	if [ -z "$(yum list installed | grep ${
     rpmName})" ]; then
		local result=$(echo y | yum install ${
    rpmName})
		log_info "${rpmName} is not installed,yum insall ${rpmName} result is: ${result}"
		if [[ "${result}" =~ "fail" ]]; then
			log_error "${rpmName} install failed"
			return 1
		else
			log_info "${rpmName} is not installed,now installed success"
			return 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值