JP2009146244A - File distribution system, file distribution method, program and recording medium - Google Patents

File distribution system, file distribution method, program and recording medium Download PDF

Info

Publication number
JP2009146244A
JP2009146244A JP2007324192A JP2007324192A JP2009146244A JP 2009146244 A JP2009146244 A JP 2009146244A JP 2007324192 A JP2007324192 A JP 2007324192A JP 2007324192 A JP2007324192 A JP 2007324192A JP 2009146244 A JP2009146244 A JP 2009146244A
Authority
JP
Japan
Prior art keywords
job
local system
workflow
plug
system
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
JP2007324192A
Other languages
Japanese (ja)
Other versions
JP2009146244A5 (en
Inventor
Tetsuhiko Omori
哲彦 大森
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 JP2007324192A priority Critical patent/JP2009146244A/en
Publication of JP2009146244A publication Critical patent/JP2009146244A/en
Publication of JP2009146244A5 publication Critical patent/JP2009146244A5/ja
Application status is Pending legal-status Critical

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a file distribution system, file distribution method, program and recording medium. <P>SOLUTION: This file distribution system 100 includes an operation panel 112 which receives workflow execution instructions as a sequence of a plurality of jobs, a workflow execution section 118 which is called by a user input, manages workflow execution as a sequence of the jobs, assigns the jobs to other local systems 136, 138 through a network 128, receives the processing results from the other local systems 136, 138, and delivers the results to the succeeding jobs in the workflow, and various processing sections 120 mounted as plug-in for the jobs constituting the workflow. The workflow execution section 120 transmits job object data together with the plug-in for executing the jobs when the other local systems 136, 138 do not have the plug-in to perform the jobs. <P>COPYRIGHT: (C)2009,JPO&INPIT

Description

  The present invention relates to a file distribution system, a file distribution method, a program, and a recording medium that distribute processing loads in cooperation with other processing apparatuses.

  In recent years, an image processing apparatus (hereinafter referred to as an MFP) provides a plurality of functions such as a copying function, a facsimile function, an OCR function, and a printer function. The MFP executes a plurality of application programs controlled by an operating system (hereinafter referred to as an OS) such as UNIX (registered trademark) or LINUX (registered trademark) in order to provide multiple functions. Further, the MFP is connected to a network such as a local area network (LAN) or the Internet, and can send and receive files using a data transfer protocol such as SMTP and HTTP.

  Therefore, recent MFPs can not only perform image processing but also distribute files. Therefore, when a plurality of MFPs are connected to a network, they can be regarded as constituting a file distribution system. . Hereinafter, the file distribution system reads a file that can be processed by the information processing apparatus, such as various data and programs, by a designated method, executes the process, and transmits it to a plurality of local systems via a network. Is defined as a system.

  A case will be described in which the file distribution system described above processes a workflow corresponding to a user request in a sequence of a plurality of jobs. The workflow includes (1) image data (TIFF format) scanned by a local system such as an MFP and converted into a BMP file, (2) OCR processing is performed using the BMP file, 3) An example of a workflow in which the result of OCR processing is delivered by e-mail will be described. The workflow is defined by the user on the local system together with the job constituting the workflow, the job to be executed in another local system, the execution destination, and the like.

  FIG. 9 shows a workflow processing process in a conventional file distribution system. FIG. 9A is a conventional example in the case where a workflow is executed by a single local system 900, and FIG. 9B is a flowchart in which the workflow is processed while load balancing is performed between the local systems 900 and 920 connected to the network. A conventional example will be shown. As shown in FIG. 9, the workflow is defined as a sequence of a series of jobs. In the conventional example of FIG. 9A, jobs 902, 904, and 906 are executed on a single local system 900. On the other hand, in the conventional example shown in FIG. 9B, jobs 912 and 916 are executed on the local system 910, and a job 914 is executed on the other local system 920. When a user defines a workflow, as shown in FIG. 9A, the user can specify that a series of jobs are executed on the same local system. Further, the user can also set the workflow to perform only a specific job 902 on another local system 920 as shown in FIG. 9B.

