Comments (5)
Heh, I'm very open to adding useful features, less so to bloat 😀
Most of project maintenance after the core is built is offering support and saying no to stuff.
from whoisit.
Hi, thanks for the issue. I can see why you might want this but typically this sort of caching would be handled within your application directly (stuffing responses from whoisit
into redis with a 24 hour key expiry or similar). Is there an implementation reason that this would make more sense to handle in the query library itself?
As far as I'm aware RDAP servers do not have cache control headers at all, there may be some that do implement them but I've never encountered any. I'm not sure they would make much sense for a query API to implement so I would suspect no endpoints have them. The RDAP RFC doesn't discuss caching other than cache busting to work around poorly implemented MITM proxies.
In-memory caching of Python data structures, if you're making tens of thousands of queries, is going to get pretty massive without offloading it to disk or memcached / redis etc. as well.
from whoisit.
Hi, thanks for the issue. I can see why you might want this but typically this sort of caching would be handled within your application directly (stuffing responses from
whoisit
into redis with a 24 hour key expiry or similar). Is there an implementation reason that this would make more sense to handle in the query library itself?As far as I'm aware RDAP servers do not have cache control headers at all, there may be some that do implement them but I've never encountered any. I'm not sure they would make much sense for a query API to implement so I would suspect no endpoints have them. The RDAP RFC doesn't discuss caching other than cache busting to work around poorly implemented MITM proxies.
In-memory caching of Python data structures, if you're making tens of thousands of queries, is going to get pretty massive without offloading it to disk or memcached / redis etc. as well.
Fair enough! Can't day I disagree much with your points, appreciate the detailed explanation
I'll close this
Thanks again
from whoisit.
No problem, feel free to open issues if you want to discuss features in the future.
from whoisit.
Hi, thanks for the issue. I can see why you might want this but typically this sort of caching would be handled within your application directly (stuffing responses from
whoisit
into redis with a 24 hour key expiry or similar). Is there an implementation reason that this would make more sense to handle in the query library itself?
Yes, the reason is deeply technical, you see- I would prefer you maintain it rather than me 😊
^-- joking, sort of.. but when you ask directly like that and I have to think about it, I see that may be the honest answer...
from whoisit.
Related Issues (20)
- domain entity: handle requirement HOT 5
- setup.py itself depends on python-dateutil HOT 2
- Parsing of address, telephone and individual name ("n") field HOT 8
- IP address lookup returns only the first CIDR on the list HOT 3
- No valid RDAP service URLs could be parsed HOT 2
- whoisit does not find the RDAP endpoint for UK domains HOT 4
- Mutable defaults parameters en request wrapper HOT 1
- Failure when sld require different url than tld HOT 7
- Implement an async mode HOT 3
- Issue with urllib3 using requests 2.31.0 HOT 5
- urllib3 2.x complains about DEFAULT_CIPHERS HOT 5
- Benchmarking whoisit against registrant name HOT 5
- Can the route information be returned when using whois + IP? HOT 4
- Follow related links HOT 3
- Feature Request: Add support for unicodeName HOT 4
- Exception 'AttributeError' raise for some domains HOT 3
- notice returns as dict HOT 2
- Improving whoisit.errors.RateLimitedError HOT 5
- Exception 'KeyError' with recursive search HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from whoisit.