JP2008204090A - Server device and service provision method via network - Google Patents

Server device and service provision method via network Download PDF

Info

Publication number
JP2008204090A
JP2008204090A JP2007038345A JP2007038345A JP2008204090A JP 2008204090 A JP2008204090 A JP 2008204090A JP 2007038345 A JP2007038345 A JP 2007038345A JP 2007038345 A JP2007038345 A JP 2007038345A JP 2008204090 A JP2008204090 A JP 2008204090A
Authority
JP
Japan
Prior art keywords
program
information
arithmetic processing
specific arithmetic
task
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.)
Pending
Application number
JP2007038345A
Other languages
Japanese (ja)
Inventor
Hirobumi Terada
博文 寺田
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.)
Kobe Steel Ltd
Original Assignee
Kobe Steel 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 Kobe Steel Ltd filed Critical Kobe Steel Ltd
Priority to JP2007038345A priority Critical patent/JP2008204090A/en
Publication of JP2008204090A publication Critical patent/JP2008204090A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To make it possible to link the respective execution environments of a Web system and a legacy program without causing additional operation such as program correction as much as possible, and to service-provide a result acquired by the execution of the legacy program. <P>SOLUTION: This server device is configured to execute the task of a Web server for receiving a service request from a terminal via a network (S11), and for transmitting service provision information corresponding to the request via the network to the terminal (S16); the task of a specific arithmetic program (legacy program) prepared by FORTRAN or the like; and the task of a CGI program for performing processing to generate input information prepared in language different from that to be used for the task of the specific arithmetic program based on the service request received by the task of the Web server, and to write it in a shared memory 12 (S23), and processing to generate service provision information from the arithmetic result information of the task of the specific arithmetic processing, and to transfer it to the task of the Web server (S26). <P>COPYRIGHT: (C)2008,JPO&INPIT

Description

本発明は,ネットワークを通じてサービスを提供するサーバ装置及びサービス提供方法に関するものである。   The present invention relates to a server device and a service providing method for providing a service through a network.

近年,サーバ装置から端末装置に対してネットワークを通じたサービス提供を行うシステムとしては,WWW(World Wide Web)技術を用いてサービス提供を行うシステム(以下,Webシステムという)が広く普及している。
このようなWebシステムにおけるサーバ装置では,その演算手段(CPU)により,TCP/IPプロトコルをベースとしたHTTPやFTP等の通信プロトコルに基づいて,端末装置からネットワークを経由して伝送される所定のサービス要求を受信する処理,及びそのサービス要求に応じたサービス提供情報をHTMLやJavaScript(サン・マイクロシステムズ・インコーポレーテッドの登録商標,以下同じ)等で表現された配信情報(コンテンツ)として端末装置に送信する処理の各々が,Webサーバプログラムに従って実行される。ここで,予め用意されたホームページ等をサービス提供情報として提供(送信)する場合は,Webサーバプログラムの実行のみで対応できる。この場合,Webサーバプログラムの実行により,サービス要求において指定されているデータの存在場所を表す所在情報(URL等)に従って,そのデータの存在場所にアクセスし,そこに存在するホームページ等のデータをサービス提供情報として端末に送信する。
In recent years, as a system for providing a service from a server device to a terminal device through a network, a system for providing a service using WWW (World Wide Web) technology (hereinafter referred to as a Web system) has been widely used.
In a server device in such a Web system, a predetermined transmission unit transmits a predetermined amount from a terminal device via a network based on a communication protocol such as HTTP or FTP based on the TCP / IP protocol by the calculation means (CPU). Processing for receiving a service request and service providing information corresponding to the service request as distribution information (content) expressed in HTML or JavaScript (registered trademark of Sun Microsystems, Inc., the same applies hereinafter) to the terminal device Each of the processes to be transmitted is executed according to the Web server program. Here, when providing (transmitting) a homepage prepared in advance as service provision information, it can be handled only by executing a Web server program. In this case, by executing the Web server program, the location of the data is accessed according to the location information (URL, etc.) indicating the location of the data specified in the service request, and the data such as the home page existing there is serviced. It is sent to the terminal as provided information.

また,例えば情報検索サービスのように,要求に対応する配信情報を都度生成して提供する場合,前記Webサーバプログラムの実行により受信されたサービス要求に基づいて,そのサービス要求に応じた情報を得るための処理(データベース検索処理等)を実行する装置やプログラム(以下,要求対応処理手段という)に対し,その処理に必要な情報を生成して引き渡すとともに,前記要求対応処理手段により得られる処理結果情報に基づいてサービス提供情報を生成する処理を実行することにより,Webサーバプログラムと前記要求対応処理手段とを中継するための中継プログラムが必要となる。一般に,このような中継プログラムは,PerlやPHP(Hypertext Preprocessor)等のプログラム言語で作成されたCGI(Common Gateway Interface)プログラムとして実現される。また,Webサーバプログラムの機能と,CGIプログラム(中継プログラム)の機能とを兼ね備え,C,C++,Java(サン・マイクロシステムズ・インコーポレーテッドの登録商標,以下同じ)等のプログラム言語で作成された,いわゆるアプリケーションサーバ等も存在する。   Further, when the distribution information corresponding to the request is generated and provided each time, for example, as an information retrieval service, information corresponding to the service request is obtained based on the service request received by the execution of the Web server program. Information necessary for the processing is generated and delivered to a device or program (hereinafter referred to as request response processing means) for executing the processing (database search processing, etc.) for the processing, and the processing result obtained by the request response processing means By executing the process of generating service provision information based on the information, a relay program for relaying the Web server program and the request response processing means is required. In general, such a relay program is realized as a CGI (Common Gateway Interface) program created in a program language such as Perl or PHP (Hypertext Preprocessor). Also, it has the function of a Web server program and the function of a CGI program (relay program), and was created in a program language such as C, C ++, Java (registered trademark of Sun Microsystems, Inc., the same shall apply hereinafter), There are so-called application servers and the like.

一方,古くから,汎用計算機やスーパーコンピュータ等によって基幹業務支援用プログラムや科学技術計算用プログラム等が実行されることにより,企業の給与や人事等に関する基幹業務支援サービスや構造解析計算や流体解析計算等の科学技術計算サービスを提供するシステムが稼働している。このような古くからあるシステムで実行されるプログラム(以下,レガシープログラムという)は,一般にマルチユーザ/マルチタスクのOS環境下で実行されるが,FORTRAN,COBOL或いはPL1等,昨今のネットワークシステムではほとんど用いられず,また,それに用いることに適さないプログラム言語(以下,レガシー言語という)で作成されたものが多く,また,大規模或いは処理内容が複雑なものが多い。従って,このようなレガシープログラムを,現在主流のプログラム言語(Java,C,C++等)で再構築するには,膨大な作業を要する。
これに対し,このようなレガシープログラムの実行環境を,現在普及しているインターネットやイントラネット等のネットワークシステムとリンクし,ネットワークを通じてレガシープログラムの実行によるサービスを提供できれば,従来の資産を有効活用でき好適である。
従来,例えば特許文献1には,技術シミュレーション(応力解析,振動解析等)用のプログラム(ソルバ)の実行マシンと利用者端末とをインターネット及び仲介用のコンピュータを介して接続し,利用者端末からソルバを利用可能とするシステムが示されている。
特開2003−150888号公報
On the other hand, core business support programs, science and technology calculation programs, etc. are executed by general-purpose computers and supercomputers, etc. for a long time. A system that provides scientific and technical calculation services such as A program executed in such an old system (hereinafter referred to as a legacy program) is generally executed in a multi-user / multi-task OS environment. However, in most modern network systems such as FORTRAN, COBOL, or PL1, etc. There are many programs that are not used and are created in a programming language (hereinafter referred to as a legacy language) that is not suitable for use, and many of them are large-scale or have complicated processing contents. Therefore, it takes a lot of work to reconstruct such legacy programs in the mainstream programming languages (Java, C, C ++, etc.).
On the other hand, if the execution environment for such legacy programs is linked to the currently popular network systems such as the Internet and Intranet, and services can be provided by executing legacy programs over the network, existing assets can be used effectively. It is.
Conventionally, for example, in Patent Document 1, an execution machine of a program (solver) for a technical simulation (stress analysis, vibration analysis, etc.) and a user terminal are connected via the Internet and an intermediary computer. A system that enables a solver is shown.
JP 2003-150888 A

