毕业设计准备篇一——环境搭建

经过四年的学习和实战经验,打算做一个可以融合大多数学习的知识的毕业设计,所以就给自己的毕设取名:(分布式)桌面化多媒体网站系统。系统采用的构架如图1所示。

图1 系统架构

其中数据库集群目前采用mysql集群,为什么呢,因为目前mysql使用率还是很大的,而且mysql官方文档详细,最大的原因是因为自己笔记本配置不够高,不能搭建oracle集群。业务集群和WEB集群使用dubbo来实现远程调用及服务治理。

本篇文档的主要内容是记录毕设准备工作——环境搭建。

环境搭建

1、Linux环境配置

我使用的Linux版本是Ubuntu 14.10,安装在自己电脑的虚拟机中,分配了三个网卡。每个虚拟机和实体机都属于同一个局域网,同时使用虚拟机的内部网卡构建内部虚拟网络。如图2所示。用户使用SSH证书登录(略)。

图2 主机拓扑图

2、Memcached

memcached使用的是官方下载的源码包,然后进行编译安装。获取最新的源码包:wget http://memcached.org/latest。

解压:tar -zxvf latest

安装依赖:sudo apt-get install gcc

sudo apt-get install icc-profiles

sudo apt-get install sasl2-bin

wget https://github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz

安装:./configure && make && make test && sudo make install

启动:/usr/local/bin/memcached -d -m 1024 -u root -p 11211 -P /tmp/memcached.pid

为了让memcache开机启动,为它写启动脚本,脚本内容如下:

#!/bin/sh

#

# memcached:    MemCached ROOT

#

# chkconfig:    - 90 25

# description:  MemCached ROOT

#

# Source function library.

#. /etc/rc.d/init.d/functions

#. /etc/sysconfig/network

start()

{

echo -n $"Starting memcached: "

/usr/local/bin/memcached -u root -d -m 4096 -p 11211

echo

}

stop()

{

echo -n $"Shutting down memcached: "

kill -9 `pgrep  memcached`

echo

}

[ -f /usr/local/bin/memcached ] || exit 0

# See how we were called.

case "$1" in

start)

start

;;

stop)

stop

;;

restart|reload)

stop

start

;;

condrestart)

stop

start

;;

*)

echo $"Usage: $0 {start|stop|restart|reload|condrestart}"

exit 1

esac

exit 0

3、Zookeeper

下载:wget http://mirrors.cnnic.cn/apache/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz

解压:tar -zxvf zookeeper-3.4.6.tar.gz

修改配置:mv zoo_sample.cfg zoo.cfg

vim zoo.cfg

配置内容为:

# The number of milliseconds of each tick

tickTime=2000

# The number of ticks that the initial

# synchronization phase can take

initLimit=10

# The number of ticks that can pass between

# sending a request and getting an acknowledgement

syncLimit=5

# the directory where the snapshot is stored.

# do not use /tmp for storage, /tmp here is just

# example sakes.

dataDir=/home/zookeeper/data

# the port at which the clients will connect

clientPort=2181

# the maximum number of client connections.

# increase this if you need to handle more clients

#maxClientCnxns=60

#

# Be sure to read the maintenance section of the

# administrator guide before turning on autopurge.

#

# http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance

#

# The number of snapshots to retain in dataDir

#autopurge.snapRetainCount=3

# Purge task interval in hours

# Set to "0" to disable auto purge feature

#autopurge.purgeInterval=1

4、服务管理器安装

安装:sudo apt-get install chkconfig

sudo apt-get install chkrunlevel

sudo dpkg -i chkconfig_11.0-79.1-2_all.deb

sudo ln -s /usr/lib/insserv/insserv /sbin/insserv

添加服务:
sudo chkconfig --add memcached

sudo chkconfig --level 2345 memcached on

chkconfig --list memcached

sudo chkconfig --add zookeeper

5、svn服务器安装

安装:sudo apt-get install subversion

sudo apt-get install apache2-utils

sudo apt-get install apache2

搭建工作:

sudo adduser svnuser

sudo addgroup subversion

sudo addgroup svnuser subversion

sudo mkdir /home/svn

sudo apt-get install libapache2-svn

sudo svnadmin create /home/svn/studio

svnserve -d -r /home/svn/studio/

sudo vim /etc/apache2/mods-available/dav_svn.conf

sudo htpasswd -c /home/svn/project/conf/passwd wms

sudo chown -R www-data:www-data /home/svn/studio/

sudo make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /home/svn/apache2_svn_ssl.pem

sudo a2enmod ssl

