日常開発作業の中で、私たちはしばしば IP アドレスの位置特定の問題を解決する必要があります。
従来のオンライン API クエリ方式は、応答速度が遅いだけでなく、呼び出し頻度制限に直面することが多く、ネットワークの変動による安定性の問題も考慮する必要があります。
最近、GitHub でオフライン IP アドレス位置特定ツール:Ip2regionを見つけ、これらの悩みを一度に解決しました。
プロジェクト紹介#
これはオフライン IP アドレス位置特定ライブラリと IP 位置特定データ管理フレームワークで、10 マイクロ秒レベルのクエリ効率を達成できます。
さらに、主要なプログラミング言語の xdb データ生成とクエリクライアントの実装を提供します。加えて、このツールのコア機能にはさらに感銘を受けました:
超高速応答:クエリ効率は驚異的な 10 マイクロ秒レベルに達します;
オフライン実行:完全にローカルに展開され、ネットワークの問題を心配する必要はありません;
正確な位置特定: "国 | 地域 | 省 | 市 | ISP" の 5 つの次元の住所情報をサポートします;
軽量:データベースファイル全体はわずか 11MB で、さまざまなプロジェクトに統合するのに非常に適しています;
多言語サポート:すでに Go、Java、Python、Node.js など 14 種類の主要なプログラミング言語をサポートしています。
便利なインストール方法#
異なるプログラミング言語環境では、インストール方法が異なります。ここではいくつかの一般的な言語の例を示します:
Python 環境:
pip install ipdb-python
Node.js 環境:
npm install node-ip2region
Java 環境:
<dependency>
<groupId>org.lionsoul</groupId>
<artifactId>ip2region</artifactId>
<version>2.7.0</version>
</dependency>
簡単な使用方法#
Python を例にとると、数行のコードで IP アドレスのクエリを実現できます:
from ip2region import Ip2Region
searcher = Ip2Region("ip2region.xdb")
result = searcher.search("180.101.49.11")
print(result) # 出力:中国|0|江苏省|南京市|电信
他のプログラミング言語の使用方法も同様に簡単で直感的で、ほぼ即座に使用できます。
もしサーバーが必要な場合は、ここで伍六七云をお勧めします:https://www.vps567.com 香港 2H2G5M サーバー 20 / 月、さらに高防 CDN 加速はわずか 18 / 月から。
最後に#
ビッグデータとリアルタイム分析のシナリオでは、e コマースプラットフォームや広告投放など、IP アドレス位置特定の性能と正確性が特に重要です。
このツールを使用することで、ログ分析、ユーザー画像、安全監査などのシナリオに簡単に対応できるだけでなく、クエリ性能を少なくとも 1000 倍向上させることができます。
技術効率を追求する開発者として、このような優れたオープンソースツールに出会うことは、本当に興奮を覚えます。
GitHub プロジェクトアドレス:https://github.com/lionsoul2014/ip2region
さて、今日のシェアはここまでです。お読みいただきありがとうございました。また次回お会いしましょう、Respect!
以上の内容は、https://mp.weixin.qq.com/s/KpSQmfSD5jpEjs4tWfY2bw からの引用です。