しかしながら,レガシープログラムに用いられているFORTRAN等のレガシー言語は,変数のI/O(Input/Output)に関する機能が弱い。例えば,情報の入力はパンチカードやキーボード,或いはファイルを通じてしか行えず,また,情報の出力は,プリントアウトやファイルへの出力によってしか行えないことが多い。さらに,レガシープログラムを実行する計算機は,シングルタスクOSが採用されているものや,時分割方式のマルチタスクOSが採用されているものが多く,並列処理に向いていない。
このため,レガシー言語で作成されたレガシープログラムの実行環境を,端末側から多数の同時アクセスがなされ得るWebシステムとそのままリンクさせる場合,同時アクセス時にレガシープログラム側のI/O関連の処理の負荷が大きくなり,迅速な応答(サービス提供)を行うことができないという問題点があった。さらに,レガシープログラムにおけるI/O関連のプログラム修正(追加)に多大な工数を要するという問題も生じる。
また,I/O関連の負荷軽減のために,同時処理(並行処理)可能なサービス要求(トランザクション)を1つに限定することは,Webシステムを通じたサービス提供として非現実的である。
また,特許文献1には,I/Oに関する機能が弱いレガシープログラム(ソルバ)を実行するマシンと,仲介用のコンピュータとを,I/O機能の弱さが問題とならないようにいかに接続するかについてなんら開示も示唆もなされていない。
従って,本発明は上記事情に鑑みてなされたものであり,その目的とするところは,既存プログラムの修正等の追加作業を極力発生させずに,現在普及しているWWW技術を基礎とするネットワークシステムであるWebシステムと,FORTRAN等のレガシー言語で作成された既存のレガシープログラムの実行環境とをリンクすることにより,レガシープログラムの実行により得られる処理結果をネットワークを通じた提供情報として送信できるサーバ装置及びネットワークを通じたサービス提供方法を提供することにある。
However, legacy languages such as FORTRAN used for legacy programs have weak functions related to variable I / O (Input / Output). For example, information can be input only through a punch card, a keyboard, or a file, and information can be output only by printing out or outputting to a file. Furthermore, many computers that execute legacy programs use a single task OS or a time-shared multitask OS, and are not suitable for parallel processing.
For this reason, when the execution environment of a legacy program created in a legacy language is directly linked to a Web system that can be accessed at the same time from the terminal side, the I / O-related processing load on the legacy program side during simultaneous access is reduced. There was a problem that it was not possible to respond quickly (service provision). Furthermore, there is a problem that a large amount of man-hours is required for modifying (adding) an I / O related program in a legacy program.
In addition, it is impractical as a service provision through a Web system to limit the number of service requests (transactions) that can be simultaneously processed (parallel processing) to reduce I / O related loads.
Patent Document 1 describes how to connect a machine that executes a legacy program (solver) with weak I / O functions and an intermediary computer so that the weakness of the I / O function does not become a problem. There is no disclosure or suggestion about.
Accordingly, the present invention has been made in view of the above circumstances, and the object of the present invention is to create a network based on the currently popular WWW technology without generating additional work such as modification of an existing program as much as possible. A server device capable of transmitting a processing result obtained by executing a legacy program as provided information through a network by linking a Web system as a system and an execution environment of an existing legacy program created in a legacy language such as FORTRAN And providing a service providing method through a network.

上記目的を達成するために本発明は,1又は複数の端末からインターネットやイントラネット等のネットワークを通じて所定のサービス要求を受信するとともに,そのサービス要求に応じたサービス提供情報を前記ネットワークを通じて各端末に送信する通信手段を備えたサーバ装置に適用されるものであり,所定の入力情報に基づく特定の演算処理(例えば,構造解析処理や流体解析処理等)を,FORTRAN,COBOL或いはPL1等のプログラム言語で作成されたプログラムである特定演算プログラムに従って実行する特定演算処理手段と,前記通信手段を通じて受信された前記サービス要求に基づいて前記特定演算処理手段に用いられる前記入力情報を生成する処理,及び前記特定演算処理手段により得られる前記特定の演算処理の結果情報に基づいて前記サービス提供情報を生成する処理の各々を,前記特定演算プログラムとは異なるプログラム言語で作成されたプログラムである中継プログラム(CGIプログラムやアプリケーションサーバプログラムに包含されるCGI機能に相当する部分等)に従って実行する中継処理手段と,前記特定演算処理手段と前記中継処理手段とのいずれからもアクセスされる共用記憶領域を有する共用記憶手段と,を具備し,前記中継処理手段により前記共用記憶領域に前記入力情報を書き込み,前記特定演算処理手段により前記共用記憶領域から前記入力情報を読み出すとともに,前記特定の演算処理を実行してその特定の演算処理の結果情報を前記共用記憶手段に書き込み,前記中継処理手段により前記共用記憶領域から前記特定の演算処理の結果情報を読み出すとともに,前記サービス提供情報を生成してこれを前記通信手段に引き渡すよう構成されたものである。   In order to achieve the above object, the present invention receives a predetermined service request from one or more terminals through a network such as the Internet or an intranet, and transmits service provision information corresponding to the service request to each terminal through the network. Applied to a server device having communication means for performing specific arithmetic processing (for example, structural analysis processing, fluid analysis processing, etc.) based on predetermined input information in a program language such as FORTRAN, COBOL, or PL1. A specific arithmetic processing means to be executed according to a specific arithmetic program that is a created program; a process for generating the input information used by the specific arithmetic processing means based on the service request received through the communication means; The specific arithmetic processing obtained by the arithmetic processing means Each of the processes for generating the service provision information based on the result information is a relay program (a CGI function included in a CGI program or an application server program) that is a program created in a program language different from the specific calculation program. Relay processing means to be executed according to the corresponding portion, etc., and shared storage means having a shared storage area that is accessed from both the specific arithmetic processing means and the relay processing means, and the relay processing means Writing the input information into the shared storage area, reading the input information from the shared storage area by the specific arithmetic processing means, executing the specific arithmetic process, and storing the result information of the specific arithmetic process in the shared storage Write to the means, and from the shared storage area by the relay processing means It reads the result information of the constant of the processing, in which it generates the service providing information is configured to hand over to the communication unit.

