1. 18 Mar, 2015 2 commits
  2. 17 Mar, 2015 1 commit
  3. 16 Mar, 2015 4 commits
  4. 13 Mar, 2015 3 commits
    • Allow streaming of multipart requests in Zuul proxy · 0391cfff
      Dave Syer authored
      It turns out that the suckiness of Zuul with multipart requests
      comes almost entirely from the Multipart handling in Spring's
      DispatcherServlet. This change makes the proxy routes available
      on an alternative path /zuul/<normal_path> (where
      /zuul is the default value of zuul.servletPath). I have
      tested those with 800MB file uploads using the main method in
      the FormZuulServletProxyApplicationTests and the main
      observation is that there is no OutOfMemory error (no-one tries
      to download the complete request body). It works with Ribbon
      and with the simple (HttpClient) filter. With Ribbon you
      will need to set some timeouts if you want to upload files
      as large as that, e.g. see application.yml in the tests:
      
      hystrix.command.default.execution.isolation.thread.timeoutInMilliseconds: 60000
      ribbon:
        ConnectTimeout: 3000
        ReadTimeout: 60000
      
      You need to set "Transfer-Encoding: chunked" in the
      incoming request. Chrome does not do this by default
      apparently, but I was able to test with curl, e.g.
      
      $ curl -v -H "Transfer-Encoding: chunked" \
        -F "file=@mylarg.iso" \
        localhost:9999/zuul/direct/file
      
      The old proxy paths through the DispatcherServlet are still
      available (for backwards compatibility and for convenience of
      having the paths available at the root of the context path).
      
      Fixes gh-254
    • Fix issue with servlet request wrappers in Zuul · da4f5d34
      Dave Syer authored
      Because of the way that a FormBodyServletRequestWrapper was
      implemented (extending the Zuul servlet 2.5 wrapper) it could
      barf at runtime if anyone called its servlet 3.0 methods. The fix
      for that was to extract our Servlet30RequestWrapper and extend that
      instead.
      
      Also tweaked the DebugFilter a bit so it doesn't try and display
      the whole payload. Probably speeds up file uploads a bit but the
      fact that we have to store the whole request body in memory is
      going to kill us eventually.
      
      See gh-254
  5. 06 Mar, 2015 3 commits
  6. 05 Mar, 2015 2 commits
  7. 04 Mar, 2015 1 commit
  8. 03 Mar, 2015 1 commit
  9. 02 Mar, 2015 1 commit
  10. 27 Feb, 2015 4 commits
  11. 25 Feb, 2015 4 commits
  12. 23 Feb, 2015 3 commits
  13. 19 Feb, 2015 1 commit
  14. 18 Feb, 2015 1 commit
  15. 16 Feb, 2015 1 commit
    • Add some more docs for Eureka metadata · fadfc67f
      Dave Syer authored
      Users need to know how to configure and use the Eureka
      metadata because it isn't immediately obvious and does
      require some decisions to be made.
      
      Fixes gh-102
  16. 14 Feb, 2015 1 commit
  17. 13 Feb, 2015 5 commits
  18. 12 Feb, 2015 1 commit
  19. 10 Feb, 2015 1 commit