When a user desires to execute a workflow, the user first selects a workflow to be executed on the local system. The local systems 900, 910, and 920 perform processing on data according to a workflow designated by the user, and perform file distribution processing to other local systems. As a file distribution system as described above, for example, in Japanese Patent No. 3777767 (Patent Document 1), when installing a resource between computers connected via a network, an increase in load related to the installation of the resource is avoided. Discloses a method and system for sequentially installing resources in a daisy chain manner. The system disclosed in Patent Document 1 connects computers via a network, and sequentially installs resources to be installed on the computer in a daisy chain manner.
Japanese Patent No. 3777767

  Although the system disclosed in Patent Document 1 also distributes files, the workflow is not shared among a plurality of local systems. The system described in Patent Document 1 can reduce the file transmission load of a file server or the like, but cannot reduce the processing load in a specific local system by distributing processing objects. Absent. Furthermore, the system described in Patent Document 1 requires a server to be arranged in the network, and cannot flexibly cope with a change in the network configuration, and increases the system cost. The file distribution system via the server has a problem in the robustness of the system such that the entire file distribution function does not function even if each MFP is healthy due to server down or the like.

  In addition, the above-described conventional file distribution system is premised on that the job transfer destination local system must be able to execute the received job. Further, even when a resource file is distributed by a daisy chain method, it is assumed that the distribution destination computer can install the distributed resource file.

  Furthermore, in the conventional file distribution system, the user has to register the transfer destination of the job or resource file in the local system in advance. In other words, the conventional file distribution system guarantees the capability of the distribution destination, and the distribution destination must be designated in advance in the workflow, and performs optimal load distribution in the file distribution system constituting the file distribution system. There was a problem that I could not. Furthermore, when the distribution server is used, the system robustness that cannot flexibly cope with the change in the system configuration and the entire workflow processing function due to the server down is not sufficient.

  The present invention has been made in view of the above-described problems of the prior art, and the local system automatically selects the file in accordance with the processing efficiency of the workflow, the license status, and the like without specifying the file transfer destination in advance. It is an object of the present invention to provide a file distribution system, a file distribution method, a program, and a recording medium that can select a distribution destination and enable optimal load distribution in the file distribution system.

  In the present invention, an MFP or the like is used as a local system, and a plurality of local systems are connected to a network to constitute a file distribution system. Jobs constituting the workflow are distributed from the local system to other local systems. The job distribution is dynamically selected in the local system of the distribution source according to the job type, the performance of other local systems, license management, and the like.

  When optimizing load balancing, if the local system other than the destination does not have a program to execute the job, plug the program that executes the job together with the target data of the job within the range that does not violate the license restrictions. In to other local systems. The successful installation of the plug-in in the other local system is sent from the other local system to the transmission source local system. When the local system receives a successful installation, it issues an execution command for instructing a process using a plug-in for the sent target data, and continues the workflow.

  The local system also manages licenses for plug-in programs. When plug-ins are subject to license restrictions, efficient execution management of workflows is performed while managing so that the number of licenses is not shared within the file distribution system. Do.

  That is, according to the present invention, it is possible to improve the processing efficiency of the entire workflow by optimizing the job processing efficiency in the file distribution system.

  Further, in the present invention, it is not necessary to assign a local system to be distributed in advance to the workflow, and a server including a file distribution function is not used, so that processing efficiency and license management are improved, and the configuration of the file distribution system is changed. It becomes possible to respond flexibly.

That is, according to the present invention, a file distribution system including a plurality of local systems connected via a network,
Interface means for receiving a workflow execution request that is a sequence of a plurality of jobs;
Workflow execution that is called by user input, manages execution of the workflow, assigns the job to another local system via the network, and receives a processing result from the other local system and passes it to a subsequent job of the workflow Means,
Plug-in means for executing the job,
The workflow execution means selects the other local system with reference to an assignment means for assigning the job, and executes the job when the other local system does not have the plug-in means for executing the job. A file distribution system for transmitting the target data of the job together with the plug-in means for assigning the job is provided.

  The workflow execution unit of the present invention uses the distribution history and processing capability registered in the allocation unit, and the allocation unit increases the selection priority of other local systems in which no distribution failure is registered in the distribution history. You can register. The local system of the present invention includes license management means, and when the local system distributes the plug-in means, the workflow execution means does not exceed the number of licenses of the plug-in means and distributes the distribution history. Other local systems for which no failure has been registered can be selected.

  The allocating means of the present invention registers a moving average for an average execution time of a distribution job as processing capability, and the workflow executing means refers to another local system that allocates the job with reference to the moving average value. You can choose. The local system of the present invention may include an updating unit that detects a change in a local system configuration on the network of the file distribution system and updates the allocation unit. The other local system of the present invention can distribute the job to the second other local system in a daisy chain manner for the job constituting the workflow.

Further, according to the present invention, there is provided a file delivery method executed by a plurality of local systems connected via a network,
Receiving a workflow execution request that is a sequence of multiple jobs;
Selecting another local system in response to receipt of the workflow execution request with reference to an assigning means for assigning a job constituting the workflow; and
Requesting the other local system to execute the job;
Receiving the processing result of the job from the other local system,
The step of selecting includes
Using the distribution history and processing capability registered in the assigning means, and selecting another local system in which distribution failure is not registered in the distribution history;
Determining whether the selected other local system has a plug-in means for the job;
When the other local system does not have plug-in means for the job, by transmitting the target data of the job to the other local system via the network together with the plug-in means for executing the job A file delivery method comprising: assigning the job.

