Skip to content

Commit

Permalink
Modify emqx.io links
Browse files Browse the repository at this point in the history
Signed-off-by: Swilder-M <[email protected]>
  • Loading branch information
Swilder-M authored and CrazyWisdom committed Jun 6, 2024
1 parent 0c9e2b3 commit 7c88507
Show file tree
Hide file tree
Showing 164 changed files with 366 additions and 366 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,7 @@ Follow these steps to edit the code to suit your own Wi-Fi and MQTT settings
- MQTT client receives messages
In this post, we will use the MQTT client tool provided by [MQTTX](https://mqttx.app/) that supports browser access: http://www.emqx.io/online-mqtt-client. MQTT X also provides a [desktop client](https://mqttx.app/) and a [command line tool](https://mqttx.app/cli).
In this post, we will use the MQTT client tool provided by [MQTTX](https://mqttx.app/) that supports browser access: http://mqtt-client.emqx.com/. MQTT X also provides a [desktop client](https://mqttx.app/) and a [command line tool](https://mqttx.app/cli).
1. Create an MQTT connection
![Create an MQTT connection](https://assets.emqx.com/images/6b70ac640041ab7aadb211553bc729e8.png)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ There are services or installation package resources and tutorials of different

#### Installation

> If you are new to EMQX, we recommend you getting started with [EMQX Guide](https://www.emqx.io/docs/en/v3.0/).
> If you are new to EMQX, we recommend you getting started with [EMQX Guide](https://docs.emqx.com/en/emqx/v3.0/).
Visit [EMQ website](https://www.emqx.com/en/try) to download the installation package suitable for your operating system. As data persistence is an function of enterprise version, you need to download EMQX Enterprise (you can apply for a license trial). At the time of writing this article, the latest version of EMQX Enterprise is v3.4.5. This function requires this version and above. The startup steps for downloading the zip package are as follows:

Expand Down Expand Up @@ -382,7 +382,7 @@ At this point, we have completed the implementation of the EMQX and InfluxDB + G
------
Welcome to our open source project [github.com/emqx/emqx](https://github.com/emqx/emqx). Please visit the [ documentation](https://www.emqx.io/docs/en/latest/) for details.
Welcome to our open source project [github.com/emqx/emqx](https://github.com/emqx/emqx). Please visit the [ documentation](https://docs.emqx.com/en/emqx/latest/) for details.
<section class="promotion">
Expand Down
2 changes: 1 addition & 1 deletion en/202006/emqx-mqtt-broker-k8s-cluster.md
Original file line number Diff line number Diff line change
Expand Up @@ -229,7 +229,7 @@ You can see that the number of EMQX Broker Pod is expanded to three, but each po

### Modify EMQX Broker configuration

View the content related to [automatically cluster](https://www.emqx.io/docs/en/v5.0/deploy/cluster/introduction.html) in the EMQX Broker documentation, you can see that we need to modify the configuration of EMQX Broker.
View the content related to [automatically cluster](https://docs.emqx.com/en/emqx/v5.0/deploy/cluster/introduction.html) in the EMQX Broker documentation, you can see that we need to modify the configuration of EMQX Broker.

```
cluster.discovery = kubernetes
Expand Down
2 changes: 1 addition & 1 deletion en/202007/develop-emqx-plugin-using-java.md
Original file line number Diff line number Diff line change
Expand Up @@ -191,7 +191,7 @@ public class SampleHandler extends DefaultCommunicationHandler {

2. Override the method `on<hookName>`. These methods are the callback function to deal with hook events. The method how to name function is that add the prefix `on` in the front of each variant hook name. The way of variant is that use CamelCase after removing the underline of the hook name, for example, the hook client_connect corresponds function name onClientConnect. The events that are generated by EMQX such as: connect, publish, subscribe, etc, will finally be distributed to the callback function of these hook events. Next, the callback function can operate every attribute and status. The program example only prints each parameter. If you only care about partly hook events, only need to override the callback function of this part hook events instead of overriding all the callback functions.

The timing of executing each callback function and the list of supported hooks are the same as the build-in hooks of EMQX, please refer to [Hooks - EMQX](https://www.emqx.io/docs/en/v5.0/extensions/hooks.html).
The timing of executing each callback function and the list of supported hooks are the same as the build-in hooks of EMQX, please refer to [Hooks - EMQX](https://docs.emqx.com/en/emqx/v5.0/extensions/hooks.html).

The simplest method is inheriting the superclass `DefaultCommunicationHandler`, when you implement your expansion programs. This superclass wraps the binding of each hook and callback function, and further wraps the parameter data structure involved in the callback function to facilitate a quick start.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@ EMQX Cloud offers a 6-month free trial to newly registered users. After register

#### Method 2: private deployment installation

> If you are new to EMQX, we recommend [EMQX documentation](https://www.emqx.io/docs/en/latest/) to get started quickly.
> If you are new to EMQX, we recommend [EMQX documentation](https://docs.emqx.com/en/emqx/latest/) to get started quickly.
Access the [EMQ download](https://www.emqx.com/en/try?product=enterprise) page to download the appropriate package for your operating system. At the time of this writing, the Enterprise version of EMQX is v4.1.2. The steps to download the zip package are as follows:

Expand Down
2 changes: 1 addition & 1 deletion en/202012/release-notes-emq-x-enterprise-4-2-2.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ Detailed update log: https://www.emqx.com/en/changelogs/enterprise/v4.2.2

### Rules engine

[EMQX rules engine](https://www.emqx.io/docs/en/latest/data-integration/rules.html) is used to configure the message flows, and processing and forwarding rules of device events, and **supports forwarding data to various databases, flow processing and data analysis systems, including Apache Kafka and Clickhouse, to quickly build a one-stop platform for IoT data integration, cleaning, storage, analysis and visualization.**
[EMQX rules engine](https://docs.emqx.com/en/emqx/latest/data-integration/rules.html) is used to configure the message flows, and processing and forwarding rules of device events, and **supports forwarding data to various databases, flow processing and data analysis systems, including Apache Kafka and Clickhouse, to quickly build a one-stop platform for IoT data integration, cleaning, storage, analysis and visualization.**

As a key feature of EMQX, the rules engine provides a clear and flexible "configurable" business integration solution based on SQL, simplifying the business development process, improving user usability and reducing the coupling between the business system and EMQX.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ The per clientid-topic latency measurements are ranked in the table view as belo

<center>Slow subscribers Top-View</center>

A new module named `emqx_mod_slow_subs` was added in this release. With this module enabled, EMQX will start measuring message transmission latency. The measurement always starts at when a message is received by EMQX, the end of the measurement is configurable. Find more details in EMQX doc [Slow subscribers statistics](https://www.emqx.io/docs/en/v4.4/modules/slow_subscribers_statistics.html)
A new module named `emqx_mod_slow_subs` was added in this release. With this module enabled, EMQX will start measuring message transmission latency. The measurement always starts at when a message is received by EMQX, the end of the measurement is configurable. Find more details in EMQX doc [Slow subscribers statistics](https://docs.emqx.com/en/emqx/v4.4/modules/slow_subscribers_statistics.html)

# FAQ

Expand Down
2 changes: 1 addition & 1 deletion en/202205/reaching-100m-mqtt-connections-with-emqx-5-0.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ In order to be able to use this new DB backend by default, we needed to stress t

## How we tested the scalability of mqtt broker

For deploying and running our cluster tests, we used [AWS CDK](https://aws.amazon.com/cdk/), which allowed us to experiment with different instance types and numbers, and also trying out different development branches of EMQX. You can checkout our scripts in [this Github repo](https://github.com/emqx/cdk-emqx-cluster). In our load generator nodes (*"loadgens"* for short), we used our [emqtt-bench](https://github.com/emqx/emqtt-bench/) tool to generate the connection / publishing / subscribing traffic with various options. [EMQX's Dashboard](https://www.emqx.io/docs/en/v4.4/getting-started/dashboard.html#introduction) and [Prometheus](https://prometheus.io/) were used for monitoring the progress of the test and the instances' health.
For deploying and running our cluster tests, we used [AWS CDK](https://aws.amazon.com/cdk/), which allowed us to experiment with different instance types and numbers, and also trying out different development branches of EMQX. You can checkout our scripts in [this Github repo](https://github.com/emqx/cdk-emqx-cluster). In our load generator nodes (*"loadgens"* for short), we used our [emqtt-bench](https://github.com/emqx/emqtt-bench/) tool to generate the connection / publishing / subscribing traffic with various options. [EMQX's Dashboard](https://docs.emqx.com/en/emqx/v4.4/getting-started/dashboard.html#introduction) and [Prometheus](https://prometheus.io/) were used for monitoring the progress of the test and the instances' health.

We've experimented gradually with various instance types and numbers, and in the last runs we've settled on using `c6g.metal` instances for both EMQX nodes and *loadgens*, and the "3+20" topology for our cluster: 3 nodes of type "core", which take part in write transactions, and 20 nodes of type "replicant", which are read-only replicas and delegate writes to the core nodes. As for our *loadgens*, we observed that publisher clients required quite a bit more resources than subscribers. For only connecting and subscribing 100 million connections, only 13 *loadgen* instances were needed; for publishing as well, we needed 17 instances.

Expand Down
2 changes: 1 addition & 1 deletion en/202208/mqtt-keep-alive.md
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ Keepalive * backoff * 2

The default value of backoff is 0.75. Therefore, the behavior of EMQX will be fully compliant with the MQTT standard when the user does not modify this configuration.

Refer to the [EMQX configuration documentation](https://www.emqx.io/docs/en/v4.3/configuration/configuration.html) for more information.
Refer to the [EMQX configuration documentation](https://docs.emqx.com/en/emqx/v4.3/configuration/configuration.html) for more information.

> **Note: Setting Keep Alive for WebSocket connections**
>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Recently, [MQTTX](https://mqttx.app/), the cross-platform desktop client for [MQTT 5.0](https://www.emqx.com/en/blog/introduction-to-mqtt-5), was released in version 1.8.0. MQTTX is designed to connect to MQTT brokers such as [EMQX](https://www.emqx.com/en/products/emqx). It makes it easy and quick to create multiple simultaneous [online MQTT client](http://www.emqx.io/online-mqtt-client) connections and test the connection, publishing, and subscription functions of MQTT/TCP, MQTT/TLS, MQTT/WebSocket as well as other MQTT protocol features.
Recently, [MQTTX](https://mqttx.app/), the cross-platform desktop client for [MQTT 5.0](https://www.emqx.com/en/blog/introduction-to-mqtt-5), was released in version 1.8.0. MQTTX is designed to connect to MQTT brokers such as [EMQX](https://www.emqx.com/en/products/emqx). It makes it easy and quick to create multiple simultaneous [online MQTT client](http://mqtt-client.emqx.com/) connections and test the connection, publishing, and subscription functions of MQTT/TCP, MQTT/TLS, MQTT/WebSocket as well as other MQTT protocol features.

The latest release of v1.8.0 not only optimizes the experience with a quick connection duplication feature but also supports new use cases by adding two new interaction methods, namely CLI (command line) and browser. This makes MQTTX 1.8.0 the most complete MQTT test client in terms of supported scenarios. Depending on your needs, you can choose to download the desktop client, use the terminal command line, or quickly test MQTT connections in your web browser.

Expand Down
4 changes: 2 additions & 2 deletions en/202209/iot-data-integration.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,9 @@ EMQX data integration is a combination of the [rules engine](https://www.emqx.co

EMQX's simple, efficient, real-time data integration solution is achieved through two main features: **Rules** and **Data Bridges**.

Rules are used for message and event data processing, enabling operations such as data format conversion, message coding and decoding, and business logic processing through SQL-like syntax combined with built-in or user-extended custom functions. For more information about rules, see [Rules](https://www.emqx.io/docs/en/v5.0/data-integration/rules.html) in the EMQX docs.
Rules are used for message and event data processing, enabling operations such as data format conversion, message coding and decoding, and business logic processing through SQL-like syntax combined with built-in or user-extended custom functions. For more information about rules, see [Rules](https://docs.emqx.com/en/emqx/v5.0/data-integration/rules.html) in the EMQX docs.

Data Bridges are used to interface with data systems to enable high-performance, bidirectional data movement between EMQX and external systems. Data bridges allows users to push messages from EMQX to an external data system in real-time or to pull data from an external data system and push it to a topic in EMQX. For more information on data bridges, see [Data Bridges](https://www.emqx.io/docs/en/v5.0/data-integration/data-bridges.html).
Data Bridges are used to interface with data systems to enable high-performance, bidirectional data movement between EMQX and external systems. Data bridges allows users to push messages from EMQX to an external data system in real-time or to pull data from an external data system and push it to a topic in EMQX. For more information on data bridges, see [Data Bridges](https://docs.emqx.com/en/emqx/v5.0/data-integration/data-bridges.html).

![EMQX data integration](https://assets.emqx.com/images/8ea87178108fd15755534ac746118d3f.png)

Expand Down
2 changes: 1 addition & 1 deletion en/202209/mqtt-persistence-based-on-rocksdb.md
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@ RocksDB is an embedded, persistent key-value storage engine. It optimizes fast a

### Selection basis

In the [EMQX session layer design](https://www.emqx.io/docs/en/v5.0/design/design.html#session-layer-design), sessions are stored in local nodes, and we prefer to store data inside EMQX rather than using EMQX as a front-end to an external database. So, the selection is limited to embedded databases. In addition to RocksDB, we looked primarily at the following databases.
In the [EMQX session layer design](https://docs.emqx.com/en/emqx/v5.0/design/design.html#session-layer-design), sessions are stored in local nodes, and we prefer to store data inside EMQX rather than using EMQX as a front-end to an external database. So, the selection is limited to embedded databases. In addition to RocksDB, we looked primarily at the following databases.

- **Mnesia:** Mnesia is a distributed real-time database system built in Erlang/OTP. All the nodes of the Mnesia cluster are equal. Each of these nodes can store a copy of the data and can also start a transaction or perform a read or write operation. Mnesia can support extremely high read due to its replication feature, but this also limits its write throughput as it means MQTT messages are largely broadcast within the cluster and the broadcast cannot scale out.
- **LevelDB:** RocksDB is an improved branch of LevelDB, and they are mostly functionally equivalent, but LevelDB lacks an actively maintained driver in Erlang (Erlang NIF). So, it has not been adopted.
Expand Down
6 changes: 3 additions & 3 deletions en/202210/how-to-install-emqx-mqtt-broker-on-ubuntu.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ When the server has no public network access or needs to quickly deploy and veri

#### Download the installation package

Visit the [EMQX download address](https://www.emqx.io/downloads?os=Ubuntu). Select the `Package` tag, select `Ubuntu20.04 amd64/tag.gz` for the installation package type, and then click the “copy” icon on the right (this will copy the whole line of wget download command).
Visit the [EMQX download address](https://www.emqx.com/en/downloads-and-install/broker?os=Ubuntu). Select the `Package` tag, select `Ubuntu20.04 amd64/tag.gz` for the installation package type, and then click the “copy” icon on the right (this will copy the whole line of wget download command).

Paste the download command to the ubuntu terminal and perform the download operation.

Expand Down Expand Up @@ -139,7 +139,7 @@ By default, EMQX will allow any client connection until the user creates an auth

> EMQX also provides authentication integration support with a variety of back-end databases, including MySQL, PostgreSQL, MongoDB, and Redis.
>
> Check the documentation for more authentication methods: [https://www.emqx.io/docs/en/v5.0/security/authn/authn.html](https://www.emqx.io/docs/en/v5.0/security/authn/authn.html)
> Check the documentation for more authentication methods: [https://docs.emqx.com/en/emqx/v5.0/security/authn/authn.html](https://docs.emqx.com/en/emqx/v5.0/security/authn/authn.html)
### Create authentication

Expand Down Expand Up @@ -185,7 +185,7 @@ Next, use the user name `test1` that has not been created. Click Connect, and yo

![MQTT Authentication test](https://assets.emqx.com/images/a6664b3595bbfd31b86303e34c8d88da.png)

So far, we have completed the authentication configuration for EMQX and set up a single-node MQTT broker available in the production environment. To ensure the high availability of the MQTT broker, you need to create a multi-node EMQX cluster. The cluster creation will not be detailed in this document. You may refer to the [EMQX Cluster documentation](https://www.emqx.io/docs/en/v5.0/deploy/cluster/intro.html) for configuration.
So far, we have completed the authentication configuration for EMQX and set up a single-node MQTT broker available in the production environment. To ensure the high availability of the MQTT broker, you need to create a multi-node EMQX cluster. The cluster creation will not be detailed in this document. You may refer to the [EMQX Cluster documentation](https://docs.emqx.com/en/emqx/v5.0/deploy/cluster/intro.html) for configuration.



Expand Down
2 changes: 1 addition & 1 deletion en/202211/mqttx-v-1-8-3-release-notes.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ Online MQTT 5.0 Client Tool MQTTX Web has been updated as follows:
- Support setting subscription identifiers and subscription options
- Support setting the reconnect period

Online use address: [http://www.emqx.io/online-mqtt-client](http://www.emqx.io/online-mqtt-client)
Online use address: [http://mqtt-client.emqx.com/](http://mqtt-client.emqx.com/)

## MQTTX CLI

Expand Down
Loading

0 comments on commit 7c88507

Please sign in to comment.