Add more comments for example (#436)

diff --git a/golang/example/consumer/simple_consumer/main.go b/golang/example/consumer/simple_consumer/main.go
index 6b1b974..95b3edc 100644
--- a/golang/example/consumer/simple_consumer/main.go
+++ b/golang/example/consumer/simple_consumer/main.go
@@ -50,7 +50,7 @@
 	// log to console
 	os.Setenv("mq.consoleAppender.enabled", "true")
 	rmq_client.ResetLogger()
-	// new simpleConsumer instance
+	// In most case, you don't need to create many consumers, singletion pattern is more recommended.
 	simpleConsumer, err := rmq_client.NewSimpleConsumer(&rmq_client.Config{
 		Endpoint:      Endpoint,
 		ConsumerGroup: ConsumerGroup,
diff --git a/golang/example/producer/async/main.go b/golang/example/producer/async/main.go
index 7190b86..543c9b2 100644
--- a/golang/example/producer/async/main.go
+++ b/golang/example/producer/async/main.go
@@ -40,7 +40,7 @@
 	// log to console
 	os.Setenv("mq.consoleAppender.enabled", "true")
 	rmq_client.ResetLogger()
-	// new producer instance
+	// In mose case, you don't need to create many producers, singletion pattern is more recommended.
 	producer, err := rmq_client.NewProducer(&rmq_client.Config{
 		Endpoint: Endpoint,
 		Credentials: &credentials.SessionCredentials{
diff --git a/golang/example/producer/delay/main.go b/golang/example/producer/delay/main.go
index 42b376e..9918311 100644
--- a/golang/example/producer/delay/main.go
+++ b/golang/example/producer/delay/main.go
@@ -40,7 +40,7 @@
 	// log to console
 	os.Setenv("mq.consoleAppender.enabled", "true")
 	rmq_client.ResetLogger()
-	// new producer instance
+	// In most case, you don't need to create many producers, singletion pattern is more recommended.
 	producer, err := rmq_client.NewProducer(&rmq_client.Config{
 		Endpoint: Endpoint,
 		Credentials: &credentials.SessionCredentials{
diff --git a/golang/example/producer/fifo/main.go b/golang/example/producer/fifo/main.go
index 48229ba..665842f 100644
--- a/golang/example/producer/fifo/main.go
+++ b/golang/example/producer/fifo/main.go
@@ -40,7 +40,7 @@
 	// log to console
 	os.Setenv("mq.consoleAppender.enabled", "true")
 	rmq_client.ResetLogger()
-	// new producer instance
+	// In mose case, you don't need to create many producers, singletion pattern is more recommended.
 	producer, err := rmq_client.NewProducer(&rmq_client.Config{
 		Endpoint: Endpoint,
 		Credentials: &credentials.SessionCredentials{
diff --git a/golang/example/producer/normal/main.go b/golang/example/producer/normal/main.go
index cc2916f..8b89478 100644
--- a/golang/example/producer/normal/main.go
+++ b/golang/example/producer/normal/main.go
@@ -39,7 +39,7 @@
 func main() {
 	os.Setenv("mq.consoleAppender.enabled", "true")
 	rmq_client.ResetLogger()
-	// new producer instance
+	// In most case, you don't need to create many producers, singletion pattern is more recommended.
 	producer, err := rmq_client.NewProducer(&rmq_client.Config{
 		Endpoint: Endpoint,
 		Credentials: &credentials.SessionCredentials{
diff --git a/golang/example/producer/transaction/main.go b/golang/example/producer/transaction/main.go
index f46d227..af49811 100644
--- a/golang/example/producer/transaction/main.go
+++ b/golang/example/producer/transaction/main.go
@@ -40,7 +40,7 @@
 	// log to console
 	os.Setenv("mq.consoleAppender.enabled", "true")
 	rmq_client.ResetLogger()
-	// new producer instance
+	// In mose case, you don't need to create many producers, singletion pattern is more recommended.
 	producer, err := rmq_client.NewProducer(&rmq_client.Config{
 		Endpoint: Endpoint,
 		Credentials: &credentials.SessionCredentials{