The selecting step of the present invention comprises:
Further comprising: determining the number of licenses of the plug-in means; and selecting another local system having a higher selection priority that does not exceed the number of licenses and in which no distribution failure is registered in the distribution history. it can.

  The selecting step of the present invention may include a step of selecting another local system to which the job is to be assigned with reference to the value of the moving average using the moving average of the average execution time of the distribution job as a processing capability.

  In the present invention, an apparatus-executable program for implementing any one of the above-described means in an image processing apparatus can be provided. Further, the present invention can provide a device-readable storage medium that records a device-executable program for realizing any of the above-described means in an image processing device.

  Hereinafter, although this invention is demonstrated based on embodiment, this invention is not limited to embodiment mentioned later. FIG. 1 shows an embodiment of functional blocks of a file distribution system 100. The file distribution system 100 shown in FIG. 1 is configured by connecting a plurality of MFPs to a network 128. The MFPs constituting the file distribution system 100 will be referred to as local systems 110, 136, and 138 below.

  The network 128 is configured to include a local area network (LAN), the Internet, or the like, and the local system transmits and receives jobs constituting the workflow via the network 128. In the present embodiment, the file distribution system 100 will be described on the assumption that a plurality of local systems 110, 136, and 138 are connected to a LAN and perform file transfer at the MAC address level. However, the file distribution system 100 may be interconnected via a wide area network or the Internet that performs communication over a plurality of domains connected by routers using the IP protocol.

  The network 128 further includes an SMTP server 130 that performs mail transfer, an electronic document management system (EDMS) 132 that manages an electronic document, ITU recommendation X. A file server 134 that enables access to a file using the 500 protocol is connected. The SMTP server 130, the EDMS 132, and the file server 134, in response to access requests from the local systems 110, 136, 138, etc., respectively, store various data and various files based on a file transfer protocol such as SMTP, HTTP, or FTP. System 110, 136, 138.

  The local system 110 includes an operation panel 112 that receives input from a user, a display control unit 114 that controls display on the operation panel 112, a scanner 116 that acquires an image, and the like. The operation panel 112 is an interface unit for receiving input from the user and displaying processing results and the like to the user. The local system 110 receives commands from the user and provides functions such as copying, printers, image scanners, facsimiles, and mail transmission / reception.

  Data from the operation panel 112 is sent to the data processing unit via the internal bus 140. The data processing unit includes a workflow execution unit 118, various processing units 120 including software modules for providing various functions, and a data access unit 122 for accessing processing target data and the like. It is out. The workflow execution unit 118 reads a management table set by the user, a management table for managing job distribution destinations, and the like from the storage device 124 at the time of execution, and manages job execution and distribution of target data and plug-ins according to the workflow. .

  The various processing units 120 include, for example, a compression / decompression processing program for facsimile transmission / reception, a converter plug-in for converting a format such as BMP, TIFF, GIF, PNG, JPEG, JPEG2000 to another format, and a mailer for performing mail transmission / reception. In addition to plug-ins, it can be configured to include database programs. In addition, the local system 110 may include any program corresponding to the usage as appropriate. These processing programs are configured as plug-in programs as long as hardware dependency is allowed, and are used in common between local systems.

  The local system 110 also includes a storage device 124 such as a hard disk device, EEPROM, EPROM, flash memory, or SD card. The storage device 124 stores data necessary for the processing by the local system 110, and registers access restriction data, an address book, a management table in which resource statuses used for file distribution are registered, and the like. Other local systems 136 and 138 connected to the network 128 have the same configuration except for the plug-in implementation status and specific function differences.

  In this embodiment, the remote communication unit 126 includes a network interface card (NIC). The remote communication unit 126 functions as an interface for sending job target data and plug-ins to the network 128 via Ethernet (registered trademark) or the like. The local systems 136 and 138 also function as an interface for receiving an execution request sent from the local system 110 via the network 128 instead of inputting a workflow execution request by a user input. To part 118 or the like.

  FIG. 2 shows a software configuration of the local system 110. The local system 110 is controlled by an operating system (hereinafter referred to as OS). As the OS 202, UNIX (registered trademark), LINUX (registered trademark), or the like can be used, but is not limited thereto. The OS 202 manages execution of the application 206 via the middleware 204, and controls hardware devices requested by the application, such as a storage device, a facsimile modem, a scanner, and an image forming engine, in response to a request from the application 206. .

  The application 206 is created in an object-oriented programming language such as C, C ++, JAVA (registered trademark), PERL, or RUBY, and is installed for each local system. In addition, the local system 110 describes functions used by various applications in directories that manage libraries and the like, for example, libraries that register programs defined by extensions such as “.so”, “plugins”, and the like. Are registered as plug-ins 208 to 214 specified by an extension such as “.jar”. For example, the application 206 links the files specified by the extension “.so” or “.Jar” at the time of activation, and executes processing using the plug-ins 208 to 214.

  In the present embodiment, the plug-in described above is not particularly limited. For example, in this embodiment, a program that provides any function such as an OCR, a mailer, a format converter, and a compression / decompression program can be registered as a plug-in.

  FIG. 3 shows an embodiment of file distribution processing of the file distribution system 100. The file distribution process shown in FIG. 3 will be described on the assumption that the local system 300 and another local system 320 perform file distribution. The local system 300 includes a format conversion processing unit 302, an OCR processing unit 304, and a data transmission / reception unit 306. These functional units are implemented as plug-ins.

  The workflow execution unit 308 controls the execution of a workflow set by a user, separates a user-set job to be executed in the local system 300 from a job to be executed in another local system, and a job to be executed in another local system. Manages dispatching and processing of processing results. Furthermore, the workflow execution unit 308 manages a management table for registering the resource statuses of local systems that constitute the file distribution system 100 including the self-device. The management table is a data structure that functions as an assigning unit when assigning a job to another local system. The management table will be described in detail later.

  The local system 300 further includes an execution request receiving unit 310, a file transfer processing unit 312, and an execution request unit 314. When the local system 300 is a workflow execution start system, the execution request reception unit 310 receives an input from the operation panel. In the case of the other local system 320, the execution request reception unit 330 receives data from the remote communication unit that receives the execution request packet or frame and sends it to the workflow execution unit 328.

  The file transfer processing unit 312 processes the processing target data such as an image, a document, and a multimedia for the processing destination data according to the determination of the workflow executing unit 308 with respect to the file transmission destination determined by the workflow executing unit 308. Send along with the plug-in to enable. On the other hand, the file transfer processing unit 312 also has a function of receiving a processing result in another local system and notifying the workflow execution unit 308. The execution request unit 314 requests the other local system 320 to execute a job constituting a series of workflows.

  The local systems 300 and 320 can execute the file transfer process according to the characteristics of the network 340. For example, when the file distribution system 100 is configured only by connecting a single office floor, the file transfer processing unit 312 performs file transfer using the MAC address of the NIC included in each local system, and the MAC address and IP address. File transfer using packets such as TCP / IP including

  On the other hand, when the file transfer system 100 is configured between local systems managed by different routers, a file is transferred using a TCP / IP packet format including an IP address and a file transfer protocol such as HTTP or FTP. Transmission and reception may be performed.

  In the embodiments described below, the network 340 will be described as being configured in a LAN configured across the office floor. When receiving a workflow start command from the user, the local system 300 designates a workflow to be executed and notifies the workflow execution unit 308 of it. The workflow execution unit 308 activates a job constituting the designated workflow. In the embodiment shown in FIG. 3, the workflow includes (1) converting the TIFF format to the BMP format, and (2) sending the image data after the format conversion to the other local system 320 and performing the OCR process to generate the text data. It is assumed that the local system 300 receives the generated text data as a processing result and transmits the data from the local system 300 by e-mail.

  The workflow execution unit 308 is activated upon receiving a notification of workflow execution, and acquires a plug-in registered in a library or a specific folder at the same time as the activation. The workflow execution unit 308 first calls the format conversion processing unit 302 according to the workflow sequence. The format conversion processing unit 302 is configured as a file converter plug-in, and converts the image data acquired by the workflow execution unit 308 from TIFF to BMP. When the image data is converted into a BMP file, the workflow execution unit 308 is notified. The image data is sent to the file transfer processing unit 312 and dispatched from the file transfer processing unit 312 to the other local system 320.

  In this embodiment, the workflow execution unit 308 refers to the management table and selects another local system as a transfer destination during format conversion. If the selected other local system 320 does not have a plug-in for executing a job for processing target data, the plug-in is sent within a range of license restrictions and the like. The other local system 320 receives the plug-in as data to be processed depending on the BMP file and the status of the other local system 320. When the plug-in is received, the other local system 320 registers the plug-in in the “plugins” folder or the like, executes the installation process, and waits for an execution request from the local system 300 specifying the job content. .

  When the other local system 320 receives the execution request from the local system 300, the other local system 320 activates the workflow execution unit 328 and executes the requested job using a plug-in that executes the designated job. When the job execution is completed and the processing result is obtained, the processing result is sent to the local system of the transmission source. Upon receiving the processing result, the local system 300 notifies the workflow execution unit 308 and activates the data transmission / reception unit 306 such as a mailer defined as the next job on the workflow. When the data transmission / reception unit 306 is activated, the data transmission / reception unit 306 transmits the received data as transmission data to the mail address specified in the workflow, thereby completing the workflow.

  In another embodiment, the other local system 320 can issue an execution request from the execution request unit 334 in a daisy chain manner in order to cause the second other local system to execute the job. In this embodiment, for example, when executing a request job, if another local system has set transfer processing for a sub-job that constitutes the request job in advance, the capability of the other local system is dedicated to the job input by the user. This is applied to the case where distribution to the second other local system is necessary.

  FIG. 4 is a flowchart of processing executed by the local system 300 in this embodiment. The local system 300 as the transmission source starts the processing from step S400 and thereafter enters a standby state until the system is shut down or reset, and starts the processing by instructing the workflow execution from the user.

  In step S401, the local system 300 acquires an image and performs format conversion. These processes are executed by starting a scanner plug-in and a converter plug-in configured as plug-ins. For example, the scanner plug-in reads an image from an image reader, and generates an image file in a TIFF format as a default setting. The converter plug-in converts the generated image file in the TIFF format into a format such as BMP that can be processed by the OCR plug-in. Note that the local system 300 can also perform format conversion by reading an image file that has already been stored in the storage device, instead of acquiring an image from an image reader in accordance with the workflow settings.

  In step S402, the local system 300 acquires the OCR processing setting specified by the workflow setting or the like from the workflow execution unit 308. In step S403, the local system 300 starts the selection program included in the workflow execution unit 308, and from the management table, Look up the processing efficiency and past job history, and select the job transfer destination. Whether the OCR process is executed by the local system 300 or the other local system 320 is determined based on whether the local system 300 has the function or whether the local system 300 and the other local system 320 The local system 300 selects a difference in processing capacity between the two. In step S404, the workflow execution unit 308 determines whether the other local system 320 of the transfer destination has an OCR plug-in with reference to the management table. If it is determined that the other local system 320 of the transfer destination has the OCR plug-in (yes), the process branches to step S405, and the target data of the job is sent.

  On the other hand, if the local system 320 other than the transfer destination does not have the OCR plug-in (no), the local system 300 starts the license management program and registers the number of OCR plug-in licenses in the management table in step S407. The number of OCR plug-ins in the device information thus obtained is counted and acquired, and the number of OCR plug-ins installed in the file distribution system 100 is determined. If the number of licenses exceeds the set number (no), the process branches to step S403, the management table is referenced to select another local system ranked next, and the presence or absence of the transfer destination OCR plug-in is confirmed again. To do.

  On the other hand, if the number of licenses is equal to or less than the set number (yes), in step S408, the OCR plug-in is distributed to the other local system 320 in addition to the target data. After the distribution of the target data or the target data and the OCR plug-in is completed, the local system issues an execution request in step S406. The execution request is in a format in which the identification value indicating the workflow processing, the target data identification value, the processing setting, and other job commands to be executed in the local system are included in the payload of the packet or frame. Other local systems execute plug-in calls, reading target data, and plug-in calls for OCR processing using each value included in the execution request as an argument.

  In addition, after issuing an execution request, the local system 300 waits for reception of an execution result from another local system 320 in step S409. When the local system 300 receives the execution result in step S409 (yes), in step S410, the local system 300 calls the plug-in of the next job in the workflow definition and starts the next job. Thereafter, the local system 300 determines in step S411 whether there is a remaining job in the workflow. If there is a remaining job (yes), in step S410, the local system 300 executes the remaining job, for example, mail delivery processing. Is called and executed. On the other hand, if there is no remaining job in step S411 (no), the workflow processing is terminated in step S412.

  FIG. 5 shows an embodiment of a management table 500 held by a local system that constitutes the file distribution system 100. The management table 500 is managed by the workflow execution unit of each local system, for example, the workflow execution unit 308, and is updated whenever a new local system is added or the state of the connected local system is changed. The management table 500 is shared with the local system in the file transfer system 100. Each local system supports SNMP (Simple Network Management Protocol) in order to share the management table 500. When the resource status of the local system is changed, the SNMP trap command is used to change the status. The corresponding entry contents of other local systems can be modified by broadcasting or multicasting.

  In addition, the management table 500 can be periodically updated by the local system by polling the other local system and obtained from the MIB of the other local system. In any case, the local system constituting the file distribution system 100 functions as a peer node in the file distribution system 100, and each local system distributes jobs in the file distribution system 100 according to the workflow defined by the user. , Enabling workflow load balancing.

  Hereinafter, the entry items of the management table 500 will be described with reference to FIG. The local system will be described as being referred to as the local system A. The management table 500 includes a record for registering the resource status for each of the other local systems B, C, and D. Note that the resource status of the local system A is managed separately by the MIB or the like. The management table 500 includes a distribution history field 504, an average processing time field 506, a resource information field 508, a rank information field 510, an address field 512, and the like for the record 502 assigned for each local system.

  In the distribution history field 504, a transfer failure flag such as a history of transfer failure in an attempt to transfer a file in the past is set and used for designating the priority of selection when transferring the file. The average processing time field 506 registers an average time (s) from issuance of a job request to the corresponding local system until reception of an execution result, and registers a moving average value updated every time job distribution is performed. can do.

  This value gives a measure of processing capacity including the network environment of the other local system. In this embodiment, the selection priority is set higher for other local systems having a higher processing capacity than the average processing time registered for the local system. In another embodiment, the local system B to which the job is to be transferred has a plug-in such as an OCR, so that the local system B having the highest processing capacity is selected, for example, and the plug-in transmission is made efficient. You can also Note that the local system can hold data corresponding to FIG. 5 as an MIB other than the management table 500, for example. In addition, the management table 500 can register data of the entire local system connected to the network, and can assign a priority to each local system most suitable for processing.

  The resource information field 508 is a field in which data registered in the MIB of the local system is received by polling, broadcast, multicast, or the like, and the local system A registers resource states of other local systems B, C, D, and the like. The resource information field 508 is used for determining the number of licenses when distributing an OCR plug-in or the like, and when the plug-in cannot be transmitted due to the number of licenses or the like, Referenced to select a low local system as a delivery destination. The resource information field 508 is provided with an additional field for registering the number of licenses that can be licensed for each type of plug-in, so that license management can be performed. In the embodiment of the management table 500 shown in FIG. 5, the local system D does not have an OCR plug-in, but the selection order has the highest priority from the viewpoint of processing efficiency.

  From the viewpoint of improving the processing efficiency, the rank information field 510 registers selection rank information determined based on the value of the average processing time field 506 except for other local systems in which failure is registered in the distribution history. If the local system with the highest processing speed does not have a plug-in and the number of licenses is also the upper limit, the lower-ranked, for example, local system B is selected as the next-best distribution destination. The In the address field 512, an address on the network of each local system is registered.

  As an address, either a MAC address or an IP address can be used. However, when file distribution is performed within a specific LAN, MAC transfer using the MAC address may be used, and it is connected outside the LAN. When sending a job to the local system, an IP address or the like can be registered. The IP address may be either IPv4 or IPv6. In order to acquire these data, the local system A can use any protocol for acquiring network data such as ARP and PING / ICMP protocol in addition to the SNMP protocol.

  FIG. 6 is a flowchart showing processing of another local system that receives job distribution. The processing of the other local system starts from step S600. When the other local system starts the process, it executes various processes in response to individual inputs from the user. When the target data or the target data and the plug-in are received in step S601, the received data is buffered. In step S602, the plug-in is installed in an appropriate folder “Plugins” or the like. If the installation is successful, the other local systems notify the distribution source local system of the installation success using unicast, multicast, or the like.

  In step S603, the process waits until an execution request is received from the local system that started the workflow. When another local system receives the execution request (yes), the OCR plug-in is called in step S604 to process the target data. Thereafter, in step S605, a processing result is generated and sent to the execution request issuer. In the embodiment to be described, the processing result can be text data or the like. In other embodiments, processing for converting BMP files into PDF data or the like can be used in combination. When the other local system does not receive the execution request (no), the process returns to step S603 and waits for the reception of the execution request while executing the process requested by the user.

  When the other local system ends the processing of steps S601 to S605 described above, the various data for executing the plug-in and the workflow are discarded, and the processing related to the workflow is performed as a state before receiving the job request. The process ends in S606. Even when a plug-in or the like installed by another local system is discarded, the management table 500 managed by the local system 300 is updated in response to receiving the processing result from the other local system.

  FIG. 7 shows an embodiment of a graphical user interface (GUI) 700 for workflow definition displayed on the operation panel 112 of the file distribution system 100. The GUI 700 displayed on the operation panel 112 describes the name of the workflow and presents the contents of the workflow to the user. Further, an embodiment in which subsequent jobs 704 to 708 after the scan job 702 are set is shown. FIG. 7 exemplarily shows a process in a case where the user desires to execute, for example, an e-mail job 704 for transmitting an e-mail after the scan job 702. When storing scanned image data in a specific folder, the user selects “Folder Plug-in” from the plug-in list frame displayed on the left-hand side of the GUI, for example, corresponding to a job subsequent to the scan job 702 Drag and drop to the point you want. With this processing, a job subsequent to the scan job 702 is set as an e-mail job 704. Note that the workflow shown in FIG. 7 is not only performed sequentially but also indicates that a plurality of workflows can be processed in parallel in a starburst manner with the scan job 702 as the center.

  In the workflow shown in FIG. 7, a scan job 702 → an image conversion job 706 → a folder distribution job 708 can be set in parallel with the e-mail job 704. In addition, for example, when the user double-clicks the icon of each subsequent job 704 to 708, another GUI that allows the user to specify the local system to be executed is displayed, and the other local system is executed for each subsequent job. It is possible to set.

  FIG. 8 shows an embodiment of a workflow 800 defined in the local system 100. The workflow 800 shown in FIG. 8 is described by a structured document such as XML, and processing is executed using an XML parser, DOM (Document Object Model), and the like when the workflow is executed. In the workflow 800 shown in FIG. 8, the succeeding job of the scan job is described as a plug-in sequence, and the folder job 708 to be executed after the plug-in for the image conversion job 706, ie, shown in FIG. A job of the next generation of the tree structure is described as a plug-in in a range sandwiched between a tag <Next> and a tag </ Next>. In the embodiment of FIG. 8, the folder job 708 specifies that the file is stored at addresses “¥ 111.111.111.111 \ Folder_1” and “¥ 111.111.111.222 \ Folder_2” as storage locations. The storage location “¥ 111.111.111.111 \ Folder_1” illustrated in FIG. 8 is, for example, the backup storage location address of the own device, and “¥ 111.111.111.222 \ Folder_2” is the storage location address of the file server 134.

  Also, an e-mail job 704, which is a job of the same generation as the image conversion job 706, is described below the plug-in specification, e-mail transmission destination address, and the like, and then the e-mail transmission job is executed. . Among these, for example, when the local system determines that the image conversion job 706 is to be executed by another local system with reference to the management table 500, the image conversion job 706 is transferred to the other local system and is transmitted to the local system of the transmission source. Is in a state of waiting for receipt of a processing result, and can further respond to a processing request from another user.

  As described above, the file distribution system 100 according to the present embodiment can complete the execution of a workflow using a plurality of local systems connected to the network 128 as peer nodes. As a result, the file distribution system 100 can distribute an efficient job to the other local systems 320 in the network 128 using, for example, the local system 300 with good accessibility from the user as a window, and optimal load distribution. Can be achieved.

  Each local system also performs plug-in distribution license management when the plug-in has a license, and can also achieve license management at the same time. The file distribution system 100 of the present embodiment enables peer-to-peer file distribution without using a data distribution server, unlike the conventional file distribution system, so it can flexibly cope with changes in the network configuration and the like. However, it is possible to optimize the workflow execution efficiency.

  The functions of this embodiment are described in an object-oriented programming language such as C ++, Java (registered trademark), Java (registered trademark) Beans, Java (registered trademark) Applet, Java (registered trademark) Script, Perl, and Ruby. The plug-in program can be stored in a device-readable recording medium such as a hard disk device, CD-ROM, MO, flexible disk, EEPROM, EPROM, and distributed. Can be transmitted over a network in a form that is possible.

  Although the present embodiment has been described so far, the present invention is not limited to the above-described embodiment, and other embodiments, additions, changes, deletions, and the like can be conceived by those skilled in the art. It can be changed, and any aspect is within the scope of the present invention as long as the effects and effects of the present invention are exhibited.

