scheme.go 639 B

12345678910111213141516171819202122232425
  1. package gateway_node
  2. import (
  3. "fmt"
  4. "regexp"
  5. )
  6. const defaultScheme = "etcd:///com.gateway"
  7. var findServerCodeRegexp = regexp.MustCompile(`.*/(.*)@(.*)`)
  8. // createServerRegisterKey 创建ectd注册key内容
  9. func createServerRegisterKey(scheme, serverCode, serverAddr string) string {
  10. return fmt.Sprintf("%s/%s@%s", scheme, serverCode, serverAddr)
  11. }
  12. // getServerCodeFromKey 从etcd ServerRegisterKey中获取服务code
  13. func getServerCodeFromKey(key string) (serverCode, serverAddr string) {
  14. strArr := findServerCodeRegexp.FindStringSubmatch(key)
  15. if len(strArr) == 3 {
  16. serverCode = strArr[1]
  17. serverAddr = strArr[2]
  18. }
  19. return
  20. }