5 ms·
Do you provide local database? Making a web service call for every request seems like a performance bottle neck.
by 47 8y ago
Do you provide local database? Making a web service call for every request seems like a performance bottle neck.
- jonathan-kosgei 8y agoHi, unfortunately we don't. However performance is very important to us which is why we have 11 endpoints around the world. And average ~65ms response times see status.ipdata.co.
- jimktrains2 8y ago65ms feels like a lot. I guess you can cache it so you're only calling once per IP.
- jonathan-kosgei 8y agoI understand what you mean, but every other provider from the tests I've done comes in at double our speeds some even over plain HTTP. We only serve requests over HTTPS More importantly the performance is consistent and you'd get the same performance wherever you were in the world.
- jimktrains2 8y agoWhy compare to another API endpoint? You should compare it against accessing a local database.
- jonathan-kosgei 8y agoComparing a network call vs filesystem i/o wouldn't be a useful comparison for someone deciding between different third part API providers.
- jimktrains2 8y agoWhy not? I can load an IP database locally, so it's an option and a "competitor" to a 3rd party API. That's what I'm comparing it to, not against other APIs.
- jonathan-kosgei 8y agoIt's pretty obvious that hitting your local disk is going to be a lot faster than making a network call. Make the right decision for your use case.
- JoeAltmaier 8y agoMaybe in this case. But historically, exactly this decision point has oscillated. It's caused reversals in distributed computer design for decades. First the networks were slow and disks were (relatively) fast - so each machine had one. Then networks went Ethernet, and disks started disappearing. Disks got down to a few ms access time and they came back. Then Gigabit came around. Then SSD. Today I'd say it depends upon exactly what your network data source latency measures out to. The answer could go either way.
- jonathan-kosgei 8y agoThat's a pretty interesting history and put in that perspective I see what you mean and totally agree with you.
- meritt 8y agoI've always had good luck with Maxmind's local database [1] offering. It bewilders me how many companies today create SaaS offerings and refuse to offer on-prem versions. It's like they intentionally want to avoid customers with serious needs (speed and security being the most common need for on-prem) who are willing to pay serious amounts of money. [1] https://www.maxmind.com/en/geoip2-databases https://www.maxmind.com/en/geoip2-databases
- rvnx 8y agoLet's say it like this: - https://api.ipdata.co/1.1.1.1 https://api.ipdata.co/1.1.1.1 City name: Research - https://www.maxmind.com/en/geoip2-precision-demo?ip=1.1.1.1 https://www.maxmind.com/en/geoip2-precision-demo?ip=1.1.1.1 City name: Research Oh, that must be a very coincidence. Nuh nuh nuh, nobody would ever want to launch a SaaS with a database they have stolen.
- lightbyte 8y agoThey aren't using a copy of Maxminds DB, see: https://www.maxmind.com/en/geoip2-precision-demo?ip=185.10.68.114 https://www.maxmind.com/en/geoip2-precision-demo?ip=185.10.6... (No data) https://api.ipdata.co/185.10.68.114 https://api.ipdata.co/185.10.68.114 (lots of data)
- kawsper 8y agoI wonder if Maxmind have put in some "Trap Streets" in their dataset. https://en.wikipedia.org/wiki/Trap_street https://en.wikipedia.org/wiki/Trap_street
- alam2000 8y agoYes, I believe they are. It is very common in the industry.
- alam2000 8y agoIt is interesting! Both making same mistake.