6、MySQL集群

集群主要是配置文件很复杂,搞了很久才搞定。一下是配置文件:

Config.ini

#

# Configuration file for MyCluster

#

[NDB_MGMD DEFAULT]

Portnumber=1186

[NDB_MGMD]

NodeId=1

HostName=192.168.56.102

DataDir=/home/data/mysql-cluster/1/

Portnumber=1186

[TCP DEFAULT]

SendBufferMemory=4M

ReceiveBufferMemory=4M

[NDBD DEFAULT]

BackupMaxWriteSize=1M

BackupDataBufferSize=16M

BackupLogBufferSize=4M

BackupMemory=20M

BackupReportFrequency=10

MemReportFrequency=30

LogLevelStartup=15

LogLevelShutdown=15

LogLevelCheckpoint=8

LogLevelNodeRestart=15

DataMemory=1M

IndexMemory=1M

MaxNoOfTables=4096

MaxNoOfTriggers=3500

NoOfReplicas=2

StringMemory=25

DiskPageBufferMemory=64M

SharedGlobalMemory=20M

LongMessageBuffer=32M

MaxNoOfConcurrentTransactions=16384

BatchSizePerLocalScan=512

FragmentLogFileSize=64M

NoOfFragmentLogFiles=16

RedoBuffer=32M

MaxNoOfExecutionThreads=2

StopOnError=false

LockPagesInMainMemory=1

TimeBetweenEpochsTimeout=32000

TimeBetweenWatchdogCheckInitial=60000

TransactionInactiveTimeout=60000

HeartbeatIntervalDbDb=15000

HeartbeatIntervalDbApi=15000

[NDBD]

NodeId=21

HostName=192.168.56.102

DataDir=/home/data/mysql-cluster/21/

[NDBD]

NodeId=22

HostName=192.168.56.103

DataDir=/home/data/mysql-cluster/22/

[MYSQLD DEFAULT]

[MYSQLD]

NodeId=41

HostName=192.168.56.102

[MYSQLD]

NodeId=42

HostName=192.168.56.103

[API]

NodeId=61

HostName=192.168.56.102

[API]

NodeId=62

HostName=192.168.56.103

My.cnf

[mysqld]

#不再进行反解析(ip不反解成域名),这样可以加快数据库的反应时间

skip-name-resolve

log-error=mysqld.42.err

datadir="/home/data/mysql-cluster/42/"

tmpdir="/home/data/mysql-cluster/42/tmp"

basedir="/home/mysql/mysql-cluster/bin/"

port=3306

ndbcluster=on

ndb-nodeid=42

ndb-connectstring=127.0.0.1:1186,

socket="/home/data/mysql-cluster/42/mysql.socket"

解决不能通过mysql.sock连接MySQL问题 这个问题主要提示是,不能通过 '/tmp/mysql.sock'连到服务器,而php标准配置正是用过'/tmp/mysql.sock',但是一些mysql 安装方法 将 mysql.sock放在/var/lib/mysql.sock或者其他的什么地方,用这样的方法:
  ln -s /var/lib/mysql /mysql .sock /tmp/mysql.sock

成功了,就是这样ln -s /var/lib/mysql /mysql .sock /tmp/mysql.sock

/home/mysql/mysql-cluster/bin/ndb_mgmd --initial --ndb-nodeid=1 --config-dir=/home/data/mysql-cluster/1 --config-file=/home/data/mysql-cluster/1/config.ini

/home/mysql/mysql-cluster/bin/ndbd --ndb-nodeid=22 --ndb-connectstring=192.168.56.102:1186

/home/mysql/mysql-cluster/scripts/mysql_install_db --user=wms --datadir=/home/data/mysql-cluster/42/

/home/mysql/mysql-cluster/bin/mysqld_safe --defaults-file=/home/data/mysql-cluster/41/my.cnf --basedir=/home/mysql/mysql-cluster/ --log-error=/home/data/mysql-cluster/41/error.log --user=wms &

