Home >Backend Development >Golang >How to install NSQ's Go language client in a Linux system

How to install NSQ's Go language client in a Linux system

PHPz
PHPzOriginal
2023-04-14 09:33:20707browse

NSQ is an open source message queue middleware written in Go language. It has the characteristics of high performance, simple use, flexible deployment and easy expansion. In distributed systems, the role of message queues is becoming more and more important, and NSQ is a message queue that is very suitable for distributed system scenarios.

This article will introduce how to install the Go language client of NSQ in a Linux system, and briefly introduce the use of NSQ.

1. Install the Go language environment

Before installing NSQ, you need to install the Go language environment. The steps to install the Go language environment in the Linux system are as follows:

1. Download the installation package
The official website https://golang.org/dl/ provides installation packages for various operating systems, download the corresponding Installation package for Linux systems.

2. Unzip the installation package
Unzip the downloaded installation package to the specified directory of the Linux system, for example: unzip it to the /usr/local directory.

3. Configure environment variables
In Linux systems, to configure environment variables, you need to edit the /etc/profile file and add the following content at the end of the file:

export PATH=$PATH:/ usr/local/go/bin
export GOPATH=/home/go

GOPATH can be replaced with any user-defined directory path. After the modification is completed, use the source /etc/profile command to make the variables effective.

4. Use the command to check the environment variable
Enter go version in the terminal. If information similar to the following is output, the installation is successful.

go version go1.9.2 linux/amd64

2. Download the NSQ client

1. Create a working directory
In the Linux system, create a working directory, For example: /opt/nsq.

2. Get the NSQ client
Enter the working directory/opt/nsq and execute the following command to download the NSQ client code:

go get github.com/nsqio/go-nsq

After execution is completed, the code will be downloaded to the $GOPATH/src directory.

3. Using the NSQ client

The NSQ client is very simple to use. The following is a simple example to demonstrate how to use the NSQ client.

1. Start the NSQd service
First, you need to start the NSQd service. Execute the following command to start the NSQd service (the -p parameter is the TCP port number, and the -http-address parameter is the HTTP API port number):

nsqd -tcp-address=127.0.0.1:4150 -http-address=127.0.0.1:4151

2. Send a message
Enter the following command in the terminal to send a message:

echo "hello nsq" | nsq_pub -topic=test -host=127.0.0.1:4150

In the above command, the parameter -topic is used to specify the topic of the message, and -host is used to specify the NSQd service address and port number.

3. Consume messages
Enter the following command in the terminal to listen to the NSQd service, receive and process messages:

nsq_sub -topic=test -channel=worker -host=127.0.0.1: 4150

In the above command, the parameter -topic is used to specify the message topic to be consumed, and -channel is used to specify the consumer of the message.

4. Summary

This article introduces how to install the Go language client of NSQ in a Linux system and demonstrates the use of the NSQ client. NSQ has the characteristics of high performance, simple use, flexible deployment and easy expansion, and plays an important role in distributed system scenarios. If you need to use message queue middleware in project development, NSQ is undoubtedly a highly recommended solution.

The above is the detailed content of How to install NSQ's Go language client in a Linux system. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn