Java – Making the server request with high priority

client-serverjava

I need to connect to a server and do manipulation with respect to HTTP GET and POST for my application and the server is generally used to handle multiple users with heavy load and many users might be sending multiple request at any moment.

I have 3 questions here.

The server is configured with ASP.NET

I am using Java to do my HTTP POST and GET requests.

Is there any way available to make my request data to have more priority than others ?

Also, I read some article in internet and it is mentioned that using proxies will help in speed up the process and will give us high chance of getting the connection with the server.

Is that true ? If yes, why ?

Thanks in advance.

Best Answer

When there is a single server entry point, web requests are generally served in a first-in-first-served manner.

If the system architect is aware that some requests should have higher priority than other requests, he may employ a Bulkhead Pattern (either temporarily for an expected traffic spike, or as part of the stable architecture), where a dedicated entry-point is added for that traffic, to be handled by dedicated resources (put in a different queue, run on a different CPU or machine).

For example, if all traffic goes to http://www.example.com/my_service, "privileged" clients will be instructed to use http://vip.example.com/my_service, where they will be handled by a dedicated server, which may run the same code as the normal server, or may run dedicated code.

A more elaborate option is to configure the load balancer to dispatch certain client IPs to a separate server, which takes the control completely out of the client's hands.

There is no standard way for some client to get priority on some server arbitrarily, mainly because if there was such a way, wouldn't all of the clients be implemented that way? Who wants less than premium service?