gpt4 book ai didi

MaxMind:将 GeoIP2 mmdb 加载到内存中以进行快速读取

转载 作者:行者123 更新时间:2023-12-05 04:13:50 74 4
gpt4 key购买 nike

我正在使用 MaxMind 的 GeoIP2 获取 IP 地址的地理信息。在我的 Java Web 应用程序中,

DatabaseReader reader = new DatabaseReader.Builder(new File("C:\GeoLite2-City.mmdb").withCache(new CHMCache()).build();

我希望将整个文件加载到内存中以便高效/快速读取。

上面显示的方式是使用mmdb数据库最高效/最快速的方式吗?

最佳答案

您粘贴的代码将对文件进行内存映射并使用数据缓存。它应该是高效的,但它不会将整个数据库加载到内存中。如果你想这样做,你需要使用 fileMode 构建器选项加载数据库,例如:

DatabaseReader reader = new DatabaseReader
.Builder(new File("C:\GeoLite2-City.mmdb")
.fileMode(com.maxmind.db.Reader.FileMode.MEMORY)
.withCache(new CHMCache())
.build();

但是,在大多数情况下,您可能看不到此文件与内存映射文件之间的性能差异。

关于MaxMind:将 GeoIP2 mmdb 加载到内存中以进行快速读取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36520932/

74 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com