このような構成により,レガシー言語で作成された前記特定演算プログラムが存在する場合に,これとWWW技術を基礎とする言語で作成されることが多い前記中継プログラムとを,前記共用記憶手段(共有メモリ)を介してリンクすることができる結果,前記特定演算プログラムの実行により得られる処理結果を,ネットワークを通じた提供情報として送信できるサーバ装置を構成することができる。
しかも,前記特定演算プログラムを実行する前記特定演算処理手段,及び前記中継プログラムを実行する前記中継処理手段の各々は,それら相互間の情報のやりとりの際,直接的には前記共用記憶手段にアクセスするだけである。このため,既存の前記特定演算プログラムについて,修正等の追加作業を極力発生させずに,前記中継プログラムと前記特定演算プログラムとをリンクさせることが可能となる。
なお,前記通信手段として捉えられるものとしては,例えばTCP/IP対応のネットワークインターフェースカード等の通信機器と,前記Webサーバプログラムを実行する手段(Webサーバ機能を実現するCPU等)とを併せたものが考えられる。
With such a configuration, when the specific operation program created in the legacy language exists, the shared storage means (shared program) and the relay program that is often created in a language based on WWW technology. As a result of being able to link via a memory), it is possible to configure a server device that can transmit a processing result obtained by executing the specific arithmetic program as provided information through a network.
Moreover, each of the specific calculation processing means for executing the specific calculation program and the relay processing means for executing the relay program directly accesses the shared storage means when exchanging information between them. Just do it. For this reason, the relay program and the specific calculation program can be linked to the existing specific calculation program without generating additional work such as correction as much as possible.
Note that what can be understood as the communication means is a combination of a communication device such as a TCP / IP compatible network interface card and a means for executing the Web server program (CPU or the like for realizing the Web server function). Can be considered.

また,本発明は,前記サーバ装置を用いてネットワークを通じたサービス提供を行う方法として捉えたものであってもよい。
即ち,1又は複数の端末からネットワークを通じて所定のサービス要求を受信するとともに,そのサービス要求に応じたサービス提供情報を前記ネットワークを通じて前記端末に送信する通信手段を備えたサーバ装置によるネットワークを通じたサービス提供方法であって,前記サーバ装置が,前記特定演算処理手段と,前記中継処理手段と,前記共用記憶手段と,を具備している場合に,前記中継処理手段により前記共用記憶領域に前記入力情報を書き込む工程と,前記特定演算処理手段により前記共用記憶領域から前記入力情報を読み出すとともに,前記特定の演算処理を実行して該特定の演算処理の結果情報を前記共用記憶手段に書き込む工程と,前記中継処理手段により前記共用記憶領域から前記特定の演算処理の結果情報を読み出すとともに,前記サービス提供情報を生成してこれを前記通信手段に引き渡す工程と,を有するネットワークを通じたサービス提供方法として捉えたものである。
これによっても前記サーバ装置について述べた作用効果を同様に奏する。
Further, the present invention may be understood as a method of providing a service through a network using the server device.
That is, a service provision through a network by a server device having a communication means for receiving a predetermined service request from one or a plurality of terminals through the network and transmitting service provision information corresponding to the service request to the terminal through the network. In the method, when the server device includes the specific arithmetic processing means, the relay processing means, and the shared storage means, the input information is input to the shared storage area by the relay processing means. And reading the input information from the shared storage area by the specific calculation processing means, executing the specific calculation processing and writing the result information of the specific calculation processing to the shared storage means, Read the result information of the specific arithmetic processing from the shared storage area by the relay processing means Together with the steps of passing this by generating the service providing information to the communication means, which is assumed as a service providing method through a network with.
This also provides the same effects as described for the server device.

本発明によれば,FORTRAN等のレガシー言語で作成された前記特定演算プログラム(レガシープログラム)が存在する場合に,これとWWW技術を基礎とするPerlやJava等の言語で作成されることが多い前記中継プログラムとを,前記共用記憶手段(共有メモリ)を介してリンクすることができる結果,前記特定演算プログラムの実行により得られる処理結果を,ネットワークを通じて提供情報として送信できるサーバ装置を構成することができる。
しかも,前記特定演算プログラムを実行する前記特定演算処理手段,及び前記中継プログラムを実行する前記中継処理手段の各々は,それら相互間の情報のやりとりの際,直接的には前記共用記憶手段にアクセスするだけであるため,既存の前記特定演算プログラムについて,修正等の追加作業を極力発生させずに,上記の両プログラムをリンクさせることが可能となる。
According to the present invention, when the specific operation program (legacy program) created in a legacy language such as FORTRAN exists, it is often created in a language such as Perl or Java based on this and the WWW technology. As a result of being able to link the relay program via the shared storage means (shared memory), a server device that can transmit the processing result obtained by executing the specific arithmetic program as provided information through a network is configured. Can do.
Moreover, each of the specific calculation processing means for executing the specific calculation program and the relay processing means for executing the relay program directly accesses the shared storage means when exchanging information between them. Therefore, it is possible to link both the above-mentioned specific programs without generating additional work such as correction as much as possible.

以下添付図面を参照しながら,本発明の実施の形態について説明し,本発明の理解に供する。尚,以下の実施の形態は,本発明を具体化した一例であって,本発明の技術的範囲を限定する性格のものではない。
ここに,図1は本発明の実施形態に係るサーバXを構成要素とするサービス提供システムAの概略構成図,図2はサービス提供システムAを構成するサーバX及び端末2の概略構成を表すブロック図,図3はサーバXによるサービス提供処理の手順を表すフローチャートである。
Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings so that the present invention can be understood. The following embodiment is an example embodying the present invention, and does not limit the technical scope of the present invention.
FIG. 1 is a schematic configuration diagram of a service providing system A including the server X according to the embodiment of the present invention, and FIG. 2 is a block diagram illustrating a schematic configuration of the server X and the terminal 2 configuring the service providing system A. FIG. 3 and FIG. 3 are flowcharts showing the procedure of service providing processing by the server X.

まず,図1及び図2を用いて,本発明の実施形態に係るサービス提供システムA,並びにそれを構成するサーバX及び端末2の概略構成について説明する。
サービス提供システムAは,WWW技術を基礎とするネットワークシステム(Webシステム)と,FORTRAN等のレガシー言語で作成された既存のレガシープログラムである特定演算プログラムの実行環境とをリンクしたサービス提供システムであり,それを構成するサーバXから端末2に対し,前記特定演算プログラムの実行により得られる処理結果を,ネットワーク1を通じてサービス提供情報として送信するものである。
図1に示すように,サービス提供システムAは,インターネットやイントラネット等のネットワーク1に接続されたサーバXと端末2とを有し,それらがネットワーク1を通じて相互に通信可能に構成されている。
サーバXは,1又は複数の端末2からネットワーク1を通じて所定のサービス要求を受信し,そのサービス要求に応じた情報(以下,サービス提供情報という)をネットワーク1を通じてそのサービス要求を行った端末2に送信するサービス提供用の情報処理装置(計算機)である。
また,端末2は,インターネット1を介してサーバXに対してサービス要求を送信するとともに,その要求に応じて返信されるサービス提供情報を受信するパソコンや携帯端末(携帯電話,PDA等)等の情報端末である。
First, a schematic configuration of the service providing system A according to the embodiment of the present invention, and the server X and the terminal 2 constituting the service providing system A will be described with reference to FIGS. 1 and 2.
The service providing system A is a service providing system that links a network system (Web system) based on the WWW technology and an execution environment of a specific arithmetic program that is an existing legacy program created in a legacy language such as FORTRAN. The processing result obtained by executing the specific arithmetic program is transmitted from the server X constituting the server 2 to the terminal 2 as service provision information through the network 1.
As shown in FIG. 1, the service providing system A has a server X and a terminal 2 connected to a network 1 such as the Internet or an intranet, and these are configured to be able to communicate with each other through the network 1.
The server X receives a predetermined service request from one or a plurality of terminals 2 through the network 1, and sends information corresponding to the service request (hereinafter referred to as service provision information) to the terminal 2 that has made the service request through the network 1. An information processing apparatus (computer) for providing a service to be transmitted.
The terminal 2 transmits a service request to the server X via the Internet 1 and receives a service providing information returned in response to the request, such as a personal computer or a mobile terminal (mobile phone, PDA, etc.) It is an information terminal.

