CN1165846C - 提高短消息调度中心消息处理能力的方法 - Google Patents
提高短消息调度中心消息处理能力的方法 Download PDFInfo
- Publication number
- CN1165846C CN1165846C CNB001340301A CN00134030A CN1165846C CN 1165846 C CN1165846 C CN 1165846C CN B001340301 A CNB001340301 A CN B001340301A CN 00134030 A CN00134030 A CN 00134030A CN 1165846 C CN1165846 C CN 1165846C
- Authority
- CN
- China
- Prior art keywords
- short message
- data
- message
- memory
- attribute
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Mobile Radio Communication Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种提高短消息调度中心消息处理能力的方法,其关键是将访问频繁的短消息数据保存于短消息调度中心服务器的内存中,该方法先在系统内存中建立不同属性的数组及对应每个数组的HASH查找表,再将短消息中的定长数据分类存于数组中,变长数据动态分配内存空间保存,当内存中数据的访问率降低或满足某种条件时,再转存到物理磁盘数据库中。使用该方法,可加快数据访问速度,进而大大提高短消息调度中心的消息处理能力。
Description
本发明涉及移动通信短消息处理技术,尤指一种使用内存作为数据库来提高短消息调度中心消息处理能力的方法。
随着移动通信系统的迅猛发展,特别是数字移动通信在国内外市场的主导性拓展,公用陆地移动网(PLMN)上的增值业务要求越来越迫切,短消息服务就是最主要的增值服务之一。短消息服务是无线GSM网上的基本业务,它利用信令链路实现点对点的消息传送,是一种非实时的可靠的信息传递业务。
具体地讲,短消息是利用信令通道传输有限字符信息的一种数据通讯方式,它是一种独立于语音业务的一种基本电信服务,符合欧洲远程通信标准研究所(ETSI)的GSM基本电信业务,即:移动台发起呼叫(MO)业务以及发消息给移动终端(MT)业务。利用短消息,移动台可以采用与普通话音不同的方式通讯,可在通话的同时接收发送短消息。
短消息调度中心的基本功能是提供PLMN网上的短消息服务,即:处理来自PLMN网上的短消息服务请求,保存在调度中心数据库中,并向移动台转发消息,如果暂时不能转发成功,则调度中心暂存该消息,在合适的时候,再次尝试转发。
更进一步地说,短消息调度中心可以处理来自两种途径的短消息:
(1)来自移动台的短消息,其具体处理过程是这样的:移动台向短消息调度中心发送一条MO消息,短消息调度中心接到这条消息后,向被叫移动台或者扩展短消息实体(ESME)下发此消息,如果下发不成功,则保存这条消息在调度中心的数据库中,在合适的时候,再次下发这条消息,直至消息超过生命期或者下发的错误是永久性错误。其中,MO消息的属性包括有效期等。
(2)由ESME向短消息调度中心提交短消息,其处理过程和MO消息的处理基本相同。但,ESME提交的短消息的属性还包括定时属性,即:调度中心先保存所收到的消息,不立即下发,当时间到了消息中设定的下发时间时,才第一次下发此消息。
上面所述的ESME是指具有接收和发送短消息功能的实体,比如:手机、具有接收和发送短消息功能的业务程序等等。
由上述处理过程可以看出,短消息调度中心收到一条短消息后,先将短消息数据存储于调度中心物理磁盘的数据库中,当需要操作数据时,再对数据库进行访问、操作。这就要求短消息调度中心不仅能存储操作数据库,还要有对每个用户的时钟调度能力。由于短消息调度中心需要保存每个用户的用户信息,每个用户的短消息数据,以及对每个用户的时钟调度,因此,在实际应用中系统需要操作数据的访问频率的分布是不平衡的,一些操作频率较低或者对操作响应要求不高的数据,采用这种传统的数据库方式操作可以满足应用的需求。而对那些访问很频繁的数据,如果采用传统的数据库方式操作,需要频繁操作磁盘输入输出(IO),所以速度不会很高,对处理要求很高的应用,又会降低系统的性能。一般对容量为10万用户的系统,处理能力只有100条短消息/秒。可见,当用户量较大时,用传统数据库保存用户数据以及短消息数据的做法无法满足大容量、高处理能力的要求。
有鉴于此,本发明的主要目的在于提供一种提高短消息调度中心消息处理能力的方法,其可加快数据的访问速度,进而提高短消息调度中心的消息处理能力,并增大消息接收的容量。
为达到上述目的,本发明的技术方案具体是这样实现的:
一种提高短消息调度中心消息处理能力的方法,其关键在于,包括短消息存储和短消息转存两个并行过程;
其中,短消息存储过程为:短消息调度中心收到用户终端提交的短消息后,判断当前短消息调度中心服务器的内存中是否存在可用资源,如果存在,则将当前收到的短消息数据以固定格式直接保存于该短消息调度中心服务器的内存中;否则,返回资源不足消息;
短消息转存过程为:短消息调度中心服务器在处理短消息业务过程中,检测当前的短消息是否满足从内存向磁盘转存的条件,如果满足,则将该条短消息的数据转存到物理磁盘数据库中,并释放所占用的内存资源;否则,继续在内存中处理该条短消息。
上述方案中,短消息存储过程中所述将收到的短消息数据以固定格式保存于内存中具体包括:
a.在内存中建立一个以上固定长度的静态数组;
b.建立与步骤a所述每个静态数组对应的HASH查找表;
c.将当前收到的短消息中固定长度的数据存放在静态数组中,同时动态分配内存空间保存短消息中变长的数据。
其中,所述静态数组至少包括短消息属性数组、注册用户信息数组以及短消息实体属性数组。步骤b中所述建立HASH查找表是分别按短消息标识建立短消息属性的HASH查找表,按用户号码建立注册用户信息的HASH查找表,并按用户号码建立短消息实体属性的HASH查找表,保存用户号码和短消息属性信息的关联信息;则步骤c中是将短消息中固定长度的数据按短消息属性或用户号码分别存放在不同的静态数组中。
短消息转存过程中所述从内存向磁盘转存的条件为:当前检测的短消息访问频率降低、或当前检测的短消息满足不再发送的条件。其中,该短消息不再发送的条件是指该短消息的有效期满,或该短消息已经发送成功,或该短消息产生严重或永久性错误。
该方法还进一步包括备份内存数据的步骤。所述的备份为本机备份或异机备份。
由上述方案可以看出,本发明的主要思想就是以内存作为数据库保存消息数据,因为对内存数据的操作要比对物理磁盘操作快得多,但内存空间是有限的,因此,本发明只将频繁访问的数据放置在短消息调度中心系统的内存中,以提高访问速度;而将访问率低的数据或满足某些应用需求的数据仍放在物理磁盘的数据库中。当内存中某数据由于访问次数降低或满足一定条件,无需再保存于内存中时,则将该数据转存到物理磁盘数据库中,同时释放所占用的内存资源。
一般短消息调度中心在处理短消息时,针对每个短消息会抽象出短消息属性、短消息实体属性、注册用户信息三个对象。其中,短消息属性是指用户提交短消息的有关属性,比如:短消息有效期等;注册用户信息是指实际申请了短消息服务的用户的相关属性,比如:可以接收或发送短消息数目的最大、最小值等等;短消息实体属性是注册用户的一个实例,保存了短消息和用户的关系,比如:一个用户接收或发送多条短消息,或是一条短消息发送给多个用户等等信息。
由于短消息属性、短消息实体属性和注册用户信息的长度大小都是固定的,可以采用固定长度的数组保存,因此,短消息调度中心在内存中建立了短消息属性、注册用户信息、短消息实体属性三个固定长度的静态数组,同时,按照短消息标识(ID)建立短消息属性的HASH查找表,按照用户号码建立注册用户信息的HASH查找表,按照用户号码建立短消息实体属性的HASH查找表。当需要访问或删除数据时,先通过HASH查找表找到该数据在数组中的相应位置,然后进行读取、删除等操作;如果需要插入数据,只需找一个可用单元,将所需保存的数据放入数组,并将相应的查找信息放入HASH查找表中,以便日后查寻。而对于短消息中有关短消息内容的变长部分,则采用动态分配内存的技术,在堆中动态分配空间来保存。
由于内存介质在系统出现异常退出,或者服务器掉电等情况时,会丢失全部数据,针对内存数据库的这个问题,可采用一种备份机制,备份内存数据库中数据,当系统出现异常时,能够将内存数据库中数据恢复,以提高内存数据库的可靠性。备份方式有两种:一种是本机备份,一种是异机备份,异机备份方式比本机备份方式的可靠性更高。
综上所述,本发明所提供的提高短消息调度中心消息处理能力的方法,是在内存中建立短消息属性、注册用户信息以及短消息实体属性三个数组,以及与这三个数组对应的HASH查找表,当短消息调度中心接收到一条短消息后,将不同类别的信息数据存在相应的数组中,并在相应的HASH查找表中登记;当需要对该数据操作时,再通过HASH查找表找到该数据进行操作。由于将短消息有关数据保存在内存中,避免了频繁的操作物理磁盘数据库,因此可以加快数据的访问速度,并极大的提高短消息中心的处理能力,满足了大容量、高性能的需求。另外,由于采用备份机制,完全可以保证数据存储的可靠性。
有关本发明的详细说明及技术内容,配合附图说明如下:
图1为数据库的结构示意图。
参见图1所示,短消息调度中心服务器的数据库包括两部分:内存数据库1与物理磁盘数据库2,其中,内存数据库是在服务器的内存中建立了三个固定长度的数组及其对应的HASH查找表,即:短消息属性数组10以及按短消息ID建立的短消息属性HASH查找表11;短消息实体属性数组20以及按用户号码建立的短消息实体属性HASH查找表21;注册用户信息数组30以及按用户号码建立的注册用户信息HASH查找表31。短消息调度中心将频繁访问的数据分类放置在内存数据库1中不同的数组内,以提高访问速度;而将访问率低的数据或满足某些应用需求的数据仍放在物理磁盘的数据库2中;并且,当内存数据库1中的某个数据由于访问次数降低或满足一定条件,比如:某条短消息的有效期已到,不再访问;或者该条短消息已经下发成功,不再访问;或者该条短消息在发送时产生严重或永久性错误等等,无需再存于内存中时,则将该数据转存到物理磁盘数据库2中,同时释放所占用的内存资源。
当用户提交一条短消息给短消息调度中心后,服务器首先检查是否有可用资源,即是否有空的短消息属性数组,如果没有,向用户返回资源不够拒绝的消息;如果有,则从短消息属性数组10中取出一个可用的短消息属性单元,保存用户提交消息中除短消息内容的属性,并将该短消息的ID存入短消息属性HASH查找表11中,同时在堆40中动态分配存放短消息内容的内存空间,保存短消息的内容。然后,认证该条短消息是否能满足鉴权,如果能满足,则接受这条短消息,否则向用户发拒绝消息。最后,查找该短消息实体是否已存在,如果有,则按照短消息实体属性的HASH查找表,在短消息实体属性数组30中找到该条短消息所对应的短消息实体属性,再根据短消息实体属性数组30中所描述的用户与短消息的对应关系对该条短消息进行操作。如果没有,则检查是否有短消息实体属性的可用资源,如果没有,向用户返回资源不够拒绝的消息;如果有,则取一个可用的短消息实体属性数组单元,根据注册用户信息和短消息实体的属性存入相关的短消息实体属性信息,再按照短消息的属性条件和短消息实体的状态对该条短消息进行操作。当短消息结束生命周期以后,将短消息转存到数据库中保存,并将短消息属性单元归还到可用的短消息属性数组中。
在实际应用中,当短消息调度中心采用主频为PIII 450*4、内存512M的服务器时,用原有物理磁盘的数据库技术处理短消息,一般只能支持10万用户,每秒钟处理100条短消息;而采用本发明的内存数据库技术以后,可以支持100万用户,每秒钟处理提交的短消息数可达到1000条,整个短消息调度中心的短消息处理能力是原来的100倍。可见,本发明达到了提高短消息调度中心短消息处理能力的目的,可以满足大容量、高性能的需求。
Claims (10)
1、一种提高短消息调度中心消息处理能力的方法,其特征在于,包括短消息存储和短消息转存两个并行过程;
其中,短消息存储过程为:短消息调度中心收到用户终端提交的短消息后,判断当前短消息调度中心服务器的内存中是否存在可用资源,如果存在,则将当前收到的短消息数据以固定格式直接保存于该短消息调度中心服务器的内存中;否则,返回资源不足消息;
短消息转存过程为:短消息调度中心服务器在处理短消息业务过程中,检测当前的短消息是否满足从内存向磁盘转存的条件,如果满足,则将该条短消息的数据转存到物理磁盘数据库中,并释放所占用的内存资源;否则,继续在内存中处理该条短消息。
2、根据权利要求1所述的方法,其特征在于,短消息存储过程中所述将收到的短消息数据以固定格式保存于内存中具体包括:
a.在内存中建立一个以上固定长度的静态数组;
b.建立与步骤a所述每个静态数组对应的HASH查找表;
c.将当前收到的短消息中固定长度的数据存放在静态数组中,同时动态分配内存空间保存短消息中变长的数据。
3、根据权利要求2所述的方法,其特征在于:所述静态数组至少包括短消息属性数组、注册用户信息数组以及短消息实体属性数组。
4、根据权利要求3所述的方法,其特征在于:步骤b中所述建立HASH查找表是分别按短消息标识建立短消息属性的HASH查找表,按用户号码建立注册用户信息的HASH查找表,并按用户号码建立短消息实体属性的HASH查找表,保存用户号码和短消息属性信息的关联信息;
则步骤c中是将短消息中固定长度的数据按短消息属性或用户号码分别存放在不同的静态数组中。
5、根据权利要求1所述的方法,其特征在于:短消息转存过程中所述从内存向磁盘转存的条件为:当前检测的短消息访问频率降低、或当前检测的短消息满足不再发送的条件。
6、根据权利要求5所述的方法,其特征在于:所述短消息不再发送的条件为该短消息的有效期满。
7、根据权利要求5所述的方法,其特征在于:所述短消息不再发送的条件为该短消息已经发送成功。
8、根据权利要求5所述的方法,其特征在于:所述短消息不再发送的条件为该短消息产生严重或永久性错误。
9、根据权利要求1所述的方法,其特征在于该方法还进一步包括备份内存数据的步骤。
10、根据权利要求9所述的方法,其特征在于:所述的备份为本机备份或异机备份。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB001340301A CN1165846C (zh) | 2000-12-07 | 2000-12-07 | 提高短消息调度中心消息处理能力的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB001340301A CN1165846C (zh) | 2000-12-07 | 2000-12-07 | 提高短消息调度中心消息处理能力的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1357836A CN1357836A (zh) | 2002-07-10 |
CN1165846C true CN1165846C (zh) | 2004-09-08 |
Family
ID=4595982
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB001340301A Expired - Fee Related CN1165846C (zh) | 2000-12-07 | 2000-12-07 | 提高短消息调度中心消息处理能力的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1165846C (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100353325C (zh) * | 2004-08-23 | 2007-12-05 | 华为技术有限公司 | 实现共享内存数据库的方法及内存数据库系统 |
CN100477658C (zh) * | 2005-06-08 | 2009-04-08 | 武汉虹信通信技术有限责任公司 | 通信服务器并发处理大数据量的方法 |
CN100426883C (zh) * | 2006-01-13 | 2008-10-15 | 中山大学 | 医院短信息随访系统及方法 |
CN100385975C (zh) * | 2006-03-24 | 2008-04-30 | 华为技术有限公司 | 短消息调度下发方法 |
CN100466826C (zh) * | 2006-05-19 | 2009-03-04 | 华为技术有限公司 | 一种扩展短消息调度处理方法及系统 |
CN1968447B (zh) * | 2006-11-27 | 2010-11-10 | 华为技术有限公司 | 短消息中心系统及其消息存储及转移方法 |
CN103425700A (zh) * | 2012-05-25 | 2013-12-04 | 中广核(北京)仿真技术有限公司 | 一种核电站模拟机的数据存储、查询及更新方法 |
CN103778180A (zh) * | 2013-11-16 | 2014-05-07 | 大连创达技术交易市场有限公司 | 一种基于Hash的字符串存储方法 |
CN106446169A (zh) * | 2016-09-26 | 2017-02-22 | 上海斐讯数据通信技术有限公司 | 一种终端设备中用户信息的管理方法和装置 |
-
2000
- 2000-12-07 CN CNB001340301A patent/CN1165846C/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN1357836A (zh) | 2002-07-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1269377C (zh) | 移动通信终端的短消息接收方法 | |
CN1192665C (zh) | 处理由移动站通过蜂窝通信网发送给服务器的服务请求的方法、相关的服务器和移动站 | |
EP2134138B1 (en) | Information processing method and system | |
CN1285122A (zh) | 移动通信系统中的在线通知 | |
CN1165846C (zh) | 提高短消息调度中心消息处理能力的方法 | |
CN101883111A (zh) | 一种处理在线业务日志的计费服务器及方法 | |
CN1917510A (zh) | 一种访问通讯录的方法及其通讯录系统 | |
CN1251526C (zh) | 全球移动通信系统终端的短消息业务消息存储方法 | |
CN100440993C (zh) | 一种反馈短信已被处理信息的方法及手机 | |
EP2448226A1 (en) | Mobile phone messages processing method and mobile phone | |
CN1918879B (zh) | 用于状态存储器管理的方法和装置 | |
CN1157909C (zh) | 一种网关和用于控制网关中连接的方法 | |
CN1327355A (zh) | 优化信息存储的方法和实现该方法的终端 | |
CN102378123A (zh) | 临时组的处理方法及集群系统 | |
KR19990060754A (ko) | Pcs에서의 sms 부가 서비스 처리방법 | |
CN1741655A (zh) | 移动通讯终端的数据访问方法 | |
CN101562783B (zh) | 基于行业网关的集团用户彩信群发方法和系统 | |
US20030126220A1 (en) | Quick reply codes for communication of information between electronic devices | |
CN1499880B (zh) | 用于在移动通信终端中存储短消息业务的方法 | |
CN1315342C (zh) | 实现自适应选择信息发送方式的方法 | |
EP2034677B1 (en) | A multimedia message group sending system and the method thereof | |
CN100486366C (zh) | 多媒体消息转换方法、发送方法及系统 | |
KR100205077B1 (ko) | 셀룰라 시스템의 단문서비스 센터 데이타베이스에 대한 단문메세지 삭제 방법 | |
CN105530162A (zh) | 离线消息处理方法及装置 | |
CN101106781A (zh) | 用于移动终端的短消息存储和处理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C06 | Publication | ||
PB01 | Publication | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20040908 Termination date: 20121207 |