Solved

HTTP servers, Jetty servers, and API managers

Posted on 2014-10-21
3
186 Views
Last Modified: 2014-10-22
I have seen documentation that states that some API managers will  successfully enforce rate limiting on HTTP transports, but not Jetty transports, due to a limitation of the jetty transport.  

This does not make sense to me as I thought Jetty was simply a HTTP server written in Java

What is the limitation in the Jetty transport that will not allow API managers to perform rate limiting?
0
Comment
Question by:Anthony Lucia
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
3 Comments
 
LVL 27

Expert Comment

by:dpearson
ID: 40395411
Can you point to the documentation saying this?
0
 

Author Comment

by:Anthony Lucia
ID: 40395593
This site:

http://www.mulesoft.org/documentation/display/current/Applying+Runtime+Policies

states:

Note that all the policy templates below are intended only for HTTP/HTTPS endpoints. If your API uses a Jetty inbound endpoint, all policies below will function as expected except for the rate-limiting and throttling policies. These policies will not work due to a limitation of the Jetty transport. If your API requires rate-limiting or throttling, please ensure that its inbound endpoint uses the HTTP transport protocol.

Open in new window

0
 
LVL 27

Accepted Solution

by:
dpearson earned 500 total points
ID: 40395888
You're right that Jetty is generally just a normal HTTP server.

But it looks like the issue is that mule is using an alternative protocol when you use this "Jetty transport":
http://www.mulesoft.org/documentation-3.2/display/MULE2USER/Jetty+Transport

See how the protocol in the request is set to "jetty://" instead of "http:'//"

So I think it's using their own, custom protocol to send the requests to the jetty server - not using regular http.
And presumably because of that, the rate limiting fails to work.

Seems like a pretty weird design choice - I suppose they must get a substantial performance benefit out of doing this.

Doug
0

Featured Post

Save the day with this special offer from ATEN!

Save 30% on the CV211 using promo code EXPERTS30 now through April 30th. The ATEN CV211 connects a laptop directly to any server allowing you instant access to perform data maintenance and local operations, for quick troubleshooting, updating, service and repair.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In this post we will learn how to make Android Gesture Tutorial and give different functionality whenever a user Touch or Scroll android screen.
What You Need to Know when Searching for a Webhost Provider
The viewer will learn how to implement Singleton Design Pattern in Java.
This video teaches viewers about errors in exception handling.

724 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question