図2(a)に示すように,サーバXは,演算部11,共有メモリ12,操作表示部13,通信制御部14及び固定記憶部15等を具備している。
前記演算部11は,CPU,ROM,RAM等からなる演算手段であり,後述する各種プログラムをマルチユーザ・マルチタスクのOS環境下で並列的に実行するものである。
前記操作表示部13は,不図示のCRTディスプレイ等の表示手段と,キーボードやマウス等の入力手段から構成され,データの登録操作等,当該サーバXにおける各種情報の操作入力処理及び表示処理を行うマンマシンインターフェースである。
前記通信制御部14は,インターネット1及びこれに接続するためのLANや公衆回線(不図示)を介して,端末2との間のTCP/IPに準拠した通信制御を行うものである。
前記固定記憶部15は,ハードディスク等の記憶装置であり,演算部11により実行される各種プログラム及びそのプログラムの実行の際に参照或いは記録される各種データが記憶される。
本実施形態では,演算部11により実行されるプログラムとして,Webサーバプログラムp1,CGIプログラムp2及び特定演算処理プログラムp3が予め記憶されている。これら各プログラムの実行により実現される機能については後述する。また,前記CGIプログラムp2の実行の際に参照される雛形データd1も予め記憶されている。
なお,特定演算処理プログラムp3は,所定の入力情報に基づいて,構造解析処理や流体解析処理等の特定の演算処理(以下,特定演算処理という)を実行するためのプログラムである。
前記共有メモリ12は,RAM等により構成される記憶手段であり,演算部11により前記CGIプログラムp2及び前記特定演算処理プログラムp3の各々がマルチタスクで実行された場合に,それら両タスクのいずれからもアクセスされる共用のメモリ領域(共用記憶領域)を有する記憶手段である。なお,後述するように,CGIプログラムp2及び特定演算処理プログラムp3の各々を実行して各タスクを構成する演算部11が,中継処理手段及び特定演算処理手段の一例である。
As shown in FIG. 2A, the server X includes a calculation unit 11, a shared memory 12, an operation display unit 13, a communication control unit 14, a fixed storage unit 15, and the like.
The calculation unit 11 is a calculation means including a CPU, a ROM, a RAM, and the like, and executes various programs described later in parallel under a multiuser / multitask OS environment.
The operation display unit 13 includes display means such as a CRT display (not shown) and input means such as a keyboard and a mouse, and performs operation input processing and display processing of various information in the server X such as data registration operation. It is a man-machine interface.
The communication control unit 14 performs communication control based on TCP / IP with the terminal 2 via the Internet 1 and a LAN or public line (not shown) for connecting to the Internet 1.
The fixed storage unit 15 is a storage device such as a hard disk, and stores various programs executed by the calculation unit 11 and various data referred to or recorded when the programs are executed.
In the present embodiment, Web server program p1, CGI program p2 and specific arithmetic processing program p3 are stored in advance as programs executed by arithmetic unit 11. Functions realized by executing these programs will be described later. In addition, template data d1 referred to when the CGI program p2 is executed is also stored in advance.
The specific calculation processing program p3 is a program for executing specific calculation processing (hereinafter referred to as specific calculation processing) such as structural analysis processing and fluid analysis processing based on predetermined input information.
The shared memory 12 is a storage means constituted by a RAM or the like, and when each of the CGI program p2 and the specific arithmetic processing program p3 is executed in a multitask by the arithmetic unit 11, the shared memory 12 starts from either of these tasks. Is a storage means having a shared memory area (shared storage area) to be accessed. As will be described later, the calculation unit 11 that executes each of the CGI program p2 and the specific calculation processing program p3 to configure each task is an example of the relay processing unit and the specific calculation processing unit.

一方,前記端末2は,一般的なパソコンやPDA等の情報端末であり,図2(b)に示すように,不図示のCRTディスプレイ,キーボード及びマウス等,或いは液晶パネル及びシートキー等から構成される操作表示部21と,不図示のMPU,主メモリ,及びその周辺機器から構成されるデータ制御部22と,ハードディスクや不揮発性RAM等のデータ記憶部23と,インターネット1及びこれに接続するためのLANや公衆回線(不図示)を介したデータ通信を行う通信制御部24とを具備している。
前記データ記憶部23には,前記サーバXへの各種データ要求や前記サーバXから受信する前記サービス提供情報(HTMLやJavaScript等のデータで構成されたコンテンツ)を前記操作表示部21へ表示出力するウェブブラウザ等のプログラムがインストールされている。これらのプログラムは,必要に応じて前記データ制御部22の前記主メモリに展開され,そのデータ制御部22により実行される。
以上の他,前記端末2は一般的なパソコンやPDA等と同様の他の構成を有するが,周知であるのでここでは説明を省略する。
On the other hand, the terminal 2 is an information terminal such as a general personal computer or PDA, and is composed of a CRT display, a keyboard and a mouse (not shown), or a liquid crystal panel and a sheet key as shown in FIG. Connected to the Internet 1 and the operation display unit 21, the data control unit 22 including an MPU (not shown), a main memory, and peripheral devices thereof, the data storage unit 23 such as a hard disk and a nonvolatile RAM, and the like. And a communication control unit 24 that performs data communication via a LAN or a public line (not shown).
In the data storage unit 23, various data requests to the server X and the service providing information (contents configured by data such as HTML and JavaScript) received from the server X are displayed and output to the operation display unit 21. A program such as a web browser is installed. These programs are expanded in the main memory of the data control unit 22 as necessary, and are executed by the data control unit 22.
In addition to the above, the terminal 2 has another configuration similar to that of a general personal computer, PDA, or the like, but since it is well known, the description thereof is omitted here.