毕业设计准备篇一——环境搭建相关推荐

  1. CV00-01-开篇与环境搭建

    目录 Intro 环境搭建 TensorFlow搭建 PyTorch搭建 PaddlePaddle搭建 Intro 从今天起学习CV,为期6个月,以三个真实项目为背景学习CV. 目前是第一个项目--车 ...

  2. 安卓从入门到进阶第一篇(环境搭建)

    "转发,助力一波!" 1.1 系统配置 1.1.1 开发环境 我们平时使用的电脑环境,基本都是Windows操作系统,为了开发Android去将电脑装成Linux系统,显而易见不太 ...

  3. 《Python从小白到大牛》第2篇 开发环境搭建

    <Python从小白到大牛>已经上市! 开发环境搭建 <论语•魏灵公>曰:"工欲善其事,必先利其器",做好一件事,准备工作非常重要.在开始学习Python技 ...

  4. 分布式基础篇1——环境搭建(谷粒商城)

    一.项目简介 1.电商模式 2.项目前置知识 3.项目技术&特色 4.项目架构图 5.微服务划分图 二.分布式基础概念 1.微服务 2.集群&分布式&节点 3.远程调用 4.负 ...

  5. 物联网智能家居DIY_TC32篇(1) 环境搭建与点灯

    物联网智能家居DIY_TC32系列文章目录 1. 环境搭建与点灯 文章目录 物联网智能家居DIY_TC32系列文章目录 一.前言 二.前置条件 三.本文参考资料 四.正文部分 4.1 UB运行环境搭建 ...

  6. 企业微信开发——企业内部自建应用开发(第一篇)---环境搭建

    一.背景介绍 现在越来越多的企业开始注重私域流量的运营和建设,防止客户随着人员流动而流失,所以就出现了基于企业微信开发的需求,但是目前关于企业微信开发的生态环境依旧不太丰富,腾讯的api文档写的也是晦 ...

  7. 中望CAD.NET二次开发(C#)_第01篇_环境搭建

    中望CAD版本:2020 VS版本:2013 一.创建类库项目 二.添加引用 添加对ZwDatabaseMgd.dll和ZwManaged.dll的引用 (这两个DLL位于中望CAD安装目录下) 三. ...

  8. 谷粒商城-分布式基础篇-环境搭建

    1.写在前面 既个人博客系统和Java虚拟机学习后,深感技术点过于零散,于是照着尚硅谷教程写了谷粒商城这个项目.谷粒商城是一个完整的大型分布式架构电商平台,这个项目将我目前学到的知识点,以及还未学到的 ...

  9. 【谷粒商城基础篇】基础环境搭建

    谷粒商城笔记合集 分布式基础篇 分布式高级篇 高可用集群篇 ===简介&环境搭建=== 项目简介与分布式概念(第一.二章) 基础环境搭建(第三章) ===整合SpringCloud=== 整合 ...

最新文章

  1. SCCM2012SP1---配置客户端发现方法和边界组
  2. 【Apache】 配置 (http协议的) vhost
  3. java api中最常用的五个包_java 5 个常用的api包
  4. Exchange中的数据库文件
  5. Docker版本介绍(5)
  6. 十九.激光和惯导LIO-SLAM框架学习之项目工程代码介绍---代码框架和一些文件解释
  7. 不用U盘安卓Linux系统,不用U盘,不要光驱,不需分区,windows下安装noilinux双系统...
  8. C++_类和对象_封装_成员属性私有化---C++语言工作笔记038
  9. tornado SQLAlchemy
  10. 【转】妈妈告诉我的细节
  11. Insert Delete GetRandom O(1)
  12. doubango TURN Data Indication报文代码
  13. 【C51单片机】6-ESP8266——wifi模块联网、AT指令
  14. Atitit q2016 q0 doc list on home ntpc.docx
  15. 机器学习笔记21——决策树之CART算法原理及python实现案例
  16. MOOC单片机原理及应用题库大全
  17. MySQL备份报错mysqldump: Got error: 1045: Access denied for user ‘root‘@‘localhost‘ (using password: YES)
  18. Android:插值器(Interpolator)和估值器(TypeEvaluator)的理解和使用
  19. revit常用土建软件【桩转化】功能,CAD识别转化
  20. 基于Bert论文构建Question-Answering模型

热门文章

  1. #千峰逆战班,205# 关于方法的总结和数组的一些基本知识 每天一个知识点,学会Java不再难
  2. 一个Hierarchical Attention神经网络的实现
  3. 隶属函数(membership function)
  4. css3运动后留下轨迹尾巴_CSS3 甩尾巴(摆尾)动效
  5. 信用评分卡模型(R语言)
  6. android .join,悟饭游戏厅(com.join.android.app.mgsim.wufan.mha) - 3.6.4.4 - 应用 - 酷安
  7. 论文超详细精读|八千字:DGNN
  8. 【网络】叶脊(Spine-Leaf)网络拓扑下全三层网络设计与实践(一) - 叶脊网络架构简介
  9. Spring boot + Mybatis Plus实现上一页、下一页功能。
  10. PAT A1127 ZigZagging on a Tree ——多情只有春庭月,犹为离人照落花