1 is a schematic diagram of a file distribution system of the present embodiment. The block diagram which showed the software configuration of the local system. The figure which showed embodiment containing the data flow of the file delivery process of a file delivery system. The flowchart of embodiment of the file delivery process which a local system performs. The figure which showed embodiment of the management table. The flowchart of embodiment of the process of the other local system to which a job is allocated. The figure which showed embodiment of GUI in the case of setting a workflow. The figure which showed embodiment of the workflow definition in a local system. The figure which showed the prior art example of the workflow.

Explanation of symbols

DESCRIPTION OF SYMBOLS 100 ... File delivery system, 112 ... Operation panel, 114 ... Display control part, 116 ... Scanner, 118 ... Workflow execution part, 120 ... Various processing parts (plug-in), 122 ... Data access part, 124 ... Memory | storage device, 126 ... Remote communication unit 128 ... Network 130 ... SMTP server 132 ... EDMS 134 ... File server 200 ... Hardware 202 ... OS 204 ... Middleware 206 ... Application 208, 210, 212, 214 ... Plug-in 300 ... Local system, 320 ... Other local system, 500 ... Management table

Claims (11)

  1. A file delivery system including a plurality of local systems connected via a network,
    Interface means for receiving a workflow execution request that is a sequence of a plurality of jobs;
    Workflow execution that is called by user input, manages execution of the workflow, assigns the job to another local system via the network, and receives a processing result from the other local system and passes it to a subsequent job of the workflow Means,
    Plug-in means for executing the job,
    The workflow execution means selects the other local system with reference to an assignment means for assigning the job, and executes the job when the other local system does not have the plug-in means for executing the job. A file distribution system for transmitting the target data of the job together with the plug-in means for assigning the job.
  2.   The workflow execution unit uses the distribution history and processing capability registered in the allocation unit, and the allocation unit registers a high selection priority of other local systems in which no distribution failure is registered in the distribution history. The file distribution system according to claim 1.
  3.   The local system includes a license management unit. When the local system distributes the plug-in unit, the workflow execution unit does not exceed the number of licenses of the plug-in unit, and a distribution failure is registered in the distribution history. The file distribution system according to claim 2, wherein another local system that has not been selected is selected.
  4.   The assigning unit registers a moving average for an average execution time of a distribution job as a processing capability, and the workflow executing unit selects another local system to which the job is assigned with reference to the moving average value. The file delivery system according to claim 2.
  5.   The file distribution system according to claim 1, wherein the local system includes an update unit that detects a change in a local system configuration on the network of the file distribution system and updates the allocation unit.
  6.   The file delivery system according to claim 1, wherein the other local system delivers the job to the second other local system in a daisy chain manner for the job constituting the workflow.
  7. A file delivery method executed by a plurality of local systems connected via a network,
    Receiving a workflow execution request that is a sequence of multiple jobs;
    Selecting another local system in response to receipt of the workflow execution request with reference to an assigning means for assigning a job constituting the workflow; and
    Requesting the other local system to execute the job;
    Receiving the processing result of the job from the other local system,
    The step of selecting includes
    Using the distribution history and processing capability registered in the assigning means, and selecting another local system in which distribution failure is not registered in the distribution history;
    Determining whether the selected other local system has a plug-in means for the job;
    When the other local system does not have plug-in means for the job, by transmitting the target data of the job to the other local system via the network together with the plug-in means for executing the job A file delivery method comprising: assigning the job.
  8. The step of selecting includes
    Further comprising: determining the number of licenses of the plug-in means; and selecting another local system having a high selection priority that does not exceed the number of licenses and in which no distribution failure is registered in the distribution history. Item 8. The file delivery method according to Item 7.
  9.   The said selecting step includes the step of selecting another local system to which the job is to be allocated with reference to the value of the moving average with the moving average of the average execution time of the distribution job as the processing capability. File delivery method.
  10.   An apparatus-executable program for realizing each unit according to claim 1 in an image processing apparatus.
  11.   A device-readable storage medium storing the program according to claim 10.