続いて,各プログラム及びその実行により実現される機能について説明する。
前記特定演算処理プログラムp3は,所定の入力情報に基づく特定の演算処理を,FORTRAN,COBOL或いはPL1等のレガシーなプログラム言語で作成されたプログラムであり,企業の給与や人事等に関する基幹業務支援サービスに関する演算処理,構造解析計算や流体解析計算等の科学技術計算の演算処理等を前記演算部11に実行させるためのレガシープログラムである。ここで,この特定演算処理プログラムp3を実行する演算部11が,特定演算処理手段の一例を構成する。
例えば,特定演算処理プログラムp3が構造解析計算を行うプログラムである場合,前記入力情報は,解析対象とする構造物の材質,形状・寸法の情報,各部位におけるメッシュ分割の大きさの情報,与える荷重の位置・向き・大きさの情報,その荷重により生じる変位を求めたい部位(指定部位)の情報等であり,その演算処理の結果は,指定部位の変位量或いは塑性状況等の情報や,前記入力情報として与えられた構造物の形状・寸法の情報とメッシュ分割の大きさの情報とに基づく各部位のメッシュごとの応力情報等である。
Next, each program and functions realized by its execution will be described.
The specific arithmetic processing program p3 is a program created in a legacy programming language such as FORTRAN, COBOL, or PL1 for specific arithmetic processing based on predetermined input information. This is a legacy program for causing the arithmetic unit 11 to execute arithmetic processing related to scientific processing such as arithmetic processing related to structural analysis calculation and fluid analysis calculation. Here, the arithmetic unit 11 that executes the specific arithmetic processing program p3 constitutes an example of the specific arithmetic processing means.
For example, when the specific arithmetic processing program p3 is a program for performing structural analysis calculation, the input information includes the material of the structure to be analyzed, information on the shape / dimension, information on the size of mesh division in each part, and the like. Information on the position, direction, and magnitude of the load, information on the part (designated part) for which the displacement caused by the load is to be obtained, etc. The results of the calculation process include information on the displacement or plasticity status of the designated part, Stress information for each mesh of each part based on the shape / dimension information and the mesh division size information given as the input information.

前記Webサーバプログラムp1は,それを実行する演算部11(コンピュータ)をいわゆるウェブサーバとして機能させるためのプログラムである。即ち,TCP/IPプロトコル及びその上位層を構成するHTTPやFTP等の通信プロトコルに基づいて,端末2からネットワーク1を経由して伝送される所定のサービス要求を前記通信制御部14を通じて受信する処理,及びそのサービス要求に応じたサービス提供情報を前記通信制御部14及びネットワーク1を通じて端末2に送信する処理の各々を演算部11に実行させるためのプログラムである。このWebサーバプログラムp1は,例えば,C言語やJava等のプログラム言語により作成されている。このWebサーバプログラムp1を実行する演算部11及び前記通信制御部14が,通信手段の一例を構成している。
また,前記サービス提供情報は,HTMLやJavaScript等のスクリプト言語で表現されたデータと画像データ等との組み合わせにより構成されたコンテンツとして端末2に送信される。
The web server program p1 is a program for causing the arithmetic unit 11 (computer) that executes the web server program to function as a so-called web server. That is, processing for receiving a predetermined service request transmitted from the terminal 2 via the network 1 through the communication control unit 14 based on the TCP / IP protocol and a communication protocol such as HTTP or FTP constituting the upper layer. , And a process for transmitting the service providing information corresponding to the service request to the terminal 2 through the communication control unit 14 and the network 1. The Web server program p1 is created in a program language such as C language or Java, for example. The calculation unit 11 that executes the Web server program p1 and the communication control unit 14 constitute an example of communication means.
In addition, the service providing information is transmitted to the terminal 2 as content configured by a combination of data expressed in a script language such as HTML or JavaScript and image data.

前記CGIプログラムp2は,Webサーバプログラムp1のタスク(或いはプロセス)と特定演算処理プログラムp3のタスク(或いはプロセス)との間の情報のやりとりを中継するタスク(或いはプロセス)を形成するためのプログラムである。
より具体的には,演算部11がCGIプログラムp2を実行することにより,まず,前記Webサーバプログラムp1のタスクを通じて受信された前記サービス要求をタスク間通信等により取得し,このサービス要求に基づいて前記特定演算処理プログラムp3のタスク(特定演算処理手段の一例)で用いられる前記入力情報を生成する処理,及びその入力情報を前記共有メモリ12の共用記憶領域に書き込む処理が実行される(後述する図3のS23)。
さらに,前記特定演算処理プログラムp3のタスクにより得られる前記特定の演算処理(構造解析処理等)の結果情報を前記共有メモリ12の共用記憶領域から読み出す処理,及びその読み出した演算処理の結果情報に基づいて,前記Webサーバプログラムp1により端末2に提供される前記サービス提供情報を生成する処理が実行される(後述する図3のS26)。
また,このCGIプログラムp2は,前記特定演算処理プログラムp3とは異なるプログラム言語,例えば,WWW技術を基礎とするWebサーバプログラムp1と親和性の高いプログラム言語であるPerlやC言語等により作成されている。
ここで,このCGIプログラムp2を実行する演算部11が,中継処理手段の一例を構成する。
The CGI program p2 is a program for forming a task (or process) that relays information exchange between the task (or process) of the Web server program p1 and the task (or process) of the specific arithmetic processing program p3. is there.
More specifically, when the calculation unit 11 executes the CGI program p2, first, the service request received through the task of the Web server program p1 is acquired by inter-task communication or the like, and based on this service request A process of generating the input information used in a task of the specific arithmetic processing program p3 (an example of the specific arithmetic processing means) and a process of writing the input information to the shared storage area of the shared memory 12 are executed (described later) S23 of FIG.
Further, the result information of the specific arithmetic processing (structural analysis processing, etc.) obtained by the task of the specific arithmetic processing program p3 is read from the shared storage area of the shared memory 12, and the result information of the read arithmetic processing is included. Based on this, a process of generating the service providing information provided to the terminal 2 by the Web server program p1 is executed (S26 in FIG. 3 described later).
The CGI program p2 is created in a program language different from the specific arithmetic processing program p3, for example, Perl or C language which is a program language having high affinity with the Web server program p1 based on the WWW technology. Yes.
Here, the calculation unit 11 that executes the CGI program p2 constitutes an example of a relay processing unit.

次に,図3に示すフローチャートを用いて,サーバXによる端末2へのサービス提供処理の手順について説明する。
ここで,前記演算部11は,前記Webサーバプログラムp1,前記CGIプログラムp2及び前記特定演算処理プログラムp3の各々をマルチタスク(或いはマルチプロセス)で実行して以下の処理を行う。以下,各実行タスクを,Webサーバタスク,CGIタスク及び特定演算処理タスクという。また,以下に示すS11,S12,…は,演算部11が各プログラムを実行して行う処理手順(ステップ)の識別符号を表す。
まず,Webサーバタスクにおいては,1又は複数の端末2からネットワーク1を通じて伝送される所定のサービス要求が前記通信制御部14を介して受信されるまで,その受信処理が実行される(S11,S12)。
前記サービス要求は,例えば,前記CGIプログラムp2の存在場所を表すURL情報と,前記特定演算処理プログラムp3に与える前記入力情報に関する情報とが予め定められたフォーマットに従って含められた情報が,HTTPやFTP等のプロトコルにより伝送されるものである。
そして,Webサーバタスクにおいて,前記サービス要求が受信されると,そのサービス要求が,例えばタスク間通信等により,CGIタスクに引き渡される(S13)。
Next, the procedure of the service providing process to the terminal 2 by the server X will be described using the flowchart shown in FIG.
Here, the arithmetic unit 11 executes each of the Web server program p1, the CGI program p2, and the specific arithmetic processing program p3 in a multitask (or multiprocess) manner as follows. Hereinafter, each execution task is referred to as a Web server task, a CGI task, and a specific calculation processing task. Further, S11, S12,... Shown below represent identification codes of processing procedures (steps) performed by the calculation unit 11 by executing each program.
First, in the Web server task, reception processing is executed until a predetermined service request transmitted from one or a plurality of terminals 2 through the network 1 is received via the communication control unit 14 (S11, S12). ).
The service request includes, for example, information including URL information indicating the location of the CGI program p2 and information regarding the input information to be given to the specific arithmetic processing program p3 according to a predetermined format, such as HTTP or FTP. Etc. are transmitted by a protocol such as
When the service request is received in the Web server task, the service request is delivered to the CGI task, for example, by inter-task communication (S13).

