专利名称:选择传递服务器的负载分配方法
技术领域:
本发明涉及一种信息传递系统和方法,用于积累用户请求要登记的诸如图像数据和语音数据之类的内容,并且响应于另一个用户的传递请求来传递积累的内容。
背景技术:
近来,随着因特网的广泛应用,存在实用的各种信息传递系统,用于积累由用户登记的诸如图像数据和语音数据之类的内容并且响应于另一个用户的传递请求来传递积累的内容。例如,在用于向属于相同组的其他用户显示上载图像的图像公告板系统或者能够在用户之间进行物品的销售和购买的拍卖系统中使用的信息传递系统。
例如,在使用因特网的拍卖系统中,想要销售物品的展示者将物品的图像以及物品的描述上载到拍卖经营者的服务器上。拍卖经营者的服务器向想要知道关于该物品的信息的用户传递存储的图像数据等。因此,想要知道关于展示物品的信息的用户可以查看诸如物品图像之类的信息。
因为这种信息传递系统变得规模较大,需要更多的传递服务器来存储用户登记的内容并且响应于传递请求来传递内容。因此,大规模信息传递系统需要用于在这种传递服务器中尽可能地均衡负载的负载平衡器(负载分配设备)。
作为由这种负载平衡器执行的一种现有技术的负载分配处理方法,例如,在日本专利公开No.10-240697或日本专利公开No.2002-351760中提出的一种负载平衡器,其选择具有当前最小访问次数的传递服务器作为具有最小负载的服务器。
图1示出了这种现有的信息传递系统的示例。现有系统被配置具有信息传递系统90、登记者终端12和经由因特网40与系统相连的用户终端11,如图1所示。现有信息传递系统90被配置具有负载平衡器(负载分配设备)900和多个传递服务器201至203。
此处,为了简化描述,基于向信息传递系统90登记内容的登记者终端12与请求传递在信息传递系统90上登记的内容的用户终端11不同的假定进行描述。然而,登记者终端12与用户终端11可以是相同的终端。
传递服务器201至203存储用户请求要登记的内容,并且响应于另一个用户的传递请求来传递内容。
现有信息传递系统90中的负载平衡器900使用并行或串行分配方法,根据数据大小来登记内容,以便数据大小在传递服务器201至203之间相等。
在这种现有负载平衡方法中,可以执行分配,以便数据大小在传递服务器201至203之间相等。然而,即使执行分配以均衡数据大小,访问传递服务器201至203的次数不一定相等。例如,如果在传递服务器201中存储了集中传递请求的内容,可以想到,与访问传递服务器202和203的次数相比,访问传递服务器201的次数可能非常大。
然而,如果登记内容是例如静止图像等具有较小数据大小的内容,瞬时地执行数据传递,并因此,这只是非常小的事件。然而,如果试图从这种信息传递服务器传递例如运动画面等具有较大数据大小的内容,这会引起严重的问题。
尤其是在试图利用流来传递运动画面时,在再现运动画面的同时继续用户终端和分配服务器之间的会话的建立。因此,如果大量连接请求(会话请求)都是集中于一个内容的,其中存储了该内容的传递服务器可能将关闭。结果,同样不能够访问存储在关闭的传递服务器中的其他内容。
即,在上述信息传递系统中,即使在服务器之间均衡了要存储的数据大小,也不能够实现传递服务器之间的负载均衡。例如,即使著名歌手的音乐音频与个人家庭视频具有相同的数据大小,因为预期的连接请求的数目明显地不同,不能够类似地处理这些内容。然而,在登记之前不可能确定将要对登记内容进行多少次访问,并因此不可能根据内容中所包含的来执行负载分配。
通过准备能够避免故障的硬件资源,即使连接请求集中于例如运动画面的所有登记内容,也可以避免这种故障。然而,如果针对所有登记的内容准备这种硬件资源,大规模信息传递系统需要极大量的设备,并因此这种解决方案是不可行的。
发明内容
本发明的目的是提供一种信息传递系统和方法,即使在传递例如运动画面数据和语音数据等具有较大数据大小的内容时,能够避免连接请求集中于特定传递服务器,并因此传递该内容,而不会引起故障。
在一般的系统服务器的情况下,数据占据的大小与存储容量的比越大,估计的系统服务器负载越大。然而,实际上,传递服务器的负载重要性与要传递的内容大小没有很大的关联,而是基于针对其中存储的内容进行了多少次请求而改变。
例如,在对登记个人家庭视频作为运动画面的情况和登记著名歌手的音乐视频的情况进行比较时,即使它们的数据大小相同,预期的访问运动画面的次数明显地不同。因此,在登记了个人家庭视频作为运动画面的情况下与在登记了著名歌手的音乐视频的情况下加载在传递服务器上的负载明显地不同。
因此,在本发明中,提出了一种方法,用于在考虑到传递服务器登记的内容的实际负载下执行负载分配。
本发明被应用于一种信息传递系统,该系统用于积累用户登记的内容,并且响应于另一个用户的传递请求来传递积累的内容。
为了实现上述目的,本发明的信息传递系统具有多个传递服务器、会话管理数据库和负载分配设备。
多个传递服务器存储用户请求要登记的内容,并且响应于另一个用户的传递请求来传递该内容。
会话管理数据库与每一个传递服务器相关联地存储同时会话最大数目的总和,该总和是在每一个传递服务器中积累的同时会话最大数目的总和值,其中,同时会话最大数目是可同时与登记内容相连的会话的数目。
负载分配设备根据在会话管理数据库中存储的每一个传递服务器的同时会话最大数目的总和,选择用于登记请求要登记的内容的传递服务器。然后负载分配设备将针对该内容设置的同时会话最大数目和与选择作为内容登记目的地的传递服务器相对应的同时会话最大数目的总和相加,以更新会话管理数据库。
根据本发明,负载分配设备适用于根据同时会话最大数目的总和,选择用于登记新近要登记的内容的传递服务器,所述总和是传递服务器登记的内容的同时会话最大数目的总和值,并因此在传递服务器之间均衡了同时会话最大数目的总和值。因此,与根据数据大小来登记内容的情况相比,在传递服务器之间均衡了针对传递服务器进行的连接请求的数目(会话请求的数目),并因此即使在传递较大数据大小的内容时,可以避免连接请求集中于特定传递服务器。结果,根据本发明,可以传递诸如运动画面数据和语音数据之类的具有较大数据大小的内容。
负载分配设备可以被配置具有内容接收单元、服务器选择单元和内容登记单元。
内容接收单元经由因特网接收发送自登记者终端的内容以及关于同时会话最大数目的信息。
服务器选择单元针对在会话管理数据库中存储的每一个传递服务器的同时会话最大数目的总和,选择具有最小的同时会话最大数目的总和的传递服务器作为登记目的地传递服务器。然后服务器选择单元从内容接收单元接收的数据中取出关于同时会话最大数目的信息,并且将取出的同时会话最大数目和与选择作为内容登记目的地的传递服务器相对应的同时会话最大数目相加,以更新会话管理数据库。
内容登记单元将由内容接收单元接收的内容登记到服务器选择单元选择的传递服务器上。
此外,本发明的另一个信息传递系统还可以包括会话历史信息存储数据库,用于存储关于对存储在每一个传递服务器中的内容的实际的连接请求数目的信息,并且负载分配设备还可以包括交换确定单元,用于根据存储在会话历史信息存储数据库中的每一个内容的连接请求的数目,在多个传递服务器之间交换内容,以便在传递服务器之间均衡实际的会话数目。
在本发明中,在会话历史信息存储数据库中记录针对存储在传递服务器中的内容的实际的连接请求数目,并且交换确定单元根据存储在会话历史信息存储数据库中的每一个内容的连接请求的数目,交换内容。因此,在传递服务器之间均衡了实际的连接请求数目,这能够进一步增强系统操作的效率和稳定性。
参考示出了本发明示例的附图,从下面的描述中,本发明的上述及其他目的、特征和优点将变得显而易见。
图1是示出了现有信息传递系统的配置的方框图;图2是示出了本发明第一实施例的信息传递系统的配置的方框图;图3是用于演示要存储在图2所示的会话管理DB 210中的信息的图;图4是示出了图2所示的负载平衡器101的配置的方框图;图5是示出了图2所示的信息传递系统的操作的流程图;图6示出了当指定了同时会话最大数目时要显示在登记者终端12上的屏幕的示例;图7是用于演示当选择了用于登记请求要登记的图像数据的传递服务器时执行的操作的图;图8是用于演示当执行向多个服务器登记的内容的复制时执行的处理的图;图9是示出了本发明的第二实施例的信息传递系统的配置的方框图;以及图10是示出了图9所示的负载平衡器102的配置的方框图。
具体实施例方式
现在参考附图详细描述本发明的实施例。此处,对本发明应用于提供拍卖服务的系统作为信息传递系统示例的情况进行描述。
第一实施例图2是示出了本发明第一实施例的信息传递系统的配置的方框图。在图2中,将相同的参考数字赋予与图1所示相同的组件,并且省略对其的描述。
本实施例的信息传递系统10被配置具有负载平衡器(负载分配设备)101、会话管理DB(数据库)210和传递服务器201至203。
此处,为了简化描述,对信息传递系统10具有三个传递服务器201至203的情况进行描述。然而,实际的大规模信息传递系统具有更多个信息传递服务器会话管理DB(数据库)210与传递服务器201至203相关联地存储同时会话最大数目的总和,所述总和是在每一个传递服务器中积累的同时会话最大数目的总和值,其中,同时会话最大数目是可同时与诸如运动画面数据之类的登记内容相连的会话的数目。
此处,同时会话最大数目是允许同时与内容相连的会话数目的上限,并且是由登记该内容的登记者指定的值。即,如果进行多于同时会话最大数目的连接请求,不向与过量相对应的请求传递内容。同时会话最大数目的总和是向相同传递服务器登记的内容的同时会话最大数目的总和值。
图3示出了在会话管理DB 210中存储的同时会话最大数目的总和的示例。图3示出了存储在传递服务器201中的内容的同时会话最大数目的总和是“51”,并且存储在传递服务器202和203中的内容的同时会话最大数目的总和分别是“47”和“58”。如上所述,在会话管理DB 210中,针对每一个传递服务器201至203,存储最大数目同时会话的总和。
负载平衡器101根据存储在会话管理DB 210中的每一个传递服务器201至203的同时会话最大数目的总和,选择用于登记请求要登记的内容的传递服务器,并且将针对内容设置的同时会话最大数目和与选择作为内容登记目的地的传递服务器相对应的同时会话最大数目的总和相加,以更新会话管理DB 210。
接下来,参考图4来描述负载平衡器101的配置。本实施例中的负载平衡器101被配置具有内容接收单元301、服务器选择单元302和内容登记单元303,如图4所示。
内容接收单元301经由因特网40接收发送自登记者终端12的诸如运动画面数据之类的内容以及关于同时会话最大数目的信息。
服务器选择单元302根据存储在会话管理DB 210中的针对每一个传递服务器201至203的同时会话最大数目,选择用于登记内容接收单元301接收的内容的传递服务器。
服务器选择单元302从内容接收单元301接收的数据中取出关于同时会话最大数目的信息,并且将取出的同时会话最大数目和与选择作为内容登记目的地的传递服务器相对应的同时会话最大数目的总和相加,以更新会话管理DB 210。
内容登记单元303将由内容接收单元301接收的内容登记在服务器选择单元302选择作为登记目的地的传递服务器上。
接下来,参考附图来详细描述本实施例的信息传递系统10的操作。图5所示的流程图示出了本实施例的信息传递系统10的操作。
首先,当将要登记的图像数据上载到信息传递系统10的传递服务器时,登记者终端12输入由登记者指定的同时会话最大数目,并且经由因特网40将要登记的图像数据以及指定的同时会话最大数目发送到信息传递系统10(步骤401)。图6示出了当输入同时会话最大数目时要显示在登记者终端12上的屏幕的示例。
图6示出了当登记用于解释向拍卖展示的物品的广告运动画面时要显示的屏幕的示例。在该示例中,作为登记者的展示者在登记广告运动画面之前指定允许多少个用户同时连接会话,并且展示费用基于指定的同时会话最大数目而变化。例如,在图6所示的示例中,当仅允许一个用户同时连接会话时使用费仅为¥100,并且当允许10个用户同时连接会话时使用费为¥300。
然后,负载平衡器101的内容接收单元301接收要登记的图像数据以及同时会话最大数目(步骤402)。当由内容接收单元301接收到要登记的图像数据时,服务器选择单元302从会话管理DB 210读取每一个传递服务器201至203的同时会话最大数目的总和(步骤403),并且选择具有最小的同时会话最大数目总和的传递服务器作为用于登记请求要登记的图像数据的传递服务器(步骤404)。
现在参考图7的示例来描述服务器选择单元302选择要登记图像数据的传递服务器的操作。在图7的示例中,因为同时会话最大数目被设置为“1”的四个内容被登记在传递服务器201上,其同时会话最大数目的总和显示为“4”。因为同时会话最大数目被设置为“5”的一个内容和同时会话最大数目被设置为“1”的两个内容被登记在传递服务器202上,其同时会话最大数目的总和显示为“1”。因为同时会话最大数目被设置为“10”的一个内容被登记在传递服务器203上,其同时会话最大数目的总和显示为“10”。
如果在图7所示的条件中新近请求登记同时会话最大数目被设置为“5”的内容,服务器选择单元302选择具有最小的同时会话最大数目的总和的传递服务器201作为登记目的地传递服务器。
当上述所述由服务器选择单元302选择登记目的地传递服务器时,内容登记单元303将图像数据登记在服务器选择单元302选择的传递服务器上(步骤405)。最后,服务器选择单元302更新存储在会话管理DB 210中的同时会话最大数目的总和(步骤406)。
在以上描述中,当接收到内容登记请求时,服务器选择单元302选择具有最小的同时会话最大数目的总和的传递服务器。然而,如果因为针对该内容指定的同时会话最大数目非常大,而难以将请求要登记的内容分配给单个传递服务器,则可以在如图8所示的方法中执行复制,即将一个内容登记在多个传递服务器上。代替将新登记的内容复制到多个传递服务器,还可以已经登记的内容复制到两个传递服务器以在传递服务器之间均衡同时会最大数目总和。
不仅通过将相同的内容登记到两个传递服务器,还通过根据每一个传递服务器的同时会话最大数目的当前总和来划分指定的同时会话最大数目,来执行复制。例如,在图8所示的示例中,示出了通过将向传递服务器201登记的同时会话最大数目指定为“100”的内容分配到传递服务器201和传递服务器202来执行复制的情况。在该示例中,考虑到传递服务器201和传递服务器202的同时会话最大数目的当前总和,向传递服务器201登记同时会话最大数目指定为“20”的内容,并且向传递服务器202登记同时会话最大数目指定为“80”的内容。
使用用于向两个传递服务器登记相同内容的复制的示例来进行描述。然而,还可以执行用于向三个或更多个传递服务器登记相同内容的复制。
根据本发明,当登记内容时,登记者设置同时连接会话的用户数目的上限,并且按照使传递服务器的同时会话最大数目均衡的方式执行向传递服务器201至203的内容登记。因此,与根据数据大小来登记内容的情况相比,可以使关于传递服务器201至203的会话数目均衡。结果,即使在传递诸如运动画面之类的具有较大数据大小的内容的情况下,均衡了传递服务器上的负载,并因此可以避免诸如由连接请求集中于特定传递服务器而引起的故障等的问题。
因此,仅能够传递例如静止图像的具有较小数据大小的内容的系统变得能够传递例如运动画面的具有较大数据大小的内容。
例如,在将本实施例的信息传递系统10应用于拍卖服务的情况下,展示者考虑到当展示物品时其物品的受欢迎程度,指定同时会话最大数目。因此,拍卖的经营者可以使登记了具有较高访问次数的内容的登记者支付较高的使用费。此外,通过将每一个内容的同时会话最大数目限制低于登记者指定的同时会话最大数目,可以避免诸如由于特定传递服务器上的负载增加而引起的系统故障之类的问题。此外,因为根据指定的同时会话最大数目来确定用于登记请求要登记的内容的传递服务器,可以均衡传递服务器上的负载。
因此,可以传递例如运动画面数据的大规模数据。因此,以前仅能够通过静止图像来描述展示物品的系统能够利用运动画面来更详细地描述物品,从而可以促进拍卖的实用性。
例如,以前仅能够表现从特定方向观看的物品外观的系统能够利用运动画面来表现从所有方向观看的物品的外观,并因此展示者和获胜出价人可以约定细节,例如经常被忽略的擦伤等。因此,减少了展示者和获胜出价人之间的纠纷,并且提高了物品的可靠性,促进了拍卖的使用。
第二实施例接下来,描述本发明的第二实施例的信息传递系统。图9是示出了第二实施例的信息传递系统20的配置的方框图。在图9中,将相同的参考数字赋予与图2所示相同的组件,并且省略对其的描述。
上述图2中第一实施例的信息传递系统10在登记内容时根据指定的同时会话最大数目来选择用于登记的传递服务器。然而,本实施例的信息传递系统20根据实际的连接请求数目(会话请求的数目)来在传递服务器之间交换内容,以进一步提高系统操作的效率和稳定性。
如图9所示,本实施例中的信息传递系统20的配置是其中由负载平衡器102代替负载平衡器101并且新添加了会话历史信息存储DB(数据库)220的图2所示的第一实施例的信息传递系统10的配置。
在会话历史信息存储DB(数据库)220中,存储了关于在每一个传递服务器201至203中存储的每一个内容的实际的连接请求数目的信息。
当请求连接到存储在传递服务器201至203中的内容时,本实施例中的负载平衡器102将连接请求登记到会话历史信息存储DB 220。
接下来,参考图10来描述本实施例中的负载平衡器102的配置。
如图10所示,本实施例中的负载平衡器102被配置具有内容接收单元301、服务器选择单元302、内容登记单元303以及交换确定单元304。在图10中,将相同的参考数字赋予与图4所示相同的组件,并且省略对其的描述。
本实施例中的负载平衡器102的配置是其中添加了交换确定单元304的图4所示的第一实施例的负载平衡器101的配置。
交换确定单元304根据存储在会话历史信息存储DB 220中的每一个内容的实际的连接请求数目,在传递服务器201至203之间交换内容,以便在传递服务器201至203之间均衡会话数目。
在这种情况下,因为如果交换非常大量的数据,延长了系统关闭,执行最小的内容交换以实现最大的效率。
在本实施例中,因为交换确定单元304根据实际的连接数目来交换内容,均衡了传递服务器201至203的实际的连接请求数目,并因此可以预期进一步提高系统操作的效率和稳定性。
并不是执行要由交换确定单元304执行的交换确定算法以严格保持传递服务器201至203之间的均衡,而是在确定传递服务器201至203之间的不平衡等于或大于阈值时执行交换算法。交换算法针对访问次数、访问峰值的时间和日期、在登记之后过去的时间等检查所有内容,针对每一个内容预测将来的连接请求数目,并且确定应该交换哪些内容。
在这种情况下,如果在交换内容时确定通过将一个内容登记到多个传递服务器上可以预期传递服务器之间的更好的均衡,则可以如图8所示地执行复制。
在上述第一和第二实施例中,对本发明被应用于拍卖服务作为信息传递系统的示例的情况进行了描述,其中,信息传递系统用于积累用户登记的图像信息和语音信息并且响应于另一个用户的传递请求来传递积累的图像信息和语音信息。然而,本发明不局限于此,并且可以类似地应用于响应于用户的传递请求来传递图像信息和语音信息的任何信息传递系统。
图2和9所示的第一和第二实施例的信息传递系统10和20分别具有记录介质,其上记录了用于执行上述信息传递方法的程序,尽管在附图中没有显示。记录介质可以是磁盘、半导体存储器或者任意其他的记录介质。从记录介质向信息传递系统10和20的负载平衡器101和102读取程序,以控制负载平衡器101和102的操作。具体地,由负载平衡器101和102中的CPU在程序的控制之下指示负载平衡器101和102的硬件资源执行特定处理,来实现上述处理。
尽管使用特定术语描述了本发明的优选实施例,这些描述仅是为了演示,并且可以理解,在不脱离精神或所附权利要求的情况下可以进行改变和变化。
权利要求
1.一种用于积累用户登记的内容并且响应于另一个用户的传递请求来传递积累内容的信息传递系统;所述信息传递系统包括多个传递服务器,用于存储用户请求要登记的内容,并且响应于另一个用户的传递请求来传递该内容;会话管理数据库,用于与每一个传递服务器相关联地存储同时会话最大数目的总和,该总和是在每一个传递服务器中积累的同时会话最大数目的总和值,同时会话最大数目是可同时与登记内容相连的会话的数目;以及负载分配设备,用于根据在会话管理数据库中存储的每一个传递服务器的同时会话最大数目的总和,选择用于登记请求要登记的内容的传递服务器,以及将针对所述内容设置的同时会话最大数目和与选择作为内容登记目的地的传递服务器相对应的同时会话最大数目的总和相加,以更新会话管理数据库。
2.根据权利要求1所述的信息传递系统,其中,负载分配设备包括内容接收单元,用于经由因特网接收发送自登记者终端的内容以及关于同时会话最大数目的信息;服务器选择单元,用于针对在会话管理数据库中存储的每一个传递服务器的同时会话最大数目的总和,选择具有最小的同时会话最大数目的总和的传递服务器作为登记目的地传递服务器,以及从内容接收单元接收的数据中取出关于同时会话最大数目的信息,并且将取出的同时会话最大数目和与选择作为内容登记目的地的传递服务器相对应的同时会话最大数目相加,以更新会话管理数据库;以及内容登记单元,用于将由内容接收单元接收的内容登记到服务器选择单元选择的传递服务器上。
3.根据权利要求1所述的信息传递系统,还包括会话历史信息存储数据库,用于存储关于对存储在每一个传递服务器中的内容的实际的连接请求数目的信息;其中负载分配设备还包括交换确定单元,用于根据存储在会话历史信息存储数据库中的针对每一个内容的连接请求的数目,在多个传递服务器之间交换内容,以便在传递服务器之间均衡实际的会话数目。
4.根据权利要求2所述的信息传递系统,还包括会话历史信息存储数据库,用于存储关于对存储在每一个传递服务器中的内容的实际的连接请求数目的信息;其中负载分配设备还包括交换确定单元,用于根据存储在会话历史信息存储数据库中的针对每一个内容的连接请求的数目,在多个传递服务器之间交换内容,以便在传递服务器之间均衡实际的会话数目。
5.一种用于积累用户登记的内容并且响应于另一个用户的传递请求来传递积累内容的信息传递方法;所述信息传递方法包括步骤经由因特网接收发送自登记者终端的内容以及关于同时会话最大数目的信息;针对在会话管理数据库中存储的每一个传递服务器的同时会话最大数目的总和,选择具有最小的同时会话最大数目的总和的传递服务器作为登记目的地传递服务器;将接收内容登记到要向其登记内容的选择作为登记目的地的传递服务器;以及将与接收内容相对应的同时会话最大数目和与选择作为内容登记目的地的传递服务器相对应的同时会话最大数目的总和相加,以更新会话管理数据库。
6.根据权利要求5所述的信息传递方法,还包括步骤在会话历史信息存储数据库中存储在每一个传递服务器中存储的内容的实际连接请求数目;以及根据存储在会话历史信息存储数据库中的每一个内容的连接请求数目,在多个传递服务器之间交换内容,以便在传递服务器之间均衡实际的会话数目。
全文摘要
会话管理数据库与每一个传递服务器相关联地存储同时会话最大数目的总和,该总和是在传递服务器中积累的同时会话最大数目的总和值,同时会话最大数目是可同时与登记内容相连的会话的数目。负载平衡器根据在会话管理数据库中存储的每一个传递服务器的同时会话最大数目的总和,选择用于登记请求要登记的内容的传递服务器,以及将针对该内容设置的同时会话最大数目和与选择作为内容登记目的地的传递服务器相对应的同时会话最大数目的总和相加,以更新会话管理数据库。
文档编号G06F9/46GK1848771SQ20061007437
公开日2006年10月18日 申请日期2006年4月14日 优先权日2005年4月14日
发明者上田拓右 申请人:株式会社爱因特广播