JP2007324192A 2007-12-17 2007-12-17 File distribution system, file distribution method, program and recording medium Pending JP2009146244A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007324192A JP2009146244A (en) 2007-12-17 2007-12-17 File distribution system, file distribution method, program and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007324192A JP2009146244A (en) 2007-12-17 2007-12-17 File distribution system, file distribution method, program and recording medium

Publications (2)

Publication Number Publication Date
JP2009146244A true JP2009146244A (en) 2009-07-02
JP2009146244A5 JP2009146244A5 (en) 2010-11-25

Family

ID=40916764

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007324192A Pending JP2009146244A (en) 2007-12-17 2007-12-17 File distribution system, file distribution method, program and recording medium

Country Status (1)

Country Link
JP (1) JP2009146244A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012105067A (en) * 2010-11-10 2012-05-31 Fuji Xerox Co Ltd Image processing device, system, and program
JP2013012014A (en) * 2011-06-29 2013-01-17 Yahoo Japan Corp Application platform device, application platform system and operation method of application platform device
JP2016034088A (en) * 2014-07-31 2016-03-10 カシオ計算機株式会社 Image storage device, image management method, and program

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002154254A (en) * 2000-11-17 2002-05-28 Casio Comput Co Ltd System for issuing and allocating securities, and recording medium
JP2002222021A (en) * 2001-01-25 2002-08-09 Hitachi Information Technology Co Ltd License managing method for software and storage medium
JP2006350529A (en) * 2005-06-14 2006-12-28 Konica Minolta Business Technologies Inc Information processor and workflow control program

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002154254A (en) * 2000-11-17 2002-05-28 Casio Comput Co Ltd System for issuing and allocating securities, and recording medium
JP2002222021A (en) * 2001-01-25 2002-08-09 Hitachi Information Technology Co Ltd License managing method for software and storage medium
JP2006350529A (en) * 2005-06-14 2006-12-28 Konica Minolta Business Technologies Inc Information processor and workflow control program

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012105067A (en) * 2010-11-10 2012-05-31 Fuji Xerox Co Ltd Image processing device, system, and program
JP2013012014A (en) * 2011-06-29 2013-01-17 Yahoo Japan Corp Application platform device, application platform system and operation method of application platform device
JP2016034088A (en) * 2014-07-31 2016-03-10 カシオ計算機株式会社 Image storage device, image management method, and program

