#!/bin/sh
#set -x
log_registry=registry.log
log_node=node.log
config_registry=config.grid
config_node=config.node
config_application=application.xml
tmp=
function usage(){
echo "Usage: ./iceserver.sh ( commands ... )"
echo "commands:"
echo " -r|reg Start the IceGrid Registry"
echo " -n Start the IceGrid Node"
echo " -a|app Deploy the IceGrid Application"
echo " -s Start or Stop the IceGrid Server"
echo " -h|help Help the IceGrid"
echo " -v|version Display the IceGrid Version"
echo "other comands:"
echo " application Manage the IceGrid"
echo " node Manage the IceGrid"
echo " registr Manage the IceGrid"
echo " server Manage the IceGrid"
echo " service Manage the IceGrid"
echo " adapter Manage the IceGrid"
echo " object Manage the IceGrid"
echo " server template Manage the IceGrid"
echo " service template Manage the IceGrid"
exit 1
}
function registry(){
if [ $# != 2 ]; then
echo "No registry config file. Please input $0 $1 registry_config_path"
exit 1
fi
if [ ! -f "$2" ] ; then
echo "$2 does not exist"
exit 1
fi
config_registry=$2
tmp=`ps -ef | grep icegridregistry | wc -l`
if [ $tmp -eq 1 ]; then
if [ ! -f "$log_registry" ]; then
touch "$log_registry"
fi
icegridregistry --Ice.Config\="$config_registry" > "$log_registry" &
else
icegridregistry --Ice.Config\="$config_registry" > "$log_registry"
fi
if [ $? -eq 0 ]; then
echo "Start IceGrid Registry Success"
else
echo "The IceGrid Already Registry"
exit 1
fi
}
function node(){
if [ $# != 2 ]; then
echo "No node config file. Please input $0 $1 node_config_path"
exit 1
fi
if [ ! -f "$2" ] ; then
echo "$2 does not exist"
exit 1
fi
config_node=$2
tmp=`ps -ef | grep icegridnode | wc -l`
if [ $tmp -eq 1 ]; then
if [ ! -f "$log_node" ]; then
touch "$log_node"
fi
icegridnode --Ice.Config\="$config_node" > "$log_node" &
else
echo "The IceGrid Node Already Start"
exit 1
fi
if [ $? -eq 0 ]; then
echo "Start IceGrid Node Start Success"
else
echo "The IceGrid NodeAlready Start"
exit 1
fi
}
function application(){
var_application="application"
if [ $# -gt 1 ]; then
shift
icegridadmin --Ice.Config\="$config_registry" -e "$var_application $1 $2 $3 $4 $5 $6 $7 $8 $9"
exit 1
fi
tmp=`icegridadmin --Ice.Config\="$config_registry" -e "application list"`
if [ X"$tmp" = "X" ]; then
icegridadmin --Ice.Config\="$config_registry" -e "application add $config_application"
echo "Add IceGrid Application Success"
else
icegridadmin --Ice.Config\="$config_registry" -e "application update $config_application"
echo "Update IceGrid Application Success"
fi
}
function server(){
var_server="server"
if [ $# -gt 1 ]; then
if [ "$3" = "all" ]; then
if [ "$2" = "start" ]; then
startall
elif [ "$2" = "stop" ]; then
stopall
fi
exit 1
fi
shift
icegridadmin --Ice.Config\="$config_registry" -e "$var_server $1 $2 $3 $4 $5 $6 $7 $8 $9"
exit 1
fi
tmp=`icegridadmin --Ice.Config\="$config_registry" -e "server list"`
for server_id in $tmp; do
icegridadmin --Ice.Config\="$config_registry" -e "server state $server_id"
if [ $? -eq 0 ]; then
echo "$server_id state success"
else
echo "$server_id state fail"
fi
done
}
function startall(){
tmp=`icegridadmin --Ice.Config\="$config_registry" -e "server list"`
for server_id in $tmp; do
icegridadmin --Ice.Config\="$config_registry" -e "server start $server_id"
if [ $? -eq 0 ]; then
echo "$server_id start success"
else
echo "$server_id start fail"
fi
done
}
function stopall(){
tmp=`icegridadmin --Ice.Config\="$config_registry" -e "server list"`
for server_id in $tmp; do
icegridadmin --Ice.Config\="$config_registry" -e "server stop $server_id"
if [ $? -eq 0 ]; then
echo "$server_id stop success"
else
echo "$server_id stop fail"
fi
done
}
function help(){
if [ $# -eq 1 ]; then
shift
icegridadmin --Ice.Config\="$config_registry" -e "help"
fi
}
function all(){
if [ $# -eq 1 ]; then
icegridadmin --Ice.Config\="$config_registry" -e "$1 help"
fi
if [ $# -gt 1 ]; then
icegridadmin --Ice.Config\="$config_registry" -e "$1 $2 $3 $4 $5 $6 $7 $8 $9"
fi
}
case $1 in
-r|reg)
registry $@
;;
-n)
node $@
;;
-a|app)
application $@
;;
-s)
server $@
;;
-h|help)
help $@
;;
-v|version)
echo "The IceGrid version is 3.4.1"
;;
application|node|registry|server|service|adapter|object)
all $@
;;
*)
usage
;;
esac
exit $?
分享到:
相关推荐
ICE(Internet Communication Engine)中间件是一种高性能、跨平台的分布式计算框架,由ZeroC公司开发。这个技术详细教程涵盖了ICE的各个方面,对于初学者来说,是深入理解和掌握ICE的宝贵资源。下面,我们将深入...
6. 分布式系统开发:理解在使用Ice中间件时,如何组织和管理源代码,以及如何利用构建工具自动化构建过程。 以上知识点对于进行基于Ice的Java开发人员来说至关重要,他们需要熟悉这些工具和技术来提高开发效率和...
本文研究了基于ICE中间件的分布式应用开发,通过介绍中间件的特点,分析了ICE中间件的架构及主要构成,以地面测试人员获取远端被测设备的系统时间为例,介绍了一种基于ICE中间件的分布式应用程序开发过程与方法,并...
ICE是一款高效、灵活且可扩展的中间件,由ZeroC公司开发,旨在简化多语言、跨平台的分布式系统开发。这份资料集合对于开发人员来说尤其宝贵,因为它不仅涵盖了ICE的基本概念和技术原理,还包含了一些实践经验和技术...
Ice中间件,java c++ ,开发框架
ICE(Integration, Communication, and Embedding)中间件是由ZeroC公司开发的一款高性能、跨平台的分布式系统通信框架。它基于Corba(Common Object Request Broker Architecture)理念,但设计更为现代,提供了更...
ICE(Internet Communication Engine)是ZeroC公司开发的一种中间件技术,支持面向对象的消息传递与远端过程调用(RPC)。在分布式系统中,ICE通过抽象、封装网络通信细节,使开发者可以专注于业务逻辑的实现,而...
在这个名为"Zeroc ICE中间件slice2java的ant脚本(v1u0_0)"的资源中,包含了一个Ant构建脚本`slice2java.xml`。Ant是一个基于Java的构建工具,它允许通过XML格式的配置文件来执行任务,如编译、打包、测试等。`...
总的来说,这项研究的核心是利用Zookeeper来实现分布式ICE中间件中IceGrid服务的高可用性改进,其主要贡献在于提供了一种自动化主从切换的解决方案,大大简化了分布式系统中的故障恢复过程,从而提高了系统的整体...
ICE(Internet Communications Engine)是由ZeroC公司开发的一种面向对象的中间件平台,用于构建分布式应用程序。它提供了一套丰富的通信和对象管理服务,使得开发者能够更容易地创建分布式系统。ICE支持多种编程...
文章还介绍了一个使用ICE中间件开发的多机器人协作算法案例。该案例展示了如何利用ICE中间件实现多机器人之间的高效通信和协调,从而实现更复杂的任务执行。通过该案例,可以观察到ICE中间件如何简化多机器人系统的...
ICE(Internet Communications Engine)是由ZeroC公司开发的一款开源中间件系统,它提供了一种高效的面向对象的分布式计算框架。ICE作为一种通用的中间件平台,允许不同语言编写的程序通过网络互相通信和协作。这种...
ZeroC公司的ICE中间件的简单介绍。很好的网络通信中间件。
时下比较流行的强大中间件ICE 当中包括ICE3.2和3.3两个版本,要按照不同的VS版本来安装。 压缩包中已经有详细的教程和使用说明! 遗憾的是要分两个分卷来上传!不好意思。
### ICE分布式中间件开发VS分布式开发之ACE #### ICE分布式中间件概述 ICE(Internet Communications Engine)是一款由ZeroC公司提供的高性能、轻量级的中间件解决方案,它主要用于构建分布式应用程序和服务。ICE...
总结来说,Linux平台下的ICE通信中间件是一个全面的解决方案,通过提供多语言支持、强大的通信机制和易于使用的开发工具,帮助开发者构建高效、可靠和可扩展的分布式系统。这些组件涵盖了开发、运行和管理ICE应用所...
此外,中间件还能够封装复杂的事务处理逻辑,使得开发人员能够更加专注于业务逻辑的实现。 #### 三、ICE中间件技术 ICE(Internet Communication Engine,网络通信引擎)是一种高性能的面向对象中间件平台,由...
手动备份虽然可靠,但耗时且容易遗漏,而通过编写shell脚本实现自动化备份则能极大地提高效率,确保数据的安全性。以下是一些关于如何创建和使用MySQL自动备份shell脚本的详细说明: 首先,我们需要一个能够执行...
### ICE中间件教程知识点梳理 #### 一、ICE概述与结构 **1.1 ICE概述** ICE (Internet Communication Engine) 是一种高性能、可扩展的中间件框架,它为分布式应用程序提供了一种简单而强大的通信机制。ICE支持...