Hacker News new | ask | show | jobs
by 47 2981 days ago
Do you provide local database? Making a web service call for every request seems like a performance bottle neck.
2 comments

I'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

Let's say it like this:

- https://api.ipdata.co/1.1.1.1

City name: Research

- 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.

They aren't using a copy of Maxminds DB, see:

https://www.maxmind.com/en/geoip2-precision-demo?ip=185.10.6... (No data)

https://api.ipdata.co/185.10.68.114 (lots of data)

I wonder if Maxmind have put in some "Trap Streets" in their dataset. https://en.wikipedia.org/wiki/Trap_street
Hi, 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.
65ms feels like a lot. I guess you can cache it so you're only calling once per IP.
I 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.

Why compare to another API endpoint? You should compare it against accessing a local database.
Comparing a network call vs filesystem i/o wouldn't be a useful comparison for someone deciding between different third part API providers.
Why 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.