如果你想查看简体中文版本的README.md,请点击这里。
MultiSite Latency Tool is an open-source project designed to provide a simple and user-friendly interface for measuring latency across multiple specified websites. It displays the IP addresses of these websites along with their geographic location information. Users can quickly assess the access speed of each website and easily manage the list of websites to measure. Additionally, the tool integrates IP2Location.io for IP geolocation services, offering users intuitive insights into the geographical distribution of website servers. Using concurrent measurement techniques, MultiSiteLatencyTool efficiently handles latency measurement tasks for multiple websites, providing comprehensive network performance analysis reports.
- Measure latency across multiple websites
- Display website IP addresses
- Retrieve geographic location information of IP addresses
- Simple and user-friendly interface
- Concurrent measurement of multiple websites
-
Clone the repository locally:
git clone https://github.com/Snake-Konginchrist/MultiSiteLatencyTool.git
-
Navigate into the project directory:
cd MultiSiteLatencyTool
-
Install dependencies:
npm install
-
Create
.env
file: Create a file named.env
in the root directory of the project. -
Add API Key: Open the
.env
file and add your API Key obtained from IP2Location.io:IP2LOCATION_API_KEY=your_api_key_here
Replace
your_api_key_here
with your actual API Key obtained from IP2Location.io.
-
Start the application:
npm start
-
In the application window, input the list of website URLs to measure, one per line.
-
Click the "Measure Latency" button to view the measurement results.
MultiSiteLatencyTool/
├── package.json
├── main.js
├── preload.js
├── renderer.js
├── index.html
├── assets/
│ └── styles.css
├── src/
│ ├── latency.js
│ └── geoip.js
└── node_modules/
package.json
: Project configuration file containing dependencies and scripts.main.js
: Main process file responsible for creating and managing application windows.preload.js
: Preload script used to enable Node.js modules in the renderer process.renderer.js
: Renderer process script handling user interaction and UI updates.index.html
: Main page of the application.assets/styles.css
: Stylesheet for the application.src/latency.js
: Module responsible for measuring website latency.src/geoip.js
: Module responsible for retrieving IP addresses and geographic location information.
If you encounter errors while installing dependencies, try the following steps:
-
Ensure no other processes are using the project folder.
-
Try deleting the
node_modules
folder andpackage-lock.json
file:rm -rf node_modules package-lock.json
-
Clean npm cache:
npm cache clean --force
-
Reinstall dependencies:
npm install
If you encounter errors when starting the application, ensure all dependencies are properly installed and the IP2Location.io API key is correctly configured. You may also try running the terminal with administrator privileges and execute the following command to ensure correct file permissions:
npm start
This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.