I am using python Klein http://klein.readthedocs.io/en/latest/ for setting up a web service. I had checked the documentation but I still don't know how to set the timeout of the service. Can anyone who is more familiar with tool shows how to set the timeout to 15 seconds? Thanks!
Related Questions in PYTHON
- How to store a date/time in sqlite (or something similar to a date)
- Instagrapi recently showing HTTPError and UnknownError
- How to Retrieve Data from an MySQL Database and Display it in a GUI?
- How to create a regular expression to partition a string that terminates in either ": 45" or ",", without the ": "
- Python Geopandas unable to convert latitude longitude to points
- Influence of Unused FFN on Model Accuracy in PyTorch
- Seeking Python Libraries for Removing Extraneous Characters and Spaces in Text
- Writes to child subprocess.Popen.stdin don't work from within process group?
- Conda has two different python binarys (python and python3) with the same version for a single environment. Why?
- Problem with add new attribute in table with BOTO3 on python
- Can't install packages in python conda environment
- Setting diagonal of a matrix to zero
- List of numbers converted to list of strings to iterate over it. But receiving TypeError messages
- Basic Python Question: Shortening If Statements
- Python and regex, can't understand why some words are left out of the match
Related Questions in WEB-SERVICES
- Apache CXF is unable to handle duplicate localnames
- Why do we call all http services 'Web Api/Web Service'?
- Postman Webservice PHP Curl Code POST request giving forbidden error when run in local
- Migrate ASMX web method to WCF which accepts string array
- PKIX failed when using custom SSLcontext with custom keyStore and trustStore
- Problems in Validations via Web Service in a Vue 3 Application
- Maven plugin 100% compatible Java21 to generate stub classes from WSDL file and generate *.wsdl from java classes? A solution
- Kubernetes Ingress Port to Port route
- How to handle a multi thread tests calling a single thread web service in .Net Framework 4.6?
- oracle.dataaccess.dll keep showing up as reference after build of C# web service using Oracle MDAC
- Your thoughts on the suggested architecture for addressing the challenges and maintenance of third-party API implementation
- Issue with BizTalk register WCF-WSHttp adapter while calling web service
- Does PHP SoapClient creates XML to be sent to webservice end point, based on WSDL file, while using CURL the XML should be manually created?
- Invoice API in Authorize.net like Square
- Publish JAXWS Endpoint in the same port than Spring boot
Related Questions in KLEIN-MVC
- Gunicorn python Klein
- Google App Engine Application - 502 bad gateway error with klein micro web framework
- Python Klein - How to return Excel file as attachment?
- Python Klein - Non Blocking API
- Implementation of long-polling in asynchronous web framework like twisted or klein
- How to test Klein server in python
- Python shell working differently on different location in the same machine inside same virtual environment
- twistd -n web not working with Klein and Python3
- How to send parameters to html file I am serving through Klein(Flask) application?
- PHP klein router call special controller function
- Conda package for Klein (Twisted micro web framework)
- Http POST request in python using Klein for accessing json content
- Starting python Klein using twistd throws no module Error
- Process Multiple Requests Simultaneously and return the result using Klein Module Python
- Redirect if page != login or register? Klein
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Popular Tags
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
You could call
Request.loseConnection()to drop the request connection to the client after an set timeout interval. Here is a quick example:To try this out, go to
http://localhost:9000/delayed/2thenhttp://localhost:9000/delayed/20to test a scenario when the task doesn't complete in time. Don't forget to cancel all tasks, deferreds, threads, etc related to this request or you could potentially waste lots of memory.Code Explanation
Server Side Task: Client goes to
/delayed/<n>endpoint with a specified delay value. A server side task (serverTask()) starts and for the sake of simplicity and to simulate a busy task,deferLaterwas used to return a string afternseconds.Request Timeout: Using
callLaterfunction, after therequest_timeoutinterval, call thedropRequestfunction and passrequestand all work deferreds that need to be canceled (in this case there's onlywork). When therequest_timeouthas passed then the request connection will be closed (request.loseConnection()) and deferreds will be cancelled (deferred.cancel).Yield Server Task Result: In a try/except block, the result will be yielded when the value is available or, if the timeout has passed and connection is dropped, an error will occur and the
Request droppedmessage will be returned.Alternative
This really doesn't seem like a desirable scenario and should be avoided if possible, but I could see a need for this kind of functionality. Also, though rare, keep in mind that
loseConnectiondoesn't always fully close a connection (this is due to TCP implementation not so much Twisted). A better solution would be to cancel a server side task when the client disconnects (which may be a bit easier to catch). This can be done by attaching anaddErrbacktoRequest.notifyFinish(). Here is an example using just Twisted (http://twistedmatrix.com/documents/current/web/howto/web-in-60/interrupted.html).