关闭

启动或者关闭系统

标签: gemfirestart serverstop server
323人阅读 评论(0) 收藏 举报
分类:

启动或者关闭系统

引入启动和关闭

为了启动和关闭系统可以设计更好的程序,从而可以更快速的启动系统和保护数据。

你需要启动和停止的一些过程,包括服务器和定位器,以及一些gemfire应用(包括客户端)。你使用的这些程序依靠系统的部分配置信息和系统进程之间的依赖性。

使用下面的指南去创建启动和关闭的程序或者手稿,他们的一些指令需要参考143页的shell命令解析。

 

启动系统

启动系统的时候需要跟随特定的步骤指南

启动它们的客户端应用之前,启动服务器分布式系统。在每一个分布式系统中,没个成员的启动都按照下面的步骤:

首先启动locator,看273页的Pivotal Gemfire Locator Processes,例如locator的启动命令。

在程序的其余部分之前启动缓存服务器,除非明确要求其他剩余的程序在启动缓存服务器之前启动。

如果分布式系统使用持久性的复制和非持久行的复制regions,在开启非持久性复制regions之前,你应该并行的启动所有的持久性性复制成员。这样的话,为了其它的后来数据的持久性成员,持久性成员不会延迟它们的启动。

如果要运行一个生产者程序和用户(或者监听者)程序,首先应该启动生产者程序,这样可以保证用户和监听者可以收到生产者的通知和更新。

如果突然开启locator和同等的成员,你可以使用locator-wait-time属性在短时间内启动,这个时间超时允许同等成员在试图加入分布式系统之前等待locators完成启动。如果一个过程被设置成等待locator的完成,将会显示下面的信息。

 

这个进程会睡眠一段时间,当链接成功,并且locator-wait-time设置的时间到了,这个进程才会重新启动。默认情况下locator-wait-time是被设置成0的,意思是这个过程在不能连接locator的情况下启动会抛出一个异常。(这个参数所在的文件(gemfire.properties)位置是:Pivotal_GemFire_810_b50625_Linux/defaultConfigs)。

注意:为了关闭单个进程可以随意的重写默认的超时时间段,这个重写设置必须在成员启动的过程中被指定。(下面会详细介绍)

 

磁盘数据丢失后的启动

丢失Gemfire磁盘数据的信息属于灾难性损失,如果丢失了磁盘存储文件,下一个启动将要被挂起,直到磁盘丢失的数据在线找回。如果系统在启动的时候挂起了,可以使用gfsh,命令中的show missing-disk-store列出丢失的磁盘存储,而且,如果需要,可以撤销丢失的磁盘存储,这样系统就可以得到完全的启动。你必须使用磁盘存储的ID去撤销磁盘存储,有两中命令可以使用:

 

注意:这个gfsh命令需要通过JMX管理节点连接分布式系统。

 

关闭系统

可以通过使用gfsh中的shutdown命令关闭Gemfire系统,也可以使用一次一个的关闭单个成员来关闭Gemfire系统。

 

使用shutdowm命令

如果使用的是持久性复制(成员将数据放到磁盘上),你应该使用gfsh shutdown命令来停止正在运行的系统,这条命令在关闭系统之前会同步持久性划分的regions,可以是分布式系统下次启动更加的高效。

如果可能的话,所有成员的在关闭系统系统同步发生之前都应该是运行的。使用下面的gfsh命令来关闭系统:

Shutdown

默认情况下这条命令仅仅关闭数据节点,如果你想要关闭包括locator在内的所有节点,应该将--include-locators参数指定为true,例如:
    shutdown --include-locators=true

这将会一个接一个的关闭locator,最后会关闭管理的部分。

在一个宽限期之后关闭所有的数据节点,需要对参数time-out进行设置,例如:

shutdown --time-out=true

在一个宽限期之后闭包括locator在内的所有节点,例如:

shutdown --include-locators=true --time-out=true

 

单独的关闭系统成员

如果没有使用持久性的regions,你可以按照启动的相反顺序来关闭每一个成员从而关闭分布式系统。

根据成员的类型来关闭分布式系统成员。例如:通过下面的机制就可以关闭成员.

使用合适的机制来关闭正在分布式系统上运行的所有Gemfire连接的客户端应用。

关闭缓存服务器,可以通过下面的命令进行操作。

Stop server --name=

或者:

Stop server --dir=<server_working_dir>

在265页可以看到关闭服务器的详细介绍。

关闭locator,可以通过下面的命令操作.

Stop locator --name=

或者:

Stop locator --dir=<locator_working_dir>

在265页可以看到关闭locator的详细介绍。

 

选择关闭系统成员的方式

在关闭的过程中Disconnect_wait命令可以为每一个独立的步骤设置最大的时间,如果有的步骤持续的时间大于了指定的值,它将被强制结束。宽限期给的每一个操作,缓存成员花费在关闭上的所有时间的长度依赖于业务的数目,以及Disconnect_wait设置的时间。在关闭的进程中Gemfire会产生如下的信息:

Disconnect listener still running

Disconnect_wait的默认值是1000毫秒。

可以使用下面的命令对Disconnect_wait进行设置:

gfsh>start server --J=-DDistributionManager.DISCONNECT_WAIT=<milliseconds>

每一个进程可以有不同的Disconnect_wait设置。

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:24321次
    • 积分:551
    • 等级:
    • 排名:千里之外
    • 原创:17篇
    • 转载:11篇
    • 译文:13篇
    • 评论:2条
    最新评论