[cddlm] In preparation for the CDDLM/ACS joint session at GGF14
Steve Loughran
steve_loughran at hpl.hp.com
Fri Jun 24 04:57:55 CDT 2005
Keisuke Fukui wrote:
> Hi Steve,
>
> Thanks for your comments.
> Although not complete, here are some comments:
> - We understand the File upload stuff is meant to be a transient/interim
> and a real repository is expected.
> - We have one use case with commercial data center for ACS, where clients
> exist outside of the data center and submit their task to the system,
> then the
> task is deployed and executed in the system. In this case, it might
> require
> much and/or indeterministic latency for component to pull the data
> outside
> of the system.
> Thus, we assumed that it is more reasonable to have data repository
> inside
> the system, even though it may not be what the CDDLM specification
> requires.
> We assumed that the purpose of having AddFile is to "push" the data
> from outside to inside of the system in advance. Then components can
> "pull" the data easier from there.
> - As such, the file server in the case 1 diagram may not be a primary
> or sole implementation of CDDLM, but we understand it is among possible
> implementations of larger system under the current CDDLM specification.
> (We may have had to color it neutral one rather than light blue.)
> - I understood all topics are about the case 1 diagram. Do you have any
> issues on case 2 or 3?
>
> BTW,
> Thanks for a heads up for JSR 277. We will keep an eye for it.
> It sounds like the improvement of the jar itself and pretty much java
> focus.
>
> -Keisuke
>
Yes, having a real repository in the data centre is how things should
really work.
As long as references to content can be supplied as URLS, urls that the
programs/JVMs on the hosts can resolve, then we could do (2) and (3)
without a CDDLM implementation needing to know about how those URLs are
supported. That does imply HTTP/FTP/File, but since both .NET and Java
have a way of letting you plug in new URL handlers. If you had a new
url, something like
acs://app/124/component/12
then we could handle it, though I would strongly advocate using HTTP as
way of retrieving things. not only do all apps support it out the box,
it is easier to debug in a web browser
There are two more use cases,
-your asset store is used as the back end by an implementation of the
CDDLM services. That is, someone uses <addFile> to add a file, and the
request is forwarded to the ACS repository to add a new file to the
application. Would that work?
-the results of a job are somehow placed into the asset store, for later
retrieval by the submitter. This is out the scope of CDDLM; whatever you
deploy needs to handle that submission process.
Asset stores are a trouble spot with me in the past; they have caused
inordinate amounts of problems, at least when you are trying to use one
built on MSSQL and classic IIS/ASP. Here are some things that I recall
being troublesome
-many file systems cannot have > 65535 files in a single dir, so you
had better not use too flat a filesystem
-if the NAS filestore is set to the GMT tz and the server in PST, it
doesnt make any difference whether or not the clocks themselves are
syncrhonized; the auto-cleanup process is going to delete new files
under the assumption that they are out of date.
-its very hard to secure stuff
-any HTTP data provider must support HTTP/1.1 or at least
content-length headers, so that the caller can determine that the
supplied content was incomplete
As with most things, everything worked in development, it is only when
you go to production, put the asset store 1200km away from the rendering
service and keep the files on a different host from the database that
things start to go wrong.
-steve
More information about the cddlm-wg
mailing list