一方,CGIタスクにおいては,Webサーバタスクから引き渡される前記サービス要求が取得されるまで,その取得処理が実行される(S21,S22)。
そして,CGIタスクにおいて,Webサーバタスクからサービス要求が取得されると,そのサービス要求に基づいて,特定演算処理タスクに与えるべき前記入力情報が生成され,生成された入力情報が前記共有メモリ12の共用記憶領域に書き込まれる(S23)。
前記入力情報の生成処理としては,例えば,前記サービス要求に含まれる前記入力情報を単に抽出する,若しくはその抽出情報を所定のフォーマットに編成するだけの処理や,或いは,サービス要求に含まれる前記入力情報に関する情報に基づいて,構造解析処理等への前記入力情報とする構造物の形状情報やメッシュ分割情報等を生成するいわゆるプリプロセッサ(プログラム)を実行させ,これにより前記入力情報を得る処理等が考えられる。
On the other hand, in the CGI task, the acquisition process is executed until the service request delivered from the Web server task is acquired (S21, S22).
When a service request is acquired from the Web server task in the CGI task, the input information to be given to the specific arithmetic processing task is generated based on the service request, and the generated input information is stored in the shared memory 12. It is written in the shared storage area (S23).
The input information generation process includes, for example, a process of simply extracting the input information included in the service request or organizing the extracted information into a predetermined format, or the input included in the service request. Based on information related to information, a process for obtaining the input information by executing a so-called preprocessor (program) that generates shape information, mesh division information, etc. of the structure as the input information to the structure analysis process, etc. Conceivable.

また,特定演算処理タスクにおいては,CGIタスクにより新たな前記入力情報が前記共有メモリ12の共用記憶領域に書き込まれるまで,その読み出し処理が実行される(S31,S32)。
そして,特定演算処理タスクにおいて,CGIタスクから前記共有メモリ12に新たに書き込まれた前記入力情報を読み出せたことが確認されると,その入力情報に基づく構造解析処理等の前記特定演算処理が実行される(S33)。
ここで,特定演算処理タスクにおいて,前記入力情報の読み出しが完了した際には,共有メモリ12におけるその読み出しを行った領域の初期化処理,或いはその領域について読み出しが完了している旨を表す読み出し完了情報を共有メモリ12内の所定領域に書き込む処理が行われる。これにより,特定演算処理タスクのステップS31,32において,共有メモリ12における前記入力情報の書き込み領域が初期化状態であるか否か,或いはその領域に対応する前記読み出し完了情報の有無を判別することにより,CGIタスクによって新たな前記入力情報が書き込まれたか否かを判別できる。
同様に,CGIタスクにおいても,新たな前記入力情報を書き込み可能な領域を判別できる。なお,前記読み出し完了情報を用いる場合には,CGIタスクにおいて,前記入力情報の書き込み終了時に,それに対応する読み出し完了情報の削除や初期化を行えばよい。
さらに,前記特定演算処理が終了すると,その特定演算処理の結果情報(以下,特定演算結果情報という)が前記共有メモリ12の共用記憶領域に書き込まれる(S34)。
この特定演算処理タスクでは,以上示したステップS31〜S34の処理が繰り返される。
In the specific arithmetic processing task, the reading process is executed until new input information is written in the shared storage area of the shared memory 12 by the CGI task (S31, S32).
Then, when it is confirmed that the input information newly written in the shared memory 12 can be read from the CGI task in the specific arithmetic processing task, the specific arithmetic processing such as the structural analysis processing based on the input information is performed. It is executed (S33).
Here, in the specific arithmetic processing task, when reading of the input information is completed, initialization processing of the area in the shared memory 12 where the reading is performed, or reading indicating that the reading is completed for the area A process of writing completion information to a predetermined area in the shared memory 12 is performed. Thereby, in steps S31 and S32 of the specific arithmetic processing task, it is determined whether or not the input information writing area in the shared memory 12 is in an initialized state, or the presence or absence of the read completion information corresponding to the area. Thus, it can be determined whether or not new input information has been written by the CGI task.
Similarly, in the CGI task, an area where new input information can be written can be determined. In the case where the read completion information is used, in the CGI task, when the input information has been written, the corresponding read completion information may be deleted or initialized.
Further, when the specific calculation processing is completed, the result information of the specific calculation processing (hereinafter referred to as specific calculation result information) is written in the shared storage area of the shared memory 12 (S34).
In this specific arithmetic processing task, the processes of steps S31 to S34 described above are repeated.

一方,CGIタスクにおいては,前述した前記共有メモリ12への前記入力情報の書き込み(S23)の後,特定演算処理タスクによって新たな前記特定演算結果情報が前記共有メモリ12の共用記憶領域に書き込まれるまで,その読み出し処理が実行される(S24,S25)。
そして,CGIタスクにおいて,特定演算処理タスクから前記共有メモリ12に新たに書き込まれた前記特定演算結果情報を読み出せたことが確認されると,その情報に基づいて,端末2からの前記サービス要求に応じた前記サービス提供情報が生成され,それがタスク間通信等によってWebサーバタスクに引き渡される(S26)。
ここで,CGIタスクにおいて,前記特定演算結果情報の読み出しが完了した際には,前述した前記入力情報の場合(S31)と同様に,共有メモリ12におけるその読み出しを行った領域の初期化処理,或いはその領域について読み出しが完了している旨を表す読み出し完了情報を共有メモリ12内の所定領域に書き込む処理が行われる。なお,前記読み出し完了情報を用いる場合には,前記入力情報について前述したのと同様に,特定演算処理タスクにおいて,前記特定演算結果情報の書き込み終了時に,それに対応する読み出し完了情報の削除や初期化を行えばよい。
また,前記サービス提供情報の生成処理としては,例えば,予めHTMLやJavaScript等のスクリプト言語のデータや画像データ等で構成された前記雛形データd1を前記固定記憶部15から読み出し,その雛形データd1における所定位置に前記特定演算結果情報を埋め込むことにより,端末2のWebブラウザで表示可能な前記サービス提供情報(コンテンツ)を生成すること等が考えられる。
このCGIタスクでは,以上示したステップS21〜S26の処理が繰り返される。
On the other hand, in the CGI task, after the input information is written to the shared memory 12 (S23), new specific calculation result information is written to the shared storage area of the shared memory 12 by the specific calculation processing task. Until that time, the reading process is executed (S24, S25).
In the CGI task, when it is confirmed that the specific calculation result information newly written in the shared memory 12 can be read from the specific calculation processing task, the service request from the terminal 2 is based on the information. The service provision information corresponding to the request is generated and delivered to the Web server task by inter-task communication or the like (S26).
Here, in the CGI task, when the reading of the specific calculation result information is completed, as in the case of the input information (S31) described above, the initialization process of the area in the shared memory 12 where the reading is performed, Alternatively, a process of writing read completion information indicating that reading has been completed for the area to a predetermined area in the shared memory 12 is performed. When the read completion information is used, as described above for the input information, in the specific calculation processing task, when the specific calculation result information has been written, the corresponding read completion information is deleted or initialized. Just do.
In addition, as the generation processing of the service providing information, for example, the template data d1 previously configured by script language data such as HTML or JavaScript, image data, or the like is read from the fixed storage unit 15, and the template data d1 It can be considered that the service providing information (content) that can be displayed by the Web browser of the terminal 2 is generated by embedding the specific calculation result information at a predetermined position.
In this CGI task, the processes of steps S21 to S26 described above are repeated.

