JP5495188B2 - Web service providing system, server device, method and program - Google Patents

Web service providing system, server device, method and program Download PDF

Info

Publication number
JP5495188B2
JP5495188B2 JP2010199802A JP2010199802A JP5495188B2 JP 5495188 B2 JP5495188 B2 JP 5495188B2 JP 2010199802 A JP2010199802 A JP 2010199802A JP 2010199802 A JP2010199802 A JP 2010199802A JP 5495188 B2 JP5495188 B2 JP 5495188B2
Authority
JP
Japan
Prior art keywords
web service
address
service providing
server
database
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
Application number
JP2010199802A
Other languages
Japanese (ja)
Other versions
JP2012058898A (en
Inventor
茂樹 大内
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2010199802A priority Critical patent/JP5495188B2/en
Publication of JP2012058898A publication Critical patent/JP2012058898A/en
Application granted granted Critical
Publication of JP5495188B2 publication Critical patent/JP5495188B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Description

本発明は、Webサービス提供システムに関し、より詳細には、複数の独立したWebサービス提供サーバを有するWebサービス提供システムに関する。   The present invention relates to a web service providing system, and more particularly to a web service providing system having a plurality of independent web service providing servers.

近年、SaaS(Software as a Service)と呼ばれるインターネットを介したソフトウェアの新しい利用形態が注目を集めている。従来、ユーザは、ソフトウェアを利用する際、ソフトウェア・パッケージを購入し、これを自身のパーソナル・コンピュータにインストールして利用していた。一方、SaaSにおいては、ソフトウェアは、外部のWebサービス提供業者が管理するWebアプリケーションサーバ上でのみ稼働し、ユーザは、当該Webアプリケーションサーバにインターネット接続されたクライアント端末のウェブブラウザを介してそのソフトウェアの機能を利用する。SaaSによれば、サーバ設置に伴うイニシャルコストおよびその後の保守管理コストが不要となり、また、システム規模の拡大・縮小にも柔軟に対応しうることから、近年、メールやグループウェアなどの業務用アプリケーションをSaaSに切替える企業が増えてきている。   In recent years, a new usage form of software via the Internet called SaaS (Software as a Service) has attracted attention. Conventionally, when a user uses software, the user purchases a software package and installs it on his / her personal computer. On the other hand, in SaaS, software runs only on a web application server managed by an external web service provider, and a user can use the web browser of a client terminal connected to the web application server via the web browser. Use functions. According to SaaS, initial costs associated with server installation and subsequent maintenance and management costs are no longer necessary, and the system scale can be flexibly accommodated for expansion and contraction. More and more companies are switching to SaaS.

しかしながら、SaaSにおいては、データは社内(クライアント側)に残らず、社外のWebサービス提供業者のデータベースにのみ保存されることから、情報漏洩やデータ喪失等のセキュリティリスクを危惧し、その採用を敬遠する企業も少なくない。この点につき、特開2009−70015号公報(特許文献1)は、社外SaaSと同じアプリケーションをインストールしたSaaSサーバを社内に設置し、社内外で共有したいデータについてのみ、社内のデータベースと社外のデータベースを同期させることを特徴とする社内SaaSシステムを開示する。   However, in SaaS, data is not stored in the company (client side) but is stored only in the database of the external Web service provider. Therefore, security risks such as information leakage and data loss are feared and its adoption is avoided. There are many companies. In this regard, Japanese Patent Laid-Open No. 2009-70015 (Patent Document 1) discloses that an SaaS server installed with the same application as that of an external SaaS is installed in the company, and only an internal database and an external database are used for data to be shared inside and outside the company. An in-house SaaS system is disclosed that is characterized by synchronizing the two.

ここで、複数の事業所を有する企業が事業所ごとに社内SaaSシステムを構築する場合を考える。図9は、3つの事業所A〜Cを有する企業に設置された社内SaaSシステム150のネットワーク図を示す。図9に示されるように、各事業所A〜C内にはイントラネット400a〜400cが構築されており、各イントラネット400は、相互に接続されてエクストラネット402を形成している。   Here, a case where a company having a plurality of establishments constructs an in-house SaaS system for each establishment is considered. FIG. 9 shows a network diagram of an in-house SaaS system 150 installed in a company having three offices A to C. As shown in FIG. 9, intranets 400 a to 400 c are constructed in each of the offices A to C, and the intranets 400 are connected to each other to form an extranet 402.

社内SaaSシステム150においては、事業所A、BおよびCに、それぞれ、社内SaaSサーバ250a、250bおよび250cが設置されている。社内SaaSサーバ250a〜250cは、いずれも、各事業所内に構築されたイントラネット400a〜400cを介して複数のユーザ端末と接続可能とされている。   In the in-house SaaS system 150, in-house SaaS servers 250a, 250b, and 250c are installed in the offices A, B, and C, respectively. All of the in-house SaaS servers 250a to 250c can be connected to a plurality of user terminals via intranets 400a to 400c built in each office.

エクストラネット402は、仮想プライベートネットワーク(VPN)やファイアーウォールを利用してセキュアなネットワークとして構築されており、企業内部の情報の機密性を担保している。したがって、ユーザは、機密性の高い情報に関しては、自身が所属する事業所に設置された社内SaaSサーバ250を利用し、社外との情報の共有を希望する情報に関しては、インターネット404を介して接続された外部の社外SaaSサーバ500を利用する。   The extranet 402 is constructed as a secure network using a virtual private network (VPN) or a firewall, and ensures confidentiality of information inside the company. Therefore, the user uses the in-house SaaS server 250 installed at the office to which the user belongs for information with high confidentiality, and the user wishes to share information with the outside via the Internet 404. The external external SaaS server 500 is used.

図9に示した社内SaaSシステム150においては、上述したように、ユーザは、自身が所属する事業所に設置された社内SaaSサーバを利用することが前提となっている。仮に、事業所Aに所属するユーザAが出先の事業所Bにおいて社内SaaSシステムを利用する場合、図10に示すように、ユーザAの端末350aは、ネットワーク的に最も近い事業所Bの社内SaaSサーバ250bと通信するのではなく、エクストラネット402を介して、ネットワーク的に遠い事業所Aの社内SaaSサーバ250aにアクセスしてこれを使用することになる。なぜなら、ユーザAのデータは、事業所Bの社内SaaSサーバ250bのデータベースには保存されておらず、自身の所属する事業所Aの社内SaaSサーバ250aにのみ保存されているからである。このようにネットワーク的に遠いサーバを利用する場合、ユーザは、応答速度が遅くなることを受忍しなければならない。   In the in-house SaaS system 150 shown in FIG. 9, as described above, it is assumed that the user uses an in-house SaaS server installed at a business office to which the user belongs. If the user A who belongs to the office A uses the in-house SaaS system at the office B at the destination, the terminal 350a of the user A is connected to the in-house SaaS of the office B closest to the network as shown in FIG. Instead of communicating with the server 250b, the in-house SaaS server 250a of the office A which is distant from the network is accessed and used via the extranet 402. This is because the data of the user A is not stored in the database of the in-house SaaS server 250b of the office B but is stored only in the in-house SaaS server 250a of the office A to which the user A belongs. When using a server that is far from the network as described above, the user must accept that the response speed becomes slow.

本発明は、上記従来技術における課題に鑑みてなされたものであり、本発明は、複数の独立したSaaSサーバを有する社内SaaSシステムにおいて、ユーザに応答速度に起因するストレスを与えないサービス提供システムを提供することを目的とする。   The present invention has been made in view of the above-described problems in the prior art, and the present invention provides a service providing system that does not give a user stress due to response speed in an in-house SaaS system having a plurality of independent SaaS servers. The purpose is to provide.

本発明者は、複数の独立したSaaSサーバを有する社内SaaSシステムにおいて、ユーザに応答速度に起因するストレスを与えない新規なサービス提供システムにつき鋭意検討した結果、複数の社内SaaSサーバを含むネットワークに対して通信先管理サーバを設ける構成に想到し、本発明に至ったのである。   As a result of earnestly examining a new service providing system that does not give a stress due to a response speed to a user in an in-house SaaS system having a plurality of independent SaaS servers, the present inventor has found that the network includes a plurality of in-house SaaS servers. Thus, the present inventors have conceived a configuration in which a communication destination management server is provided, and have reached the present invention.

本発明における通信先管理サーバは、クライアント端末からのログイン要求に含まれる送信元IPアドレスに基づいて最寄りの社内SaaSサーバのIPアドレスを取得し、当該IPアドレスを再接続先とするリダイレクト処理を送信元のクライアント端末に対して実行することによって、クライアント端末をネットワーク的に最も近い社内SaaSサーバに自動的に接続する。   The communication destination management server in the present invention acquires the IP address of the nearest in-house SaaS server based on the transmission source IP address included in the login request from the client terminal, and transmits the redirect process with the IP address as the reconnection destination. By executing it on the original client terminal, the client terminal is automatically connected to the in-house SaaS server closest to the network.

すなわち、本発明によれば、複数のWebサービス提供サーバと通信先管理サーバとを含むWebサービス提供システムであって、各々の前記Webサービス提供サーバは、互いに独立したイントラネット内に配置され、少なくとも1つのWebサービスをクライアント端末が搭載するウェブブラウザを介して提供するためのサービスアプリケーション部と、前記Webサービスを実行するためのアプリケーションデータを格納する第1のデータベースと、第1のデータ同期部とを含み、前記通信先管理サーバは、前記独立したイントラネットが相互に接続してなるエクストラネットに接続され、各前記イントラネット内でクライアント端末接続用に割り当てられるIPアドレスと該イントラネット内に配置される最寄りの前記Webサービス提供サーバのIPアドレスとを対応付けて管理するサーバアドレス管理部と、クライアント端末の送信元IPアドレスに基づいて前記サーバアドレス管理部を検索して前記最寄りのWebサービス提供サーバのIPアドレスを取得し、該IPアドレスを再接続先とするリダイレクト処理を該クライアント端末に対して実行するリダイレクト部と、複数の前記第1のデータベースの内容を統合するための第2のデータベースと、第2のデータ同期部とを含み、前記第1のデータ同期部は、前記第1のデータベースの内容を前記通信先管理サーバに送信し、前記第2のデータ同期部は、複数の前記第1のデータベースの内容を前記第2のデータベースに統合し、該第2のデータベースと複数の前記第1のデータベースを同期させるWebサービス提供システムが提供される。   That is, according to the present invention, there is provided a Web service providing system including a plurality of Web service providing servers and a communication destination management server, wherein each of the Web service providing servers is arranged in an intranet independent from each other, and at least 1 A service application unit for providing one Web service via a web browser installed in a client terminal, a first database for storing application data for executing the Web service, and a first data synchronization unit The communication destination management server is connected to an extranet in which the independent intranets are connected to each other, and an IP address assigned for connecting a client terminal in each intranet and a nearest address arranged in the intranet Web service A server address management unit that manages the IP address of the providing server in association with the server, and searches the server address management unit based on the source IP address of the client terminal to obtain the IP address of the nearest Web service providing server A redirection unit that executes redirection processing with the IP address as a reconnection destination for the client terminal, a second database for integrating the contents of the plurality of first databases, and second data synchronization The first data synchronization unit transmits the contents of the first database to the communication destination management server, and the second data synchronization unit transmits the contents of the plurality of first databases. A web service that integrates into the second database and synchronizes the second database and the plurality of first databases. Providing system is provided.

本実施形態のWebサービス提供システムのネットワーク図。1 is a network diagram of a Web service providing system according to an embodiment. 本実施形態のWebサービス提供システムを構成する各装置の機能ブロック図。The functional block diagram of each apparatus which comprises the Web service provision system of this embodiment. 本実施形態の最寄りサーバアドレス管理テーブルを示す図。The figure which shows the nearest server address management table of this embodiment. 本実施形態のWebサービス提供システムが実行する処理のシーケンス図。The sequence diagram of the process which the Web service provision system of this embodiment performs. 本実施形態におけるリダイレクト処理を説明するための概念図。The conceptual diagram for demonstrating the redirect process in this embodiment. 本実施形態におけるリダイレクト処理を説明するための概念図。The conceptual diagram for demonstrating the redirect process in this embodiment. 複数の社内SaaSサーバ間のデータ同期方法を説明するための概念図。The conceptual diagram for demonstrating the data synchronization method between several internal SaaS servers. 複数の社内SaaSサーバ間のデータ同期方法を説明するための概念図。The conceptual diagram for demonstrating the data synchronization method between several internal SaaS servers. 従来の社内SaaSシステムのネットワーク図。The network figure of the conventional in-house SaaS system. 従来の社内SaaSシステムのネットワーク図。The network figure of the conventional in-house SaaS system.

以下、本発明を、実施形態をもって説明するが、本発明は後述する実施形態に限定されるものではない。なお、以下に参照する各図においては、共通する要素について同じ符号を用い、適宜、その説明を省略するものとする。   Hereinafter, although this invention is demonstrated with embodiment, this invention is not limited to embodiment mentioned later. In the drawings referred to below, the same reference numerals are used for common elements, and the description thereof is omitted as appropriate.

図1は、本発明の実施形態であるWebサービス提供システム10のネットワーク図を示す。図1は、3つの事業所A〜Cを有する企業に本実施形態のWebサービス提供システム10を適用した場合について例示している。図1に示すように、本実施形態のWebサービス提供システム10は、通信先管理サーバ100と、複数のWebサービス提供サーバ200(以下、社内SaaSサーバ200として参照する)を含んで構成されている。本実施形態においては、事業所ごとに独立したイントラネット400が構築されており、各事業所に1台ずつ設置された社内SaaSサーバ200は、イントラネット400を介してクライアント端末300と接続可能に構成されている。本実施形態においては、各事業所のイントラネット400は、クライアント端末接続用に所定範囲のプライベートIPアドレスを割り当てている。なお、当該プライベートIPアドレスは、全事業所を通して一意に割り当てられる。   FIG. 1 shows a network diagram of a Web service providing system 10 according to an embodiment of the present invention. FIG. 1 illustrates a case where the Web service providing system 10 of this embodiment is applied to a company having three offices A to C. As shown in FIG. 1, the Web service providing system 10 of this embodiment includes a communication destination management server 100 and a plurality of Web service providing servers 200 (hereinafter referred to as an in-house SaaS server 200). . In this embodiment, an independent intranet 400 is constructed for each business office, and the in-house SaaS server 200 installed at each business office is configured to be connectable to the client terminal 300 via the intranet 400. ing. In this embodiment, the intranet 400 of each business office is assigned a predetermined range of private IP addresses for client terminal connection. The private IP address is uniquely assigned through all offices.

さらに、各事業所内に構築されたイントラネット400は、相互に接続されてエクストラネット402を形成しており、本実施形態における通信先管理サーバ100は、エクストラネット402を介して各事業所A〜Cの外部に設置されている。   Furthermore, the intranet 400 constructed in each business office is connected to each other to form an extranet 402, and the communication destination management server 100 according to the present embodiment is provided with each business office A to C via the extranet 402. It is installed outside.

図2は、本実施形態のWebサービス提供システム10を構成する各装置の機能ブロック図を示す。本実施形態におけるクライアント端末300は、標準的なウェブブラウザ20を搭載するパーソナル・コンピュータとして参照することができる。なお、図2においては、HTMLファイルに記述されたスクリプトを実行する機能部をスクリプトエンジン22として示し、HTTPユーザエージェント、パーサ、レンダラなどの基本機能をHTMLエンジン24として示している。   FIG. 2 shows a functional block diagram of each device constituting the Web service providing system 10 of the present embodiment. The client terminal 300 in this embodiment can be referred to as a personal computer on which a standard web browser 20 is installed. In FIG. 2, a function unit that executes a script described in an HTML file is shown as a script engine 22, and basic functions such as an HTTP user agent, a parser, and a renderer are shown as an HTML engine 24.

社内SaaSサーバ200は、Webサービスを提供するためのサービスアプリケーション部40と、データ同期部42と、データベース44とを含んで構成されている。サービスアプリケーション部40は、少なくとも1つのWebサービスをクライアント端末300が搭載するウェブブラウザ20を介してユーザに提供する機能部であり、Webサービスを実行するための各種データをデータベース44に格納する。   The in-house SaaS server 200 includes a service application unit 40 for providing a Web service, a data synchronization unit 42, and a database 44. The service application unit 40 is a functional unit that provides a user with at least one web service via the web browser 20 installed in the client terminal 300, and stores various data for executing the web service in the database 44.

本実施形態における通信先管理サーバ100は、ユーザ認証部30と、ユーザIDやパスワードなどのログイン情報を管理するユーザ情報管理部32と、リダイレクト部34と、サーバアドレス管理部36と、データ同期部38と、データベース39とを含んで構成されている。   The communication destination management server 100 according to this embodiment includes a user authentication unit 30, a user information management unit 32 that manages login information such as a user ID and a password, a redirect unit 34, a server address management unit 36, and a data synchronization unit. 38 and a database 39.

ユーザ認証部30は、クライアント端末300からのログイン要求を受けてユーザ情報管理部32を検索・照合してユーザ認証を実行する機能部である。   The user authentication unit 30 is a functional unit that receives a login request from the client terminal 300 and searches and collates the user information management unit 32 to execute user authentication.

サーバアドレス管理部36は、図3に示す最寄りサーバアドレス管理テーブル600を備える。図3に例示する最寄りサーバアドレス管理テーブル600は、各事業所のイントラネット400がクライアント端末接続用として割り当てる所定範囲のプライベートIPアドレスと、当該イントラネット400内に配置されるネットワーク的に最も近い社内SaaSサーバ200のプライベートIPアドレスとを対応付けて管理している。   The server address management unit 36 includes a nearest server address management table 600 shown in FIG. The nearest server address management table 600 illustrated in FIG. 3 includes a private IP address within a predetermined range that the intranet 400 of each business office allocates for connection to a client terminal, and the in-house SaaS server closest to the network arranged in the intranet 400 200 private IP addresses are associated and managed.

リダイレクト部34は、クライアント端末300から送信されるIPパケットのIPヘッダに含まれる送信元IPアドレスに基づいて最寄りサーバアドレス管理テーブル600を検索し、送信元のクライアント端末300と同じイントラネット400内に配置されるネットワーク的に最も近い社内SaaSサーバ200のプライベートIPアドレスを取得し、当該社内SaaSサーバ200を再接続先とするリダイレクト処理を送信元のクライアント端末300に対して実行する。   The redirect unit 34 searches the nearest server address management table 600 based on the transmission source IP address included in the IP header of the IP packet transmitted from the client terminal 300 and arranges it in the same intranet 400 as the transmission source client terminal 300. The private IP address of the in-house SaaS server 200 closest to the network is acquired, and redirection processing with the in-house SaaS server 200 as the reconnection destination is executed for the transmission source client terminal 300.

さらに、通信先管理サーバ100のデータ同期部38は、データベース39をバッファとして使用して、複数の社内SaaSサーバ200のデータベース44に格納されたデータの同期を図る機能部であり、当該データ同期は、データ同期部38と複数の社内SaaSサーバ200の各データ同期部42とが協働することによって実現される。   Further, the data synchronization unit 38 of the communication destination management server 100 is a functional unit that synchronizes data stored in the databases 44 of the plurality of in-house SaaS servers 200 using the database 39 as a buffer. The data synchronization unit 38 and each data synchronization unit 42 of the plurality of in-house SaaS servers 200 cooperate to realize the above.

以上、本実施形態のWebサービス提供システム10を構成する各装置の機能手段について説明してきたが、次に、本実施形態のWebサービス提供システム10が実行する処理の具体的な内容について、図1に示した事業所Aに所属するユーザAが出先の事業所Bにおいて社内SaaSシステムを利用する場合を例にとって説明する。   The functional means of each device constituting the Web service providing system 10 of the present embodiment has been described above. Next, the specific contents of the processing executed by the Web service providing system 10 of the present embodiment will be described with reference to FIG. The case where the user A belonging to the business office A shown in FIG. 4 uses the in-house SaaS system at the business office B at the destination will be described as an example.

図4は、Webサービス提供システム10が実行する処理のシーケンス図である。事業所Bに出向いたユーザAは、まず、自身のクライアント端末300aを出先の事業所Bに構築されたイントラネット400bに接続する。このとき、クライアント端末300aは、クライアント端末接続用として用意された所定のプライベートIPアドレスを付与される。   FIG. 4 is a sequence diagram of processing executed by the Web service providing system 10. The user A who goes to the office B first connects his client terminal 300a to the intranet 400b constructed in the office B of the destination. At this time, the client terminal 300a is given a predetermined private IP address prepared for client terminal connection.

次に、ユーザAは、図4に示すように、ウェブブラウザ20から社内SaaS用URLにアクセスしてログインを要求する(ステップ101)。ここで、事業所A〜Cを有する当該企業においては、社員(ユーザ)に対し、社内SaaSアクセス用として通信先管理サーバ100のURLのみが案内されており、各事業所に配置された社内SaaSサーバ200a〜200cのURLは、一般ユーザには知らされない。したがって、社内SaaSを利用しようとするユーザは、まず最初に、通信先管理サーバ100に対して社内SaaS用ログイン要求を送信することになる。ログイン要求を受けた通信先管理サーバ100は、クライアント端末300aのウェブブラウザ20に対してログインページを送信する(ステップ102)。   Next, as shown in FIG. 4, the user A accesses the in-house SaaS URL from the web browser 20 and requests login (step 101). Here, in the company having the offices A to C, only the URL of the communication destination management server 100 is guided to employees (users) for in-house SaaS access, and the in-house SaaS that is arranged at each office. The URLs of the servers 200a to 200c are not informed to general users. Therefore, a user who intends to use the in-house SaaS first transmits an in-house SaaS login request to the communication destination management server 100. Receiving the login request, the communication destination management server 100 transmits a login page to the web browser 20 of the client terminal 300a (step 102).

ユーザAは、受信したログインページからユーザIDおよびパスワードなどのログイン情報を入力する。これに応答してクライアント端末300aのウェブブラウザ20がログイン情報を通信先管理サーバ100に送信する(ステップ103)。通信先管理サーバ100のユーザ認証部30は、受信したログイン情報に基づいてユーザ認証処理を実行する(ステップ104)。   User A inputs login information such as a user ID and a password from the received login page. In response to this, the web browser 20 of the client terminal 300a transmits login information to the communication destination management server 100 (step 103). The user authentication unit 30 of the communication destination management server 100 executes user authentication processing based on the received login information (step 104).

ユーザ認証が成功すると、通信先管理サーバ100のリダイレクト部34は、IPパケットのIPヘッダに含まれる送信元IPアドレスをキーとして、図3に示した最寄りサーバアドレス管理テーブル600を検索し、送信元であるクライアント端末300aに付与されたプライベートIPアドレスに対応する社内SaaSサーバのIPアドレスを取得する(ステップ105)。   If the user authentication is successful, the redirect unit 34 of the communication destination management server 100 searches the nearest server address management table 600 shown in FIG. 3 using the source IP address included in the IP header of the IP packet as a key, and the source The IP address of the in-house SaaS server corresponding to the private IP address assigned to the client terminal 300a is acquired (step 105).

続いて、リダイレクト部34は、取得した社内SaaSサーバ200bのIPアドレスを転送先とするリダイレクト処理を実行する(ステップ106)。本実施形態におけるリダイレクト処理とは、クライアント端末のウェブブラウザを最寄りの社内SaaSサーバに再接続するための処理をいい、図5に示す例の場合、ユーザAのクライアント端末300aのウェブブラウザ20の通信先を、現在の通信先である通信先管理サーバ100から、ネットワーク的に最も近い社内SaaSサーバ200bに変更させるための処理をいう。本実施形態におけるリダイレクト処理は、HTTPリダイレクト、metaタグによるリダイレクト、クライアントスクリプトによるリダイレクトなど、適切な方法を用いて実現することができる。リダイレクト部34は、図6に示すように、リダイレクトの実行を内容とするHTTPレスポンスをクライアント端末300aのウェブブラウザ20に送信する(ステップ107)。   Subsequently, the redirect unit 34 executes a redirect process using the acquired IP address of the in-house SaaS server 200b as a transfer destination (step 106). The redirect process in the present embodiment refers to a process for reconnecting the web browser of the client terminal to the nearest in-house SaaS server. In the example shown in FIG. 5, the communication of the web browser 20 of the client terminal 300a of the user A is performed. This is a process for changing the destination from the communication destination management server 100, which is the current communication destination, to the in-house SaaS server 200b that is closest to the network. The redirection processing in the present embodiment can be realized by using an appropriate method such as HTTP redirection, redirection by meta tag, redirection by client script, or the like. As shown in FIG. 6, the redirect unit 34 transmits an HTTP response whose content is the execution of the redirect to the web browser 20 of the client terminal 300a (step 107).

クライアント端末300aのウェブブラウザ20は、受信したHTTPレスポンスを解析し(ステップ108)、指定されたIPアドレス(すなわち、社内SaaSサーバ200b)に対してHTTPリクエストを送信する(ステップ109)。社内SaaSサーバ200bは、HTTPリクエストに応答してサービスページ生成し、これをクライアント端末300aに送信する(ステップ110)。クライアント端末300aのウェブブラウザ20によってサービスページが表示され、社内SaaSサーバ200bが提供するサービスが開始される(ステップ111)。   The web browser 20 of the client terminal 300a analyzes the received HTTP response (step 108), and transmits an HTTP request to the designated IP address (that is, the in-house SaaS server 200b) (step 109). The in-house SaaS server 200b generates a service page in response to the HTTP request and transmits it to the client terminal 300a (step 110). A service page is displayed by the web browser 20 of the client terminal 300a, and a service provided by the in-house SaaS server 200b is started (step 111).

以上、本実施形態のWebWebサービス提供システム10のリダイレクト機能について説明してきたが、本実施形態においては、ユーザがどの事業所においても自分のデータにアクセスできるように、複数の社内SaaSサーバ間でWebサービスに用いられるデータの同期を図ることが前提となる。以下、Webサービス提供システム10における複数の社内SaaSサーバ間のデータ同期方法について、図7および図8に基づいて説明する。   The redirect function of the Web Web service providing system 10 according to the present embodiment has been described above. However, in this embodiment, the Web can be accessed between a plurality of in-house SaaS servers so that the user can access his / her data at any office. It is assumed that data used for the service is synchronized. Hereinafter, a data synchronization method between a plurality of in-house SaaS servers in the Web service providing system 10 will be described with reference to FIGS. 7 and 8.

本実施形態のWebサービス提供システム10においては、複数の社内SaaSサーバ間のデータ同期方法として、以下の2つの方法を採用することができる。第1の方法は、図7に示すように、各事業所に配置された社内SaaSサーバ200のデータベースの更新と非同期にデータ同期を行う方法である。図7に例示する方法においては、通信先管理サーバ100のデータ同期部38が、各事業所に設置された社内SaaSサーバ200a〜200cに対して予め定められた時間間隔をもって定期的に同期リクエストを送信する。各社内SaaSサーバ200a〜200cのデータ同期部42は、当該同期リクエストに応答してデータベース44の内容を通信先管理サーバ100に送信する。通信先管理サーバ100のデータ同期部38は、各社内SaaSサーバ200a〜200cから送信されたデータベース44の内容をデータベース39に統合する。データ同期部38は、そのようにして得た統合データを社内SaaSサーバ200a〜200cに送信し、社内SaaSサーバ200a〜200cが送信された統合データをコピーすることによって、各社内SaaSサーバ200のデータベース44と通信先管理サーバ100のデータベース39が同期され、結果的に社内SaaSサーバ200a〜200c間のデータ同期が実現される。   In the Web service providing system 10 of the present embodiment, the following two methods can be employed as a data synchronization method between a plurality of in-house SaaS servers. As shown in FIG. 7, the first method is a method of performing data synchronization asynchronously with the update of the database of the in-house SaaS server 200 arranged at each business office. In the method illustrated in FIG. 7, the data synchronization unit 38 of the communication destination management server 100 periodically issues a synchronization request to the in-house SaaS servers 200 a to 200 c installed at each business office at predetermined time intervals. Send. The data synchronization unit 42 of each in-house SaaS server 200a to 200c transmits the contents of the database 44 to the communication destination management server 100 in response to the synchronization request. The data synchronization unit 38 of the communication destination management server 100 integrates the contents of the database 44 transmitted from the in-house SaaS servers 200a to 200c into the database 39. The data synchronization unit 38 transmits the integrated data thus obtained to the in-house SaaS servers 200a to 200c, and copies the integrated data transmitted by the in-house SaaS servers 200a to 200c, whereby the database of each in-house SaaS server 200 is copied. 44 and the database 39 of the communication destination management server 100 are synchronized. As a result, data synchronization between the in-house SaaS servers 200a to 200c is realized.

次に、第2の方法について説明する。図8に例示する第2の方法においては、各社内SaaSサーバ200a〜200cのデータ同期部42は、各事業所に配置された社内SaaSサーバ200のデータベースの更新に同期して、データベース44の内容を通信先管理サーバ100に送信する。通信先管理サーバ100のデータ同期部38は、データベース44の内容を受信する度にその内容をデータベース39に統合する。これとは別に、データ同期部38は、予め定められた時間間隔をもって定期的に社内SaaSサーバ200a〜200cに対して現時点における統合データを送信し、各社内SaaSサーバ200a〜200cが送信された統合データをコピーすることによって、各社内SaaSサーバ200のデータベース44と通信先管理サーバ100のデータベース39が同期され、結果的に社内SaaSサーバ200a〜200c間のデータ同期が実現される。
なお、上述した2つの方法において、社内SaaSサーバ200から通信先管理サーバ100に送るデータベース44の内容は、差分データとすることができる。
Next, the second method will be described. In the second method illustrated in FIG. 8, the data synchronization unit 42 of each in-house SaaS server 200 a-200 c synchronizes with the update of the database in the in-house SaaS server 200 arranged in each business office, and the contents of the database 44. Is transmitted to the communication destination management server 100. The data synchronization unit 38 of the communication destination management server 100 integrates the contents of the database 44 into the database 39 every time the contents of the database 44 are received. Separately from this, the data synchronization unit 38 periodically transmits the integrated data at the present time to the in-house SaaS servers 200a to 200c at predetermined time intervals, and the in-house SaaS servers 200a to 200c are transmitted. By copying the data, the database 44 of each in-house SaaS server 200 and the database 39 of the communication destination management server 100 are synchronized. As a result, data synchronization between the in-house SaaS servers 200a to 200c is realized.
In the two methods described above, the contents of the database 44 sent from the in-house SaaS server 200 to the communication destination management server 100 can be differential data.

以上、説明したように、本実施形態のWebサービス提供システム10によれば、ユーザのクライアント端末は、複数の社内SaaSサーバの中から選択された現時点でネットワーク的に最も近い社内SaaSサーバに接続されるので、ユーザは、応答速度に関するストレスから解放される。また、最寄りの社内SaaSサーバへの再接続および複数の社内SaaSサーバ間のデータ同期は自動的に行われるので、ユーザは、複数の社内SaaSサーバを使い分けていることを意識しない。   As described above, according to the Web service providing system 10 of the present embodiment, the user's client terminal is connected to the in-house SaaS server closest to the network selected from among a plurality of in-house SaaS servers. Thus, the user is freed from stress related to response speed. Further, since reconnection to the nearest in-house SaaS server and data synchronization between a plurality of in-house SaaS servers are automatically performed, the user is not aware that the plurality of in-house SaaS servers are used properly.

以上、本発明について実施形態をもって説明してきたが、本発明は上述した実施形態に限定されるものではなく、たとえば、企業内の複数の社内SaaSサーバのうち、任意の社内SaaSサーバを代表サーバとし、これに通信先管理サーバの機能を搭載することもできる。その他、当業者が推考しうる実施態様の範囲内において、本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。   As mentioned above, although this invention was demonstrated with embodiment, this invention is not limited to embodiment mentioned above, For example, arbitrary in-house SaaS servers are made into a representative server among several in-house SaaS servers in a company. In addition, a function of a communication destination management server can be mounted on this. In addition, it is included in the scope of the present invention as long as the effects and effects of the present invention are exhibited within the scope of embodiments that can be considered by those skilled in the art.

なお、上述した実施形態の各機能は、アセンブリ言語、C、Visual C、C++、Visual C++、Java(登録商標)、Java(登録商標)Beans、Java(登録商標)Applet、Java(登録商標)Script、Perl、Rubyなど、レガシープログラミング言語やオブジェクト指向プログラミング言語などで記述された装置実行可能なプログラムにより実現でき、装置可読な記録媒体に格納して頒布することができる。   Note that the functions of the above-described embodiments are as follows: assembly language, C, Visual C, C ++, Visual C ++, Java (registered trademark), Java (registered trademark) Beans, Java (registered trademark) Applet, Java (registered trademark) Script. , Perl, Ruby, etc., can be realized by a device-executable program written in a legacy programming language, an object-oriented programming language, or the like, and can be stored in a device-readable recording medium and distributed.

10…Webサービス提供システム
20…ウェブブラウザ
22…スクリプトエンジン
24…HTMLエンジン
30…ユーザ認証部
32…ユーザ情報管理部
34…リダイレクト部
36…サーバアドレス管理部
38…データ同期部
39…データベース
40…サービスアプリケーション部
42…データ同期部
44…データベース
100…通信先管理サーバ
150…社内SaaSシステム
200…社内SaaSサーバ
250…社内SaaSサーバ
300…クライアント端末
350…ユーザ端末
400…イントラネット
402…エクストラネット
404…インターネット
500…社外SaaSサーバ
600…サーバアドレス管理テーブル
DESCRIPTION OF SYMBOLS 10 ... Web service provision system 20 ... Web browser 22 ... Script engine 24 ... HTML engine 30 ... User authentication part 32 ... User information management part 34 ... Redirection part 36 ... Server address management part 38 ... Data synchronization part 39 ... Database 40 ... Service Application unit 42 ... Data synchronization unit 44 ... Database 100 ... Destination management server 150 ... In-house SaaS system 200 ... In-house SaaS server 250 ... In-house SaaS server 300 ... Client terminal 350 ... User terminal 400 ... Intranet 402 ... Extranet 404 ... Internet 500 ... External SaaS server 600 ... Server address management table

特開2009−70015号公報JP 2009-70015 A

Claims (6)

複数のWebサービス提供サーバと通信先管理サーバとを含むWebサービス提供システムであって、
各々の前記Webサービス提供サーバは、
互いに独立したイントラネット内に配置され、
少なくとも1つのWebサービスをクライアント端末が搭載するウェブブラウザを介して提供するためのサービスアプリケーション部と、
前記Webサービスを実行するためのアプリケーションデータを格納する第1のデータベースと、
第1のデータ同期部と、
を含み、
前記通信先管理サーバは、
前記独立したイントラネットが相互に接続してなるエクストラネットに接続され、
各前記イントラネット内でクライアント端末接続用に割り当てられるIPアドレスと該イントラネット内に配置される最寄りの前記Webサービス提供サーバのIPアドレスとを対応付けて管理するサーバアドレス管理部と、
クライアント端末の送信元IPアドレスに基づいて前記サーバアドレス管理部を検索して前記最寄りのWebサービス提供サーバのIPアドレスを取得し、該IPアドレスを再接続先とするリダイレクト処理を該クライアント端末に対して実行するリダイレクト部と、
複数の前記第1のデータベースの内容を統合するための第2のデータベースと、
第2のデータ同期部と、
を含み
前記第1のデータ同期部は、前記第1のデータベースの内容を前記通信先管理サーバに送信し、前記第2のデータ同期部は、複数の前記第1のデータベースの内容を前記第2のデータベースに統合し、該第2のデータベースと複数の前記第1のデータベースを同期させる、
Webサービス提供システム。
A web service providing system including a plurality of web service providing servers and a communication destination management server,
Each of the web service providing servers
Placed in independent intranets,
A service application unit for providing at least one Web service via a Web browser installed in the client terminal;
A first database for storing application data for executing the Web service;
A first data synchronization unit;
Including
The communication destination management server
Connected to an extranet formed by connecting the independent intranets to each other;
A server address management unit that associates and manages an IP address assigned for client terminal connection in each intranet and an IP address of the nearest web service providing server arranged in the intranet;
Based on the source IP address of the client terminal, the server address management unit is searched to obtain the IP address of the nearest Web service providing server, and redirection processing using the IP address as a reconnection destination is performed on the client terminal. Redirection part to be executed and
A second database for integrating the contents of the plurality of first databases;
A second data synchronization unit;
The first data synchronization unit transmits the contents of the first database to the communication destination management server, and the second data synchronization unit transmits the contents of the plurality of first databases to the second Integrating the second database with a plurality of the first databases;
Web service providing system.
前記第1のデータ同期部は、前記第2のデータ同期部からの同期リクエストに応答して所定時間毎に前記第1のデータベースの内容を前記通信先管理サーバに送信し、前記第2のデータ同期部は、所定時間毎に前記第2のデータベースと複数の前記第1のデータベースを同期させる、
請求項1に記載のWebサービス提供システム。
The first data synchronization unit transmits the contents of the first database to the communication destination management server every predetermined time in response to the synchronization request from the second data synchronization unit, and the second data The synchronization unit synchronizes the second database and the plurality of first databases every predetermined time.
The Web service providing system according to claim 1.
前記第1のデータ同期部は、前記第1のデータベースのデータ更新に同期して前記第1のデータベースの更新内容を前記通信先管理サーバに送信し、前記第2のデータ同期部は、所定時間毎に前記第2のデータベースと複数の前記第1のデータベースを同期させる、
請求項1に記載のWebサービス提供システム。
The first data synchronization unit transmits the update contents of the first database to the communication destination management server in synchronization with the data update of the first database, and the second data synchronization unit performs a predetermined time Synchronizing the second database with a plurality of the first databases each time;
The Web service providing system according to claim 1.
各々にWebサービス提供サーバが配置された独立した複数のイントラネットが相互に接続してなるエクストラネットに接続される通信先管理サーバであって、
各前記イントラネット内でクライアント端末接続用に割り当てられるIPアドレスと該イントラネット内に配置される最寄りのWebサービス提供サーバのIPアドレスとを対応付けて管理するサーバアドレス管理部と、
クライアント端末の送信元IPアドレスに基づいて前記サーバアドレス管理部を検索して前記最寄りのWebサービス提供サーバのIPアドレスを取得し、該IPアドレスを再接続先とするリダイレクト処理を該クライアント端末に対して実行するリダイレクト部と、
複数の外部データベースの内容を統合するための統合データベースと、
複数の前記Webサービス提供サーバのデータベースの内容を前記統合データベースに統合し、該統合データベースと複数の前記Webサービス提供サーバのデータベースを同期させるデータ同期部と
を含む
通信先管理サーバ。
A communication destination management server connected to an extranet formed by mutually connecting a plurality of independent intranets each having a web service providing server;
A server address management unit for managing an IP address assigned for connecting a client terminal in each intranet and an IP address of a nearest web service providing server arranged in the intranet in association with each other;
Based on the source IP address of the client terminal, the server address management unit is searched to obtain the IP address of the nearest Web service providing server, and redirection processing using the IP address as a reconnection destination is performed on the client terminal. Redirection part to be executed and
A consolidated database for integrating the contents of multiple external databases;
A communication destination management server comprising: a data synchronization unit that integrates the contents of a plurality of Web service providing server databases into the integrated database, and synchronizes the integrated database and the plurality of Web service providing server databases.
各々にWebサービス提供サーバが配置された独立した複数のイントラネットが相互に接続してなるエクストラネットに接続される通信先管理サーバの制御方法であって、
前記通信先管理サーバに、
各前記イントラネット内でクライアント端末接続用に割り当てられるIPアドレスと該イントラネット内に配置される最寄りのWebサービス提供サーバのIPアドレスとを対応付けて管理するための機能手段と、
クライアント端末の送信元IPアドレスに基づいて前記最寄りのWebサービス提供サーバのIPアドレスを取得し、該IPアドレスを再接続先とするリダイレクト処理を該クライアント端末に対して実行するための機能手段と、
複数の前記Webサービス提供サーバのデータベースの内容を統合データベースに統合し、該統合データベースと複数の前記Webサービス提供サーバのデータベースを同期させるための機能手段と
を実現する方法。
A control method of a communication destination management server connected to an extranet in which a plurality of independent intranets each having a web service providing server are connected to each other,
In the communication destination management server,
Functional means for managing the IP address assigned for client terminal connection in each intranet and the IP address of the nearest web service providing server arranged in the intranet in association with each other;
Functional means for acquiring the IP address of the nearest web service providing server based on the source IP address of the client terminal, and executing redirection processing with the IP address as a reconnection destination for the client terminal;
A method for integrating contents of databases of a plurality of Web service providing servers into an integrated database, and realizing functional means for synchronizing the integrated database and the databases of the plurality of Web service providing servers.
コンピュータに請求項5に記載の各機能手段を実現させるためのコンピュータ実行可能なプログラム。   A computer-executable program for causing a computer to realize each functional unit according to claim 5.
JP2010199802A 2010-09-07 2010-09-07 Web service providing system, server device, method and program Expired - Fee Related JP5495188B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010199802A JP5495188B2 (en) 2010-09-07 2010-09-07 Web service providing system, server device, method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010199802A JP5495188B2 (en) 2010-09-07 2010-09-07 Web service providing system, server device, method and program

Publications (2)

Publication Number Publication Date
JP2012058898A JP2012058898A (en) 2012-03-22
JP5495188B2 true JP5495188B2 (en) 2014-05-21

Family

ID=46055949

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010199802A Expired - Fee Related JP5495188B2 (en) 2010-09-07 2010-09-07 Web service providing system, server device, method and program

Country Status (1)

Country Link
JP (1) JP5495188B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5645891B2 (en) * 2012-07-30 2014-12-24 ビッグローブ株式会社 Software providing system, portal server, providing server, authentication method, providing method, and program
FR2995159B1 (en) * 2012-09-03 2014-08-22 Kurmi Software SYSTEM FOR MANAGING DATA RELATING TO USERS OF A COMMUNICATION SYSTEM
JP6021651B2 (en) * 2013-01-16 2016-11-09 キヤノン株式会社 Management system, management method, and computer program
JP6056607B2 (en) 2013-03-28 2017-01-11 富士通株式会社 Information processing system and control method of information processing system

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001229065A (en) * 2000-02-17 2001-08-24 Nec Corp System and method for synchronizing file
US7472342B2 (en) * 2001-10-24 2008-12-30 Bea Systems, Inc. System and method for portal page layout
JP2003209570A (en) * 2002-01-11 2003-07-25 Fujitsu Ltd Relaying method, and client, server, and repeater used for implementing the method
JP2006134070A (en) * 2004-11-05 2006-05-25 Fujitsu Ltd Information processor, information processing method therefor, and information processing program
JP2009070015A (en) * 2007-09-12 2009-04-02 Hitachi Electronics Service Co Ltd Application service providing system

Also Published As

Publication number Publication date
JP2012058898A (en) 2012-03-22

Similar Documents

Publication Publication Date Title
US9578123B2 (en) Light weight portal proxy
JP5821298B2 (en) Web service providing system, server device, method and program
EP2800317B1 (en) Terminal device and user information synchronization method
JP2004029939A (en) Communication proxy device and service providing method using the same device
JP2007511821A5 (en)
JP2013210896A (en) Proxy server device, client terminal device, remote access system, transfer control method and program, and access method and program
CN107463453B (en) Method, device, equipment and storage medium for communication between different applications of same terminal
JP5581820B2 (en) Relay server device, cookie control method, and cookie control program
KR20000022706A (en) Information processing method, information processing apparatus, and storage medium for storing an information processing program
WO2015176321A1 (en) Information sharing method and device
JP5495188B2 (en) Web service providing system, server device, method and program
JP5347429B2 (en) Uniform resource locator rewriting method and apparatus
CN103888540A (en) Login information synchronization method, synchronized network servers and synchronizing network servers
CN106557680B (en) Information processing system, information processing unit and method
JPH11175471A (en) Method and device for rewriting url, and medium recorded with url re-writable program
US8250236B2 (en) Method and apparatus for translating a web services address
JP2003162449A (en) Integrated access management system, integrated access management device and its method and program
JP4903118B2 (en) WEB server and program for collecting sensing data
JP2011238201A (en) Web contents sharing system and web contents sharing method
JP2002236662A (en) Information processing system and authentication server program
JP5806067B2 (en) Server apparatus and server apparatus control method
KR20020072357A (en) Realtime Control System and Method of User Browser
JP6317506B2 (en) Relay device, relay method, and relay program
JP6151508B2 (en) Relay device, relay method, and relay program
KR100400649B1 (en) information supply method utilizing url and thereof system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130621

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140206

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140210

R151 Written notification of patent or utility model registration

Ref document number: 5495188

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140223

LAPS Cancellation because of no payment of annual fees