func (s *ServiceInfo) Append(uriPath ...string) {
	s.mu.Lock()
	defer s.mu.Unlock()
	s.UriPaths = append(s.UriPaths, uriPath...)
}
Append appends uri path
package discovery
import (
	"encoding/json"
	"strings"
	"sync"
	"github.com/henrylee2cn/goutil"
)
var (
	serviceNamespace = "TP-SRV@"
)
func ServiceNamespace() string {
	return serviceNamespace
}
func SetServiceNamespace(prefix string) {
	serviceNamespace = prefix
}
type ServiceInfo struct {
	UriPaths []string `json:"uri_paths"`
	mu       sync.RWMutex
}
func (s *ServiceInfo) String() string {
	s.mu.RLock()
	defer s.mu.RUnlock()
	b, _ := json.Marshal(s)
	return goutil.BytesToString(b)
}