一方,Webサーバタスクにおいては,前述したCGIタスクへの前記サービス要求の引き渡し(S13)の後,CGIタスクから新たな前記サービス提供情報が取得されるまで,その取得処理が実行される(S14,S15)。
そして,Webサーバタスクにおいて,CGIタスクからサービス提供情報が取得されると,そのサービス提供情報に,ステップS11で受信された前記サービス要求に含まれるその送信元(端末2)のアドレス情報を宛先情報として付加され,その宛先情報が付加された前記サービス提供情報が,前記通信制御部14を通じてネットワーク1に送出される(S16)。これにより,前記サービス提供情報が,ネットワーク1を通じて,前記サービス要求を発信した端末2に送信(返信)される。
On the other hand, in the Web server task, after the delivery of the service request to the CGI task described above (S13), the acquisition process is executed until new service providing information is acquired from the CGI task (S14, S15).
When the service provision information is acquired from the CGI task in the Web server task, the address information of the transmission source (terminal 2) included in the service request received in step S11 is included in the service provision information. The service providing information with the destination information added is sent to the network 1 through the communication control unit 14 (S16). As a result, the service providing information is transmitted (returned) to the terminal 2 that has transmitted the service request through the network 1.

以上示したように,サーバXによれば,FORTRAN等のレガシー言語で作成された前記特定演算処理プログラムp3(レガシープログラム)が存在する場合に,これとWWW技術を基礎とするPerlやJava等の言語で作成されることが多い前記CGIプログラムp2(中継プログラム)とが,前記共有メモリ12(共用記憶手段)を介してリンクされる結果,前記特定演算処理プログラムp3の実行により得られる処理結果(前記特定演算結果情報)を,ネットワーク1を通じて提供情報として端末2へ送信するシステムを構成することができる。
しかも,前記特定演算処理プログラムp3のタスク(特定演算処理手段の一例),及び前記CGIプログラムのタスク(中継処理手段の一例)の各々は,それら相互間の情報のやりとりの際,直接的には前記共有メモリ12にアクセスするだけである。このため,I/O機能の弱いレガシー言語で作成された既存の前記特定演算処理プログラムp3について,その修正等の追加作業を極力発生させずに,Webサーバプログラムp1及びCGIプログラム2とリンクさせて有効活用することが可能となる。
As described above, according to the server X, when the specific operation processing program p3 (legacy program) created in a legacy language such as FORTRAN exists, Perl, Java, etc. based on this and the WWW technology are present. As a result of linking the CGI program p2 (relay program), which is often created in a language, via the shared memory 12 (shared storage means), processing results obtained by executing the specific arithmetic processing program p3 ( A system for transmitting the specific calculation result information) to the terminal 2 as provided information through the network 1 can be configured.
In addition, each of the task of the specific arithmetic processing program p3 (an example of the specific arithmetic processing means) and the task of the CGI program (an example of the relay processing means) is directly performed when exchanging information between them. It only accesses the shared memory 12. For this reason, the existing specific arithmetic processing program p3 created in the legacy language having a weak I / O function is linked with the Web server program p1 and the CGI program 2 without generating additional work such as correction as much as possible. It can be used effectively.

ところで,前記Webサーバタスクは,ステップS11,S12の処理と,それ以降のステップS13〜S16の処理とは親タスクと子タスクとの関係で実行されるよう構成され,1つの親タスクによりステップS11,S12の処理が繰り返されるとともに,前記サービス要求が受信されるごとに,そのサービス要求各々についてステップS13〜S16の処理を行う子タスクが起動される。従って,複数の前記サービス要求がほぼ同時に発生する(受信される)場合には,各サービス要求に対応する複数の子タスク(S13〜S16)が起動される。
さらに,それに応じて,各サービス要求ごとに,前記CGIタスク及び前記特定演算処理タスクが各々起動される。
これにより,ほぼ同時に発生する前記サービス要求にも対応可能である。
なお,以上示した実施形態では,1つの演算部11のマルチタスク処理により,Webサーバプログラムp1,CGIプログラムp2及び特定演算処理プログラムp3の各々を実行する例について示したが,これに限るものでなく,例えば,各プログラムごとに異なる演算手段(CPU及びその周辺装置(即ち,広義のコンピュータ))を設けた構成や,一部のプログラムについてのみ異なる演算手段を設けた構成等も考えられる。
By the way, the Web server task is configured so that the processes in steps S11 and S12 and the subsequent processes in steps S13 to S16 are executed in a relationship between a parent task and a child task. , S12 are repeated, and each time the service request is received, a child task that performs the processes of steps S13 to S16 is started for each service request. Accordingly, when a plurality of service requests are generated (received) almost simultaneously, a plurality of child tasks (S13 to S16) corresponding to each service request are activated.
Further, in response thereto, the CGI task and the specific calculation processing task are activated for each service request.
As a result, it is possible to respond to the service requests that occur almost simultaneously.
In the embodiment described above, an example in which each of the Web server program p1, the CGI program p2, and the specific arithmetic processing program p3 is executed by multitask processing of one arithmetic unit 11 is shown, but the present invention is not limited to this. For example, a configuration in which different arithmetic means (CPU and its peripheral devices (that is, a computer in a broad sense)) are provided for each program, a configuration in which different arithmetic means are provided only for some programs, and the like are also conceivable.

本発明は,ネットワークを通じたサービス提供を行うサーバ装置への利用が可能である。   The present invention can be used for a server device that provides a service through a network.

本発明の実施形態に係るサーバXを構成要素とするサービス提供システムAの概略構成図。The schematic block diagram of the service provision system A which uses the server X which concerns on embodiment of this invention as a component. サービス提供システムAを構成するサーバX及び端末2の概略構成を表すブロック図。The block diagram showing the schematic structure of the server X and the terminal 2 which comprise the service provision system A. サーバXによるサービス提供処理の手順を表すフローチャート。The flowchart showing the procedure of the service provision process by the server X.

符号の説明Explanation of symbols

A…サービス提供システム
X…サーバ(サーバ装置)
1…ネットワーク
2…端末
11…演算部
12…共有メモリ(共用記憶手段)
13…操作表示部
14…通信制御部
15…固定記憶部
p1…Webサーバプログラム
p2…CGIプログラム
p3…特定演算処理プログラム
S11,S12,,,…処理手順(ステップ)
A ... Service providing system X ... Server (server device)
DESCRIPTION OF SYMBOLS 1 ... Network 2 ... Terminal 11 ... Operation part 12 ... Shared memory (shared storage means)
13 ... Operation display unit 14 ... Communication control unit 15 ... Fixed storage unit p1 ... Web server program p2 ... CGI program p3 ... Specific calculation processing program S11, S12, ... Processing procedure (step)

Claims (3)

