第一篇:H85双机切换问题总结
两台H85做的双机,业务在备节点上运行,双机不能正常切换
备节点上mail中有SRN 42521的报警,查看有关SSA的资料,上面解释是由于fast-write cache option card failed造成的,cache中的数据已经丢失,和这个ssa卡相连的disk都不能被识别了,处于offline状态(系统中的状态是free)
当时双机不能切换,我在想备节点上做些操作应该没什么影响,现实说明当时我是错的。于事按黄哥给我的步骤在备节点上执行如下步骤:
1,首先确定是由于cache_error操作引起的问题:
ssaraid-l ssa0-Iz-state=cache_data_error;这个时候系统输出损坏的raid组信息,如下:2327340C228635K2327340C228635Kwrong_cache 36.4GB Raid-5 array
2,强制禁止fastwrite属性关闭,如下命令:
ssaraid-l ssa0-H-n 2327340C228635K-a fastwrite=off-a force=yes-u
3,重新创建丢失的磁盘
ssaraid-l ssa0-H-n 2327340C228635K-a use=syestem-K hdisk2-d
此时输出hdisk2 available的信息,表明hdisk2磁盘恢复成功,hdisk3同上.执行些完这些之后,主节点上的业务停了,在备节点上手动起来业务了(由于当时属于下班时间了,客户的应用只在白天用,所以就让我在那折腾,现在想起来还是一身冷汗,兄弟们引以为戒啊,老大要放过我啊,黄哥也别骂我啊)。
前几天才发现黄哥给我的SSA资料上有这个问题的描述,具体讲得就是如果在双机上执行关闭或打开enable fast-write cache功能的话,都必须要在另外一个节点上把认到的共享逻辑卷删除,再重新cfgmgr一遍。也不用把卷组export出去,直接重新扫描之后就会把共享的逻辑卷添加到原先的卷组中,这个当时也让我纳闷了一下,删掉之后还能自动认到以前属于的卷组。。后来想到,这个共享的卷组只是在主节点上删掉了在其odm库中的定义,并没有共享的逻辑卷上面的信息抹掉,上面的PVID和VGID应该还存在,重新扫描之后应该能自动添加到以前的卷组中。同步双机,没有报错。起双机,然后能够正常切换。。
兄弟们一定要注意啊,遇到类似的问题千万别像我一样,步骤都想好执行后的后果会是怎么样的,有什么影响。。最后希望各位兄弟干活一帆风顺。。手感倍儿棒,运气倍儿好。。
这是做之前我发给客户的,虽然当时不明白具体的原因,但是这样做也是正确的。。
(1)做好数据以及系统备份,并保证备份的可恢复性
(2)怀疑双机信息不同步
(3)停双机及业务
(3)exportvg 把共享卷组导出
(4)在主节点上把7133所认到的逻辑卷hdisk2~5删除
(5)cfgmgr –v重新扫描设备
(6)importvg 把共享卷组导进系统
(7)smitty hacmp同步双机信息
(8)起双机及业务,查看双机及业务运行状态
(9)切换测试,把双机切换到主节点,测试是否成功。
第二篇:空调双机切换智能切换功能实现方案
开拓者 kitozer
空调双机切换功能实现方案
一、概述...........................................................................................................................................2
二、空调双机切换器介绍.............................................................................................................2 2.1、产品介绍.........................................................................................................................2 2.2、产品特点..........................................................................................................................2 2.3、产品的技术参数.............................................................................................................3 2.4、产品的图片.....................................................................................................................4
三、主要的功能特点.....................................................................................................................4
1、在线检测:.......................................................................................................................4
2、定时切换:.......................................................................................................................4
3、温控切换:.......................................................................................................................4
4、组合模式(温控+定时)切换:...................................................................................5
4、故障切换:.......................................................................................................................5
5、维护设置功能:...............................................................................................................5
6、具有断电来电或异常停机自启动功能:.......................................................................5
7、联网功能报警.....................................................................................................................5
8、安装简便:.........................................................................................................................5
9、优势.....................................................................................................................................5
六、综合使用...................................................................................................................................6 开拓者 kitozer
一、概述
绝大多数机房都配有不间断电源UPS或电池组。这些UPS或电池组保证机房里面的计算机及网络、通讯等设备在外界电网断电时能正常运行二个小时以上。但一般情况下,空调机却没有这样“幸运”。一旦遇到停电,空调机即停止工作。即使在短时间内恢复供电,一般的空调机都不会自动启动。这时,机房的温度会逐步升高,如没有工作人员及时发现并立即处理的话,轻则导致昂贵的设备容易损坏,重则导致火患!——这是一个安全生产的大问题!
二、空调双机切换器介绍
2.1、产品介绍
空调切换器是一种智能空调控制器,可对空调的运行状态进行检控,按照预先设定好的空调运行,关机以及组合行为进行控制,并具有来电自动启动功能,已达到保护设备,节能降耗,提高机房管理效率,延长空调使用寿命的目的。本产品广泛适用于民用、中小机房、通信站、UPS机房中的各类各品牌的柜式。主要用于两台空调的切换控制。
2.2、产品特点
可用于设置两台空调的高温及低温预警,低温预警,就是空调温度传感器检测到的温度小于设定的值是,两台空调同时关闭。高温预警,就是空调温度传感器检测到的温度大于设定的值,两台空调同时打 开拓者 kitozer 开。当使用模式4时,温度处于低温及高温预警之间,两台空调正常切换。可设置1分钟至24小时之间任意的切换时间。
1、供电恢复后,延时自启动空调机。
2、具备记忆功能,开启空调到用户需要的温度、模式、风量。
3、不需要拆开空调修改电路,即插即用。
4、带电流检测功能,空调异常停机(非停电、电压闪断等),自动开机。(区别于市面简单功 能的空调启动器,只在“自身”断电再来电后 发开机命令,无法确认空调是否开启成功)。
5、空调异常停机,自动尝试开机5次,5次开机不成功,发出报警信号。
2.3、产品的技术参数 工作电源: 220V±20% AC 50Hz 功耗:<5w 外形尺寸:13.0×9.0×3.0(cm)重量:≈0.4(kg)红外线载波频率:38KHz 安装方式:壁挂式(葫芦孔),已标配安装螺钉。
主机检测(标配2米)、发射配线(1米)及其RJ11接头完整标配,即插即用。开拓者 kitozer 2.4、产品的图片
三、主要的功能特点
1、在线检测:
实时监视参与控制的空调机的运行状态,面板指示灯标示其运行/故障状态。
2、定时切换:
两台空调机根据预先设置好的切换周期轮流运行,切换周期:2、4、8、12、24、48小时;(可按客户特别要求定制)。
3、温控切换:
根据室内温度确定投入运行的空调机台数。
开拓者 kitozer
4、组合模式(温控+定时)切换:
温度优先,在满足设定温度条件下,定时切换。
4、故障切换:
当某台空调机在运行过程中出现故障时,该空调自动退出循环,控制器在30秒内自动启动其它待机状态的空调,并输出报警。
5、维护设置功能:
可随时选择某台空调参与或不参与切换,此功能可保持某台空调常开或常关,而不影响切换功能。
6、具有断电来电或异常停机自启动功能:
当空调机出现故障或停电时,空调机停机;故障消除或重新来电后,控制空调机按设定的规则重新启动,不需要人工干预。独特优点:所有的逻辑开机动作,可开启至用户需要的温度及制冷模式。
7、联网功能报警
可与动力环境监控系统联网,空调切换失败,某台空调开启或关闭不成功,输出报警信号。(可选配我公司其它配件组成声光报警或拨打电话报警)。
8、安装简便:
单相插座输入型空调,安装简单,不需要拆卸空调即可完成安装。三相空调只需要在配电处加装标配简单组件即可完成安装。
9、优势
与市面其它简单功能空调切换器相比我们的优势特点:(1)AC03D安装简单,不需要与空调控制板焊接等改动空调操作;(2)AC03D能开 开拓者 kitozer 启空调到客户需要的温度、制冷模式、风量等。
四、综合使用
智能双切,是综合十多年的开发经验,加入了智能化数码芯片后推出的第五代产品,在稳定和节能方面 都得到了大幅度的提升。莱安智能双切在保证机房温度的基础上,一年能为每个机房节约一千度电。莱安空调双机切换器是一种通用型智能控制器, 能监测两台空调机的运行状态, 按照预先设置好的程序控制两台空调机的运行和停机。同时也可以大幅度降低开机频率,保护压缩机防止油温过高而烧毁,从而提高机器寿命,降低耗电量。应用于各种品牌的空调,尤适用于无人监控的机房。
莱安空调双机切换器集多个功能于一体:来电自启动、定时切换、故障切换、温控切换等;且安装使用方便,不需要接线,不需要拆开空调修改电路,用遥控器即可以控制.开拓者 kitozer 广州莱安智能化系统开发有限公司成立于是2002年,专业从事数字网络视频监控系统、智能视频分析、机房动力环境监控、机房建设、雷达测速、闯红灯电子警察抓拍、电子治安卡口、智能控制等智能化系统开发的大型综合型企业,欢迎来电洽谈业务!
第三篇:MFC视图切换全总结
MFC视图切换全总结
交流的朋友请加我QQ:451072182 我的百度空间:http://hi.baidu.com/%BB%B6stephen/home 单纯视图之间的切换
单文档多视图切换是我在学习MFC中遇到的一个老大难问题,在今天总算是一一破解了。我觉得视图切换分为三个等级,第一是在未切分窗格的情况下切换视图类;第二是在分割窗格的一个窗格内实行视图切换;第三是在分割窗格和未分割之间的切换和视图切换。
在MFC创建SDI的伊始,MFC默认的视图类是CView,如果CView满足你的需求,可以直接单击finish,如果你不想让CView成为你的默认视图类,你可以在下图这个地方修改。
如果你忘记了修改默认的视图类这也没关系,我们可以在代码中改变: 在App类里面有个函数叫InitInstance(),在这里面有一段代码
CSingleDocTemplate* pDocTemplate;
pDocTemplate = new CSingleDocTemplate(IDR_MAINFRAME,RUNTIME_CLASS(Cprogram8Doc),RUNTIME_CLASS(CMainFrame),RUNTIME_CLASS(CView1));
//这里更改你的默认视图类,注意不要忘记包含头文件哦
if(!pDocTemplate)
return FALSE;
AddDocTemplate(pDocTemplate);
说完了默认视图类的更改,我们现在进入主题。
1、首先创建你需要切换的视图类,AddClass进入或者创建一个控件然后AddClass创建控件关联类,后者适用于Form之类的控件。
2、控制之处,比如菜单项单击、单击鼠标什么的,我是使用菜单项来切换窗口的
void CMainFrame::OnView1(){
// TODO: Add your command handler code here
SwitchToForm(IDD_FORMVIEW1);}
void CMainFrame::OnView2(){
// TODO: Add your command handler code here
SwitchToForm(IDD_FORMVIEW2);}
3、SwitchToForm这个函数主要用于视图切换 在这个函数中主要做以下几个动作:
1、获得当前视图类指针和需要转换的视图类指针,如果是第一次使用需要New一个,并且与文档类关联;
2、改变活动视图;
3、显示新视图和隐藏旧视图;
4、设置控件ID;
5、调整框架视图。
void CMainFrame::SwitchToForm(int nForm){
CView *pOldActiveView=GetActiveView();
//1
CView *pNewActiveView=(CView*)GetDlgItem(nForm);
if(NULL==pNewActiveView)
{
switch(nForm)
{
case IDD_FORMVIEW1:
pNewActiveView=(CView*)new CView1;
break;
case IDD_FORMVIEW2:
pNewActiveView=(CView*)new CView2;
break;
case IDD_FORMVIEW3:
pNewActiveView=(CView*)new CView3;
break;
case IDD_FORMVIEW4:
pNewActiveView=(CView*)new CView4;
break;
default:
break;
}
CCreateContext context;
context.m_pCurrentDoc=pOldActiveView->GetDocument();
pNewActiveView->Create(NULL,NULL,WS_CHILD | WS_BORDER,CFrameWnd::rectDefault,this,nForm,&context);
pNewActiveView->UpdateData();
}
SetActiveView(pNewActiveView);
//2
pNewActiveView->ShowWindow(SW_SHOW);
//
3pOldActiveView->ShowWindow(SW_HIDE);
if(pOldActiveView->GetRuntimeClass()==RUNTIME_CLASS(CView1))
//4
pOldActiveView->SetDlgCtrlID(IDD_FORMVIEW1);
else if(pOldActiveView->GetRuntimeClass()==RUNTIME_CLASS(CView2))
pOldActiveView->SetDlgCtrlID(IDD_FORMVIEW2);
else if(pOldActiveView->GetRuntimeClass()==RUNTIME_CLASS(CView3))
pOldActiveView->SetDlgCtrlID(IDD_FORMVIEW3);
else if(pOldActiveView->GetRuntimeClass()==RUNTIME_CLASS(CView4))
pOldActiveView->SetDlgCtrlID(IDD_FORMVIEW4);
pNewActiveView->SetDlgCtrlID(AFX_IDW_PANE_FIRST);
RecalcLayout();//5 }
在看网上其他人的帖子的时候发现在RecalcLayout();前面还要加一句delete pOldActiveView;我自己觉得这样有些浪费资源,视图类创建完成了隐藏起来,用的时候重新显示。这样的方法应该比每次使用都要创建好一些。小弟不才,有讨论的朋友可以联系我。带有分割窗格的视图切换
切换视图第二层就是带有分割窗格的视图切换
分割窗格的视图切换,我觉得难点是不容易在有限区域进行视图切换。
1、首先分割窗格,这里我不多解释,详情看下面链接;
2、再给每个视图一个唯一的ID号;
m_splitter.CreateStatic(this,1,2);
m_splitter.CreateView(0,0,RUNTIME_CLASS(CTree1),CSize(100,100),pContext);
m_splitter.CreateView(0,1,RUNTIME_CLASS(CForm1),CSize(100,100),pContext);
CWnd *pWnd=m_splitter.GetPane(0,1);
m_pViews[0]=(CView*)m_splitter.GetPane(0,1);
pWnd->SetDlgCtrlID(IDD_FORM1);
pWnd->ShowWindow(SW_HIDE);
m_splitter.CreateView(0,1,RUNTIME_CLASS(CForm2),CSize(100,100),pContext);
pWnd=m_splitter.GetPane(0,1);
m_pViews[1]=(CView*)m_splitter.GetPane(0,1);
pWnd->SetDlgCtrlID(m_splitter.IdFromRowCol(0,1));
pWnd->ShowWindow(SW_SHOW);
RedrawWindow();
return true;
注:我这里CreateView一个新视图,就覆盖掉前一个视图,最终显示的是最后一个视图,前面的视图只是隐藏起来,等到使用的时候显示出来就好了。返回值要覆盖返回到基类的语句
return CFrameWndEx::OnCreateClient(lpcs, pContext);将这句话注解,然后return true;
3、在哪里激活切换功能自己设计,我使用的是菜单;
4、响应主要包括下面几个步骤:
1、首先获得窗格中的当前视图;
2、使用IsKindOf判断这个类是否是将要切换到的类;
3、获得框架长宽和窗格长宽;
CView *pView=(CView*)m_splitter.GetPane(0,1);
//1
m_bTest=pView->IsKindOf(RUNTIME_CLASS(CForm2));
//
2CRect rcFrame,rcClient;
//3
m_splitter.GetClientRect(&rcClient);
GetClientRect(&rcFrame);
上面的全部是准备工作,下面才是真正的切换;
4、删除原有视图
5、创建当前视图
6、调整框架
if(m_bTest)
{
m_splitter.DeleteView(0,1);
m_splitter.CreateView(0,1,RUNTIME_CLASS(CForm1),CSize(rcClient.Width(),rcFrame.Height()),NULL);
m_splitter.RecalcLayout();
}
else
{
m_splitter.DeleteView(0,1);
m_splitter.CreateView(0,1,RUNTIME_CLASS(CForm2),CSize(rcClient.Width(),rcFrame.Height()),NULL);
m_splitter.RecalcLayout();
}
仔细一看,貌似这个还要比单纯视图切换还要简单一些,这也没办法,CSplitterWnd提供了这么一个便捷的方法。
带分割视图与未分割视图之间的切换
这个是三部曲中我认为最难的,并不是说程序有多么难,只是想到这个切分方式真的不容易,今天就把这三部曲的最后一曲分享给大家,也为互联网做一点贡献。
首先说一下程序的思想,为分割窗口层专门独立创建一个基于CFrameWnd的类,然后在这里面写分割视图的代码,再与其他未分割的视图类进行切换。
下面我们来看一下实现的过程:
1、创建一个基于CFrameWnd的派生类CSplitterFrame;
2、添加要填充分割窗口的视图类和与分割视图切换的视图类;
3、为这个派生类重载OnCreateClient函数,构造分割视图
m_Splitter.CreateStatic(this,1,2);
m_Splitter.CreateView(0,0,RUNTIME_CLASS(CLeftTree),CSize(300,0),pContext);
m_Splitter.CreateView(0,1,RUNTIME_CLASS(CRightList),CSize(300,0),pContext);return true;这里我不解释了,想必大家都很熟悉了,这里我要说一点我自己犯过的错误。我本来想在这里GetClientRect获得窗口大小,但失败了,左思右想不明白,后来才发现,这又不是CMainFrame,所以根本不能获得,要是用API函数。
4、在CMainFrame类里面添加框架和视图类指针变量
CSplitterFrame *m_pSplitterFrame;
//分割视图框架指针
CView *m_pView;
//单独视图类,基于CView类
CView *m_pForm;
//单独视图类,基于CFormView类
int m_nCurrentID;
//记录当前视图
5、在CMainFrame类里面重载OnCreateClient函数,创建视图及分割框架
CRect rcClient;GetClientRect(&rcClient);m_pView=new CViewShow;m_pView->Create(NULL,NULL,AFX_WS_DEFAULT_VIEW &~WS_BORDER,rcClient,this,NULL,pContext);m_pView->ShowWindow(SW_SHOW);m_pView->SetDlgCtrlID(AFX_IDW_PANE_FIRST);pContext->m_pNewViewClass=(CRuntimeClass*)m_pView;
//设置默认视图类
m_pForm=new CFormShow;m_pForm->Create(NULL,NULL,AFX_WS_DEFAULT_VIEW &~WS_BORDER,rcClient,this,IDD_FORMSHOW,pContext);m_pForm->ShowWindow(SW_HIDE);m_pSplitterFrame=new CSplitterFrame;m_pSplitterFrame->Create(NULL,NULL,AFX_WS_DEFAULT_VIEW &~WS_BORDER,rcClient,this,NULL,0,pContext);m_pSplitterFrame->ShowWindow(SW_HIDE);return true;
6、创建视图切换函数
bool CMainFrame::Switch(int nID){ if(nID==m_nCurrentID)
return false;switch(nID){ case IDD_FORMSHOW:
m_pForm->ShowWindow(SW_SHOW);
m_pForm->SetDlgCtrlID(AFX_IDW_PANE_FIRST);
m_pView->ShowWindow(SW_HIDE);
m_pView->SetDlgCtrlID(AFX_IDW_PANE_FIRST+2);
m_pSplitterFrame->ShowWindow(SW_HIDE);
m_pSplitterFrame->SetDlgCtrlID(AFX_IDW_PANE_FIRST+1);
m_nCurrentID=IDD_FORMSHOW;
break;case AFX_IDW_PANE_FIRST+1:
m_pSplitterFrame->ShowWindow(SW_SHOW);
m_pSplitterFrame->SetDlgCtrlID(AFX_IDW_PANE_FIRST);
m_pForm->ShowWindow(SW_HIDE);
m_pForm->SetDlgCtrlID(IDD_FORMSHOW);
m_pView->ShowWindow(SW_HIDE);
m_pView->SetDlgCtrlID(AFX_IDW_PANE_FIRST+2);
m_nCurrentID=AFX_IDW_PANE_FIRST+1;
break;case AFX_IDW_PANE_FIRST+2:
m_pView->ShowWindow(SW_SHOW);
m_pView->SetDlgCtrlID(AFX_IDW_PANE_FIRST);
m_pForm->ShowWindow(SW_HIDE);
m_pForm->SetDlgCtrlID(IDD_FORMSHOW);
m_pSplitterFrame->ShowWindow(SW_HIDE);
m_pSplitterFrame->SetDlgCtrlID(AFX_IDW_PANE_FIRST+1);
m_nCurrentID=AFX_IDW_PANE_FIRST+2;
break;default:
break;} RecalcLayout();return true;}
7、创建调用方法
void CMainFrame::OnForm(){ // TODO: Add your command handler code here Switch(IDD_FORMSHOW);} void CMainFrame::OnView(){ // TODO: Add your command handler code here Switch(AFX_IDW_PANE_FIRST+2);} void CMainFrame::OnSplitter(){ // TODO: Add your command handler code here Switch(AFX_IDW_PANE_FIRST+1);}
第四篇:CDMA2000 1x切换问题分析开题报告
鹤壁职业技术学院电子信息工程学院
2009级电子信息工程技术专业毕业设计
开 题 报 告
课 题 名 称 : CDMA2000 1x切换问题分析
专
业 :
电子信息工程技术(3G通信技术方向)
班
级 :
09电信班
姓
名 :
洪攀 学 号 :
0903411009 指 导 教 师:
雷军丽
1. 课题的背景及意义
关于 CDMA2000 1x 技术中切换问题的探讨 随着我国移动通信的高速发展, 通信网络的系统性能和服务质量显得尤为重要.移动网络优 化就是通过寻找一系列系统变量的最佳值,优化有关性能指标参数,建设一个覆盖良好,话音清晰, 接通率高的优质蜂窝移动通信系统, 使网络最终在最好的资源利用率下达到一个较高的客户满意度,建成精品网络.目前形势下,加强网络优化,提高网络的运行效率,实现 服务水平,服务质量,经营效率以及竞争能力的提高,已成为发展的必然.对于 CDMA 移动通信系统,网络优化更为重要,这一方面是因为该系统是建立在同频率下 的码分多址系统,解决干扰成为一个重要问题,另一方面它的容量为软容量,所以网络优化 不仅能改善网络的性能和服务质量,还能增加系统的容量.CDMA 系统区别于其它系统的一个重要特点是支持多种类型的切换,主要类型有硬切换, 软切换和更软切换,这个特点在增强 CDMA 功能的同时也保持了呼叫的完整性.这些切换 对网络的性能和质量都有着较大的影响, 因此, 调整和控制这些切换及其参数是网络优化的 一项重要内容.2、课题的主要内容
课题的内容主要包括
1、CDMA2000技术的基本原理。
2、CDMA2000切换的分类,在空闲状态下的空闲切换,接入期间的接入入口切换、接入试探切换和接入切换,呼叫期间的软切换、更软切换、换频切换、同频硬切换、跨系统硬切换。
3、CDMA2000切换中导频信号集的相关概念,包括有效导频集、候选导频集、相邻导频集和剩余导频集。
4、CDMA2000相关的重要切换参数,包括T_ADD(导频切换加门限)、T_DROP(导频最低可用门限)、T_TDROPT_COMP导频比较差值门限SRCH_WIN_A用于搜索激活集和候选集中的导频、SRCH_WIN_N用于搜索相邻集中的导频、SRCH_WIN_R用于搜索剩余集中的导频和仅用于CDMA2000 1x的动态软切换参数,包括SOFT_SLOPE、ADD_INTERCEPT、DROP_INTERCEPT。
5、CDMA2000切换过程中包含的几类消息:导频强度测量消息(PSMM)、(通用的)切换指示消息(UHDM)、切换完成消息(HCM)、邻区列表更新消息(NLU)。
6、CDMA2000切换失败的分析方法,包括切换许可问题、资源分配问题和切换信令问题。CDMA系统性能分析专题之 软切换失败分析 软切换失败是引起掉话的一个主要原因。软切换失败一般与以下几点有关:当服务导频的强度开始衰落,切换信令必须要及时发送,但如果反向链路衰落得太快,PSMM消息就无法被基站接收,导致切换失败。
7、CDMA2000切换失败案例分析的解决方法。一般而言,由于切换是在小区及基站之间发生的,本小区的掉话有可能是因为其与相邻小区之间的切换设置不合理造成的,如果是这种原因应及时修改切换参数;同时我们需要检查小区周围是否有盲区存在,如果是因存在漏覆盖区或盲区而导致的切换掉话,可以通过增加新基站或扩大原有基站的覆盖范围来予以解决;对于因频率设置不合理而造成的掉话可根据实测情况适当修改小区的频率参数;对那些由于话务量不均衡,造成忙时因目标基站无切换信道而产生的掉话,我们可以根据实际话务量的情况,通过修改或增加基站配置或者扩大原有基站的覆盖范围等办法来予以解决。
3、课题的时间安排
阶段
时间
确定课题名称,作好前期准备工作
2011年12月1日——2011年12月15日 分析课题,查阅相关资料
2011年12月16日——2012年2月1日 完善课题内容,汇报中期报告
2012年2月1日——2012年3月31日 整理相关资料,撰写论文
2012年4月1日——2012年5月10日 完善论文内容,准备答辩
4、参考文献
[1] 常永宇,桑林,张欣等.《CDMA 2000-1X网络技术》.第一版.北京:电子工业出版社2005.P185-200 [2]习兆坤.《软切换对CDMA无线子系统的影响与控制》.电信工程技术与标准化.2003年第一期.P45-49 [3] 罗长远,冉崇森.《一种基于移动速率和移动方向的CDMA软切换策略》.电路与系统学报.2002年12月.第7卷第4期.P42-45
[4]华为技术有限公司.CDMA2000 1x无线网络规划与优化.北京:人民邮电出版社,2005 [5]浪为民.CDMA2000标准化进展.广州:移动通信,2006,2 [6]杨大成.CDMA2000 1x移动通信系统.北京:机械工业出版社,2006 [7]吴伟陵,牛凯.移动通信原理.北京:电子工业出版社,2005 [8]张智江,刘申鉴等.CDMA2000 1XEV-DO网络技术.北京:机械工业出版社,2005 [9]李怡滨等.CDMA2000 1x网络规划与优化.北京:人民邮电出版社,2005 [10]BCDI技术论坛:http://forum.bcdi.com.cn/ [11]中国通信网络:http://www.xiexiebang.com/ [12]Vijay K.Garg.第三代移动通信系统原理与工程设计-IS-95 CDMA和CDMA2000.北京:电子工业出版社,2002 [13] Kyoung Il Kim.刘晓宇.杜志敏 CDMA系统设计与优化 2000 [14] 张建辉.毕海.陈勇 CDMA系统小区负荷分析 2003
[15] 张建辉,毕海,陈勇CDMA系统小区负荷分析电信快报2003 [16] 李敏.李荔华 CDMA2000 1X无线网络规划-通信管理与技术2004 [17] 期刊论文 cdma2000 1x及EV-DO的网络容量分析-通信世界B2008
第五篇:双机系统-—— 优缺点分析
双机系统缺点分析
双机方案一般有: 双机热备,双机互备,双机双工 三种方式。
实现方式又分为纯软件方式和共享磁盘柜方式,基于存储共享的双机热备是双机热备的最标准方案,当然这两种实现方式各有优缺点。
双机热备:
从广义上讲,就是对于重要的服务,使用两台服务器,互相备份,共同执行同一服务。当一台服务器出现故障时,可以由另一台服务器承担服务任务,从而在不需要人工干预的情况下,自动保证系统能持续提供服务。双机热备由备用的服务器解决了在主服务器故障时服务不中断的问题。但在实际应用中,可能会出现多台服务器的情况,即服务器集群。
双机热备一般情况下需要有共享的存储设备。但某些情况下也可以使用两台独立的服务器。
从狭义上讲,双机热备特指基于active/standby(活动/待用)方式的服务器热备。服务 器数据包括数据库数据同时往两台或多台服务器写,或者使用一个共享的存储设备。在同一时间内只有一台服务器运行。当其中运行着的一台服务器出现故障无法启动时,另一台备份服务器会通过软件诊测(一般是通过心跳诊断)将备用机器激活,保证应用在短时间内完全恢复正常使用。
下面是典型的双机热备软件PCL HA来看一下双机热备的典型模式: -Active/Active模式
这是目前运用最为广泛的双节点双应用的Active/Active模式。
支撑用户业务的数据库和应用程序在正常状态下分别在两台节点上运行,各自有自己的资源,比如IP地址、磁盘阵列上的卷或者文件系统。当某一方的系统或者资源出现故障时,就会将应用和相关资源切换到对方的节点上。
这种模式的最大优点是不会有服务器的“闲置”,两台服务器在正常情况下都在工作。但如果有故障发生导致切换,应用和数据库将放在同一台服务器上运行,由于服务器的处理能力有可能不能同时满足数据库和应用程序的峰值要求,这将会出现处理能力不够的情况,降低业务响应水平。
-Active/Standby模式
两节点的Active/Standby模式是HA中最简单的一种,两台服务器通过双心跳线路组成一个集群。
PCL为此环境提供了完全冗余的服务器配置。这种模式的优缺点:
缺点:Node2在Node1正常工作时是处于“闲置”状态,造成服务器资源的浪费。
优点:当Node1发生故障时,Node2能完全接管应用,并且能保证应用运行时的对处理能力要求。
-多点集群模式
可以理解为双机热备在技术上的提升。多台服务器可以组成一个集群。根据应用的实际情况,可以灵活地在这些服务器上进行部署,同时可以灵活地设置接管策略。比如,可以由一台服务器作为其他所有服务器的备机,也可以设置多重的接管关系,等等。这样,就可以充分地利用服务器的资源,同时保证系统的高可用性。
双机互备
在双机热备的基础上,两个相对独立的应用在两台机器同时运行,但彼此均设为备机,当某一台服务器出现故障时,另一台服务器可以在短时间内将故障服务器的应 用接管过来,从而保证了应用的持续性。这种方式实际上是双机热备的一种应用。它避免了两个应用使用四台服务器分别实现双机热备,减少服务器使用数量,解决闲置问题。
双机双工
两台或多台服务器均为活动,同时运行相同的应用,保证整体的性能,也实现了负载均衡和互为备份。需要利用磁盘柜存储技术(最好采用san)。对于数据库服务而言,它同时需要数据库软件的支持,是比较复杂的。而WEB服务器或应用服务器就比较简单了。
双机一般就上面三种方案,下面从另一个角度看,前面的方案又可以分为基于共享存储和纯软件的解决方案。
基于共享存储的双机方案
基于存储共享的双机热备是双机热备的的最标准的方案,对于这种方式,采用两台服务器,使用共享的存储设备(磁盘阵列柜或存储区域网SAN)两台服务器可以采用互备、主从、并行等不同的方式。在工作过程中,两台服务器将以一个虚拟的IP地址对外提供服务,依工作方式的不同,将服务请求发送给其中一台服务器承担。同时,服务器通过心跳线(目前往往采用建立私有 网络的方式)侦测另一台服务器的工作状况。当一台服务器出现故障时,另一台服务器根据心跳侦测的情况做出判断,并进行切换,接管服务。对于用户而言,这一过程是全自动的透明的。由于使用共享的存储设备,因此两台服务器使用的实际上是一样的数据,由双机或集群软件对其进行管理。
它的优点是: 对于共享方式,数据库放在共享存储设备上,当一台服务器提供服务时,直接在存储设备上进行读写。当系统切换后另一台服务器也同样读取存储设备上的数据,它可以在无人值守的情况下提供快速的切换,一般情况下不会有数据的丢失。
缺点是:
1.增加了昂贵的存储设备投资,对于有实力的企业,可考虑该方式。
2.存在单点故障的风险,主机故障虽然可以切换接管,但是实际风险从主机转移到了共享磁盘柜上,一旦磁盘阵列故障,会导致整个系统都不能工作,而且没有数据备份,数据永远都无法恢复了!,如果需要数据备份就必须购买其他的数据备份软件来实现。
我们暂假设盘阵质量与主机质量,假设单台PC服务器的可靠性为90%,假设共享磁盘阵列子系统的可靠性为99%,根据条件概率,主备机同时损坏或磁盘阵列柜损坏即双机系统和磁盘阵列子系统同时完好的概率为:
(1-(1-90%)*(1-90%))*99%=98.01%
如果采用了可靠性相对差一些的磁盘阵列,假设可靠性也是90%,则概率为(1-(1-90%)*(1-90%))*90%=89.1%<90%
可见整个系统的可靠性还不如单机运行。而且一旦磁盘阵列故障将是致命性的!
3.有时容易出现阵列坏道与数据丢失,这不是硬盘的原因,而且HA软件兼容性所致
4.主机正常运行时,如果HA软件发生误判,备机一旦发生故障切换,主备机同时对一个数据库进行读写,会导致数据完全损坏,这种情况下的损坏导致的损失是无法估量的,因为无法恢复!
5.设备升级会有兼容性问题
6.只有接管保护,无数据备份,无灾难恢复方案
7.主备机有距离限制,受SCSI电缆的长度限制(光纤通道的磁盘阵列也不受距离限制,但投资会大得多),如果发生火灾,停电等故障时则必须忍受业务停止。
8.管理方便性,每一个双机系统都必须单独管理,不能集中管理
9.无法进行时间点恢复,主机删除数据,就会从磁盘阵列上删除,就无法回退恢复了。
我们的方案可以给用户选择恢复到任意时间点的数据状态。
纯软方式的双机方案:
纯软件的方式,通过镜像软件,将数据可以实时复制到另一台服务器上,这样同样的数据就在两台服务器上各存在一份,如果一台服务器出现故障,可以及时切换到另一台服务器。
纯软的方案有如下缺点:
1.相对与共享存储的方案,成本较低,不需要购买价格高昂的共享磁盘柜,只需要购买镜像同步软件和故障接管软件
2.可靠性相对差一些,数据实时同步是纯软方案的薄弱所在,要完全做到实时的话对主机性能影响会很大。
3.没有事务机制,由于其复制是在文件和磁盘层进行的,复制是否成功不会影响数据库事务操作,另外大型数据库都有很大的缓存,数据不会立刻写进磁盘,如果此时发生故障,数据不会被复制到备机,因此有出现数据不完整不一致的情况,这个存在着相当的风险,有可能导致即时备机接管了,数据库无法使用。
4.每次故障切回后必须重新同步,重新初始化,数据覆盖一遍,这是个比较漫长的过程,数据量超过一百G以上的话可能要十几个小时,这期间机会不能动,严格的说初始化时几乎需要停止任何访问,此时主备机都处于无保护状态,如果此时主机发生故障,主备机数据都是不可用的,此时就没有任何数据可以用来恢复!这是致命的数据丢失。
5.无法恢复到之前的时间点,因为备机只是主机的数据副本,即使主机上误删除了一个文件,备机也会删除此文件,无法恢复。
常见双机软件
LifeKeeper
支持共享磁盘柜方式和纯软件数据同步方式,支持2-16个节点的集群
优点:对卷的管理更胜一筹,深层次监控共享卷和镜像卷,数据同步为基于磁盘级的镜像,并且有锁卷功能,数据不会丢失。适用于多应用层的管理。已通过IBM认证 缺点:安装设置需要一定的技术要求
RoseHA
只支持共享磁盘柜方式,只支持两个节点
优点:界面简易,操作简单,适用于但应用层的管理。
缺点:对卷的管理稍逊,对卷和IP没有监控,对于某些IBM磁盘阵列关机不能切换。
RoseMirrorHA
只支持纯软件数据同步方式,只支持两个节点 优点:界面简易,操作简单。
缺点:同步方式为文件复制,没有锁卷功能,有可能造成数据丢失。
GoldenLife 支持共享磁盘阵列方式,只支持两个节点 优点:界面友好,安装设置简单。缺点:对卷的管理不如lifekeeper。
GoldenLifeMirror
支持数据同步的纯软方式,只支持两个节点 优点:安装操作简单,易于管理。
缺点:同步方式为文件复制,速度较慢。