GoBelieve IM 服务端编译

#部署im
1. 安装go编译环境
参考链接:https://golang.org/doc/install

2. 下载im_service代码
cd $GOPATH/src/github.com/GoBelieveIO
git clone https://github.com/GoBelieveIO/im_service.git

3 编译proto文件
cd im_service

//注意需要FQ
go get google.golang.org/grpc
go get -u github.com/golang/protobuf/{proto,protoc-gen-go}

export PATH=$PATH:$GOPATH/bin

protoc -Irpc/ rpc/rpc.proto --go_out=plugins=grpc:rpc

4. 编译
cd im_service
mkdir bin

go get github.com/bitly/go-simplejson
go get github.com/golang/glog
go get github.com/go-sql-driver/mysql
go get github.com/garyburd/redigo/redis
go get github.com/googollee/go-engine.io
go get github.com/richmonkey/cfg
go get github.com/syndtr/goleveldb/leveldb/opt
go get github.com/syndtr/goleveldb/leveldb

//注意需要FQ
go get google.golang.org/grpc

make install

可执行程序在bin目录下

5. 配置程序
配置项的说明参考ims.cfg.sample, imr.cfg.sample, im.cfg.sample

6. 启动程序

创建ims消息存放路径

创建日志文件路径
mkdir /data/logs/ims
mkdir /data/logs/imr
mkdir /data/logs/im

pushd `dirname $0` > /dev/null
BASEDIR=`pwd`

nohup $BASEDIR/ims -log_dir=/data/logs/ims ims.cfg >/data/logs/ims/ims.log 2>&1 &

nohup $BASEDIR/imr -log_dir=/data/logs/imr imr.cfg >/data/logs/imr/imr.log 2>&1 &

nohup $BASEDIR/im -log_dir=/data/logs/im im.cfg >/data/logs/im/im.log 2>&1 &

时间: 2024-10-17 07:38:10

GoBelieve IM 服务端编译的相关文章

jenkins+gitlab自动化编译部署方案探索及服务端编译webpack实战

一. 背景 之前我们的开发流程为在本地进行webpack打包编译,然后svn提交源代码和编译后的代码.同时每次提交前也会从svn更新源代码和编译后的代码.这样做有几个缺点: 1. svn 更新和提交编译后的代码造成大量冲突文件 2. 由于我们使用非覆盖式发布的命名方式,在经过小组多人多次优化提交测试之后,在整理需要发布的文件列表时,很容易遗漏一些文件 3. 在涉及到多人开发同一功能时容易产生代码被覆盖.人工安排发布优先级.手动注释他人未上线代码等情况 4. svn的分支开发繁琐不友好,加重工作量

docker下编译mangoszero WOW60级服务端(一)

这几天看到暴雪准备开放怀旧服的新闻,突然想到几年前用大芒果window一键服务端自己搭建过服务,就想着在Linux环境下重新编译一套,毕竟Linux作为服务端,性能和稳定性都会高一些,于是在mac虚拟机中安了个centos7,按照官方文档搞了一套. 虚拟中搭建完成之后,想着不如在docker中做几个镜像,到时一键启动就可以搭建完成一套服务端,多么轻松. 经过几天的努力,完成了60级镜像和70级镜像的制作,由于镜像有些大,目前只把60级镜像推送到了阿里云,有兴趣的朋友可以pull下来玩玩,当然客户

docker下编译mangoszero WOW60级服务端(二)

开始搭建基于docker的mangoszero WOW服务端,我自己的操作系统是mac os,其他平台操作可以等价替换 1.准备工作 (1) 安装docker,参考docker官方文档,https://www.docker.com,有各种平台的安装教程,mac下可以直接 brew install caskroom/cask/docker (2) 拉取docker官方centos镜像,可使用阿里云hub,https://dev.aliyun.com/detail.html?spm=5176.197

编译安装zabbix服务端时遇到的问题

前面在编译安装zabbix时,遇到了不少的问题,通过百度已经解决了,问题如下 在编译时遇到的问题: 问题一:configure: error: unixODBC library not found 解决方法:yum install unixODBC-devel -y 问题二:configure: error: Invalid Net-SNMP directory - unable to find net-snmp-config 解决方法:yum install net-snmp-devel -y

使用Zabbix服务端本地邮箱账号发送报警邮件的部署记录

邮件报警有两种情况:1)Zabbix服务端只是单纯的发送报警邮件到指定邮箱,发送报警邮件的这个邮箱账号是Zabbix服务端的本地邮箱账号(例如:[email protected]),只能发送,不能接收外部邮件.2)使用一个可以在互联网上正常收发邮件的邮箱账号(例如:[email protected]),通过在Zabbix服务端中设置,使其能够发送报警邮件到指定邮箱.上面第2中使用外部邮箱发送报警邮件之前已经介绍了:分布式监控系统Zabbix-3.0.3-完整安装记录(5)-邮件报警部署.下面说下

WeText项目的服务端

WeText项目的服务端 在<WeText项目:一个基于.NET实现的DDD.CQRS与微服务架构的演示案例>文章中,我介绍了自己用Visual Studio 2015(C# 6.0 with .NET Framework 4.6.1)开发的DDD/CQRS/微服务架构的案例项目:WeText.文章发出后反响很好,也很感谢大家的关注.在本文中我将介绍如何在Ubuntu 14.04.4 LTS中运行WeText项目的服务端. 为跨平台而生 从一开始的设计,我就把WeText的服务端跨平台纳入了实

服务端模板注入(SSTI攻击)

服务端模板注入 1.模板注入原理 和常见Web注入的成因一样,也是服务端接收了用户的输入,将其作为 Web 应用模板内容的一部分,在进行目标编译渲染的过程中,执行了用户插入的恶意内容,因而可能导致了敏感信息泄露.代码执行.GetShell 等问题.其影响范围主要取决于模版引擎的复杂性. <?php require_once dirname(__FILE__).'/../lib/Twig/Autoloader.php'; Twig_Autoloader::register(true); $twig

DatagramSocket客户端与服务端Java实例

1 import java.io.IOException; 2 import java.net.DatagramPacket; 3 import java.net.DatagramSocket; 4 import java.net.InetAddress; 5 6 public class TimeClient_UDP{ 7 public static void main(String args[]) throws IOException{ 8 String host = "localhost&

服务端软件的服务品质

Web服务端软件的服务品质概要 软件品质概述 提供同样功能.产品和服务的服务者中, 竞争力来自功能的多样化和服务品质的差异化, 无论是个体.企业还是国家. 这里的服务指功能.产品的实现程度和处理能力,以及研发/客服提供的技术支持程度(7*24, 随时响应, 沟通便捷,快速解决,温馨提示,有效指南等). 从某种意义来说, 一切皆服务. 功能和产品只是形式, 服务才是本质.服务响应某种需求从而具备存在价值.个体.企业为社会提供某种类型.某种程度的服务,并获得相应回报. 程序员提供的服务是,在特定的工