1又は複数の端末からネットワークを通じて所定のサービス要求を受信するとともに,該サービス要求に応じたサービス提供情報を前記ネットワークを通じて前記端末に送信する通信手段を備えたサーバ装置であって,
所定の入力情報に基づく特定の演算処理を,所定のプログラム言語で作成されたプログラムである特定演算プログラムに従って実行する特定演算処理手段と,
前記通信手段を通じて受信された前記サービス要求に基づいて前記特定演算処理手段に用いられる前記入力情報を生成する処理,及び前記特定演算処理手段により得られる前記特定の演算処理の結果情報に基づいて前記サービス提供情報を生成する処理の各々を,前記特定演算プログラムとは異なるプログラム言語で作成されたプログラムである中継プログラムに従って実行する中継処理手段と,
前記特定演算処理手段と前記中継処理手段とのいずれからもアクセスされる共用記憶領域を有する共用記憶手段と,を具備し,
前記中継処理手段により前記共用記憶領域に前記入力情報を書き込み,
前記特定演算処理手段により前記共用記憶領域から前記入力情報を読み出すとともに,前記特定の演算処理を実行して該特定の演算処理の結果情報を前記共用記憶手段に書き込み,
前記中継処理手段により前記共用記憶領域から前記特定の演算処理の結果情報を読み出すとともに,前記サービス提供情報を生成してこれを前記通信手段に引き渡してなることを特徴とするサーバ装置。
A server apparatus comprising a communication unit that receives a predetermined service request from one or more terminals through a network and transmits service provision information corresponding to the service request to the terminal through the network,
Specific arithmetic processing means for executing specific arithmetic processing based on predetermined input information according to a specific arithmetic program which is a program created in a predetermined program language;
Based on the service request received through the communication means, the processing for generating the input information used for the specific arithmetic processing means, and the result information of the specific arithmetic processing obtained by the specific arithmetic processing means Relay processing means for executing each processing for generating service provision information in accordance with a relay program that is a program created in a program language different from the specific operation program;
A shared storage means having a shared storage area accessed from both the specific arithmetic processing means and the relay processing means,
Writing the input information into the shared storage area by the relay processing means;
Reading the input information from the shared storage area by the specific arithmetic processing means, executing the specific arithmetic processing and writing the result information of the specific arithmetic processing to the shared storage means,
The server apparatus, wherein the relay processing means reads out the result information of the specific arithmetic processing from the shared storage area, generates the service provision information, and delivers it to the communication means.
前記特定演算プログラムが,FORTRAN,COBOL,PL1及びFORCEのうちのいずれかのプログラム言語で作成されたものである請求項1に記載のサーバ装置。   The server device according to claim 1, wherein the specific operation program is created in a program language of FORTRAN, COBOL, PL1, and FORCE. 1又は複数の端末からネットワークを通じて所定のサービス要求を受信するとともに,該サービス要求に応じたサービス提供情報を前記ネットワークを通じて前記端末に送信する通信手段を備えたサーバ装置によるネットワークを通じたサービス提供方法であって,
前記サーバ装置が,
所定の入力情報に基づく特定の演算処理を,所定のプログラム言語で作成されたプログラムである特定演算プログラムに従って実行する特定演算処理手段と,
前記通信手段を通じて受信された前記サービス要求に基づいて前記特定演算処理手段に用いられる前記入力情報を生成する処理,及び前記特定演算処理手段により得られる前記特定の演算処理の結果情報に基づいて前記サービス提供情報を生成する処理の各々を,前記特定演算プログラムとは異なるプログラム言語で作成されたプログラムである中継プログラムに従って実行する中継処理手段と,
前記特定演算処理手段と前記中継処理手段とのいずれからもアクセスされる共用記憶領域を有する共用記憶手段と,を具備しており,
前記中継処理手段により前記共用記憶領域に前記入力情報を書き込む工程と,
前記特定演算処理手段により前記共用記憶領域から前記入力情報を読み出すとともに,前記特定の演算処理を実行して該特定の演算処理の結果情報を前記共用記憶手段に書き込む工程と,
前記中継処理手段により前記共用記憶領域から前記特定の演算処理の結果情報を読み出すとともに,前記サービス提供情報を生成してこれを前記通信手段に引き渡す工程と,
を有してなることを特徴とするネットワークを通じたサービス提供方法。
A service providing method through a network by a server device including a communication unit that receives a predetermined service request from one or a plurality of terminals through the network and transmits service providing information corresponding to the service request to the terminal through the network. There,
The server device is
Specific arithmetic processing means for executing specific arithmetic processing based on predetermined input information according to a specific arithmetic program which is a program created in a predetermined program language;
Based on the service request received through the communication means, the processing for generating the input information used for the specific arithmetic processing means, and the result information of the specific arithmetic processing obtained by the specific arithmetic processing means Relay processing means for executing each processing for generating service provision information in accordance with a relay program that is a program created in a program language different from the specific operation program;
A shared storage means having a shared storage area accessed from both the specific arithmetic processing means and the relay processing means,
Writing the input information into the shared storage area by the relay processing means;
Reading the input information from the shared storage area by the specific arithmetic processing means, executing the specific arithmetic processing and writing the result information of the specific arithmetic processing in the shared storage means;
Reading the result information of the specific arithmetic processing from the shared storage area by the relay processing means, generating the service provision information and delivering it to the communication means;
A service providing method through a network, characterized by comprising:
JP2007038345A 2007-02-19 2007-02-19 Server device and service provision method via network Pending JP2008204090A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007038345A JP2008204090A (en) 2007-02-19 2007-02-19 Server device and service provision method via network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007038345A JP2008204090A (en) 2007-02-19 2007-02-19 Server device and service provision method via network

Publications (1)

Publication Number Publication Date
JP2008204090A true JP2008204090A (en) 2008-09-04

Family

ID=39781548

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007038345A Pending JP2008204090A (en) 2007-02-19 2007-02-19 Server device and service provision method via network

Country Status (1)

Country Link
JP (1) JP2008204090A (en)

Similar Documents

Publication Publication Date Title
US8190274B2 (en) Method and control device for controlling an automating system
JP4748819B2 (en) Client program, terminal, method, server system, and server program
KR102218995B1 (en) Method and apparatus for code virtualization and remote process call generation
US7992127B2 (en) Method and system of encapsulating web site transactions for computer-aided generation of web services
JP5679989B2 (en) Debug pipeline
US7647561B2 (en) System, method and computer program product for application development using a visual paradigm to combine existing data and applications
US8826297B2 (en) Creating web services from an existing web site
CN101202794A (en) Web control simulators for mobile devices
JP5936103B2 (en) System, computer, method and program for calling Java method on client
CN101876897A (en) System and method used for processing Widget on Web browser
US10877825B2 (en) System for offline object based storage and mocking of rest responses
CN103618699B (en) A kind of method and device of invocation component
CN105045887A (en) Mixed mode cross-domain data interaction system and method
CN103092599A (en) Software develop kit
CN106874271A (en) A kind of method and system that PC webpages are converted to mobile terminal webpage
CN100590624C (en) Method for exhibiting multidimensional space data based on SOA structure
CN105095220B (en) A kind of browser implementation method, terminal and virtualization agent device
JP5151696B2 (en) Program to rewrite uniform resource locator information
JP5604016B1 (en) Script caching method and information processing apparatus using the same
US20110321022A1 (en) Code generation through metadata programming for mobile devices and web platforms to ease access to web services
KR20130068564A (en) Terminal apparatus having operating system based on web and method for providing service using thereof
WO2010087071A1 (en) Web server system and program
KR101739854B1 (en) Computational science open platform, test system and method
JP2008204090A (en) Server device and service provision method via network
JP2007018091A (en) Information processor, information processing system, application development support method and program