You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by bu...@apache.org on 2016/04/08 05:45:04 UTC

[Bug 59288] New: Is it possible to add the support of tus protocol within Tomcat?

https://bz.apache.org/bugzilla/show_bug.cgi?id=59288

            Bug ID: 59288
           Summary: Is it possible to add the support of tus protocol
                    within Tomcat?
           Product: Tomcat 9
           Version: unspecified
          Hardware: All
                OS: All
            Status: NEW
          Severity: enhancement
          Priority: P2
         Component: Catalina
          Assignee: dev@tomcat.apache.org
          Reporter: anita314159@gmail.com

Problem statement: HTTP sucks for file uploads.
You know it. I know it. The problems?

1. No resuming
2. POST multipart/form-data bloats the size of the file due to encoding
3. Slow connections typically time out on large files
4. Any server resets or any other network "burps" on the path from client to
server effectively kills the upload
5. People have had moderate success by tuning their webserver and JSP/Servlet
to accept large POSTs, and in general, it works - but not for everyone and it
suffers from everything previously noted.

http://tus.io/

tus is a new open protocol for resumable uploads built on HTTP. It offers
simple, cheap and reusable stacks for clients and servers to solve the problem
of unreliable file uploads once and for all. 

Currently, there are only two implementations of server side --- Go and
Node.js. I wish the popular server --- Tomcat which is also my favorite can
also implement this new file transfer protocol in the new release version, too.

---
Anita

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[Bug 59288] Is it possible to add the support of tus protocol within Tomcat?

Posted by bu...@apache.org.
https://bz.apache.org/bugzilla/show_bug.cgi?id=59288

Mark Thomas <ma...@apache.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |WONTFIX

--- Comment #5 from Mark Thomas <ma...@apache.org> ---
This will not be supported (directly) in Tomcat.

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[Bug 59288] Is it possible to add the support of tus protocol within Tomcat?

Posted by bu...@apache.org.
https://bz.apache.org/bugzilla/show_bug.cgi?id=59288

--- Comment #2 from Mark Thomas <ma...@apache.org> ---
This looks like something you'd want to implement in a Commons FileUpload type
library that you could re-use across any Servlet container rather than
something to implement directly in Tomcat.

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[Bug 59288] Is it possible to add the support of tus protocol within Tomcat?

Posted by bu...@apache.org.
https://bz.apache.org/bugzilla/show_bug.cgi?id=59288

--- Comment #4 from Anita <an...@gmail.com> ---
(In reply to Mark Thomas from comment #2)
> This looks like something you'd want to implement in a Commons FileUpload
> type library that you could re-use across any Servlet container rather than
> something to implement directly in Tomcat.
Thanks for Mark Thomas comments. It's a good idea for implementing it on the
library level instead of web server level if there is no other consideration
issues exist.

I use Mark Thomas's suggestion to create an issue on Commons FileUpload library
https://issues.apache.org/jira/browse/FILEUPLOAD-271

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[Bug 59288] Is it possible to add the support of tus protocol within Tomcat?

Posted by bu...@apache.org.
https://bz.apache.org/bugzilla/show_bug.cgi?id=59288

--- Comment #3 from Anita <an...@gmail.com> ---
(In reply to Christopher Schultz from comment #1)

Thanks for Christopher Schultz's reply comments.

> So... what client is going to bother to implement this? Is the expectation
> that mostly this will be used by custom mobile clients instead of your
> run-of-the-mill web browser?

It already has several implementations (samples and components) on client side
of Javascript, Java, Android and iOS.
http://tus.io/implementations.html

The implementation of client side for web browser may use the Javascript
version.

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[Bug 59288] Is it possible to add the support of tus protocol within Tomcat?

Posted by bu...@apache.org.
https://bz.apache.org/bugzilla/show_bug.cgi?id=59288

--- Comment #1 from Christopher Schultz <ch...@christopherschultz.net> ---
(In reply to Anita from comment #0)
> Problem statement: HTTP sucks for file uploads.
> You know it. I know it.

??

> The problems?
> 
> 1. No resuming

This isn't a protocol problem; it's a tool problem. HTTP POST theoretically
supports the "Range" header.

There is a discussion on SO about this:
http://stackoverflow.com/questions/1830130/resume-uploads-using-http

> 2. POST multipart/form-data bloats the size of the file due to encoding

Very little bloat. It's not like it uses base64 encoding or anything like that.

> 3. Slow connections typically time out on large files

Nothing can fix this. Resumability is the only real cure, and you've listed
that one already.

> 4. Any server resets or any other network "burps" on the path from client to
> server effectively kills the upload

Resumability.

> 5. People have had moderate success by tuning their webserver and
> JSP/Servlet to accept large POSTs, and in general, it works - but not for
> everyone and it suffers from everything previously noted.

Resumability.

> http://tus.io/
> 
> tus is a new open protocol for resumable uploads built on HTTP. It offers
> simple, cheap and reusable stacks for clients and servers to solve the
> problem of unreliable file uploads once and for all. 

Okay, so it trades Content-Length and Range for Upload-Offset and
Upload-Length. I suppose this might be better when using old proxies that like
to veto odd-looking "standard" requests, but will happily pass-through
unrecognized headers.

> Currently, there are only two implementations of server side --- Go and
> Node.js. I wish the popular server --- Tomcat which is also my favorite can
> also implement this new file transfer protocol in the new release version,
> too.

So... what client is going to bother to implement this? Is the expectation that
mostly this will be used by custom mobile clients instead of your
run-of-the-mill web browser?

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org