Similar Documents

Publication Publication Date Title
EP0859309B1 (en) System and Method of administering work group printers
EP2249555B1 (en) Method of and apparatus for image formation and computer product
US8184325B2 (en) Integrated document delivery method and apparatus
JP4557475B2 (en) Network server, set top box, and control method thereof
JP2009146403A (en) Server device and method for updating software of multiple network nodes
JP2006107456A (en) Method and system for managing state of user or state of device in information processing system
JP2004046817A (en) Program, storage medium, data management device, and data management system
JP4971610B2 (en) Program and method for managing device driver and information processing apparatus
JP2004007467A (en) Image forming apparatus and remote management system
US7177034B2 (en) Print managing apparatus and print managing method
US20040109188A1 (en) Image forming apparatus and methods used in the image forming apparatus
US7631033B2 (en) Hosted method and system for automated proxy creation of device resident services
JP2004005417A (en) Software management through bundling
US20040021890A1 (en) Image forming apparatus, information processing apparatus and the authentication method
CN202394219U (en) Printer and system convenient for non-driven printing
JP2006344167A (en) Image formation job management device, method, and program
US20030225894A1 (en) Image forming apparatus including web service functions
EP1770980A1 (en) Data transmission apparatus, control method therefor, and image input/output apparatus
CA2218124C (en) Printing system with enhanced print service capability
JP4119002B2 (en) Network printing system
US7143210B2 (en) User-defined printer selection administration policy
JP3201319B2 (en) That can be connected to the network electronic equipment
EP1404112B1 (en) Image forming apparatus and print process method
US7788377B2 (en) Method and apparatus for providing a service for sharing a printing environment
US20050050013A1 (en) System and method for policy-driven device queries

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101006

A521 Written amendment

Effective date: 20101006

Free format text: JAPANESE INTERMEDIATE CODE: A523

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120113

A131 Notification of reasons for refusal

Effective date: 20120117

Free format text: JAPANESE INTERMEDIATE CODE: A131

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120515