|
@@ -0,0 +1,146 @@
|
|
|
|
+package cfg
|
|
|
|
+
|
|
|
|
+import (
|
|
|
|
+ "cicv-data-closedloop/plugin-compile/package/config/c_log"
|
|
|
|
+ "fmt"
|
|
|
|
+ "github.com/nacos-group/nacos-sdk-go/v2/clients"
|
|
|
|
+ "github.com/nacos-group/nacos-sdk-go/v2/clients/naming_client"
|
|
|
|
+ "github.com/nacos-group/nacos-sdk-go/v2/common/constant"
|
|
|
|
+ "github.com/nacos-group/nacos-sdk-go/v2/vo"
|
|
|
|
+ "os"
|
|
|
|
+)
|
|
|
|
+
|
|
|
|
+var (
|
|
|
|
+ nacosIp = "36.110.106.142"
|
|
|
|
+ nacosPort = 8848
|
|
|
|
+ namespaceId = "45e828a5-1a1d-4c46-a746-d4dfa3ca8f5f"
|
|
|
|
+ username = "cicv"
|
|
|
|
+ password = "cicv"
|
|
|
|
+ //serviceIp = "36.110.106.142"
|
|
|
|
+ //servicePort = 12340
|
|
|
|
+ serviceName = "pji-control"
|
|
|
|
+ metadata = map[string]string{"开发者": "孟令鑫"}
|
|
|
|
+)
|
|
|
|
+
|
|
|
|
+func InitNacos() {
|
|
|
|
+ //create ServerConfig
|
|
|
|
+ sc := []constant.ServerConfig{
|
|
|
|
+ *constant.NewServerConfig(nacosIp, uint64(nacosPort), constant.WithContextPath("/nacos")),
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ //create ClientConfig
|
|
|
|
+ cc := *constant.NewClientConfig(
|
|
|
|
+ constant.WithNamespaceId(namespaceId),
|
|
|
|
+ constant.WithNotLoadCacheAtStart(true),
|
|
|
|
+ constant.WithUsername(username),
|
|
|
|
+ constant.WithPassword(password),
|
|
|
|
+ )
|
|
|
|
+
|
|
|
|
+ // create naming client
|
|
|
|
+ client, err := clients.NewNamingClient(
|
|
|
|
+ vo.NacosClientParam{
|
|
|
|
+ ClientConfig: &cc,
|
|
|
|
+ ServerConfigs: sc,
|
|
|
|
+ },
|
|
|
|
+ )
|
|
|
|
+
|
|
|
|
+ if err != nil {
|
|
|
|
+ c_log.GlobalLogger.Error("程序崩溃,nacos连接失败:", err)
|
|
|
|
+ os.Exit(-1)
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ //Register
|
|
|
|
+ registerServiceInstance(client, vo.RegisterInstanceParam{
|
|
|
|
+ //Ip: serviceIp,
|
|
|
|
+ //Port: uint64(servicePort),
|
|
|
|
+ ServiceName: serviceName,
|
|
|
|
+ //GroupName: "group-a",
|
|
|
|
+ //ClusterName: "cluster-a",
|
|
|
|
+ Weight: 10,
|
|
|
|
+ Enable: true,
|
|
|
|
+ Healthy: true,
|
|
|
|
+ Ephemeral: true,
|
|
|
|
+ Metadata: metadata,
|
|
|
|
+ })
|
|
|
|
+
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+func registerServiceInstance(client naming_client.INamingClient, param vo.RegisterInstanceParam) {
|
|
|
|
+ success, err := client.RegisterInstance(param)
|
|
|
|
+ if !success || err != nil {
|
|
|
|
+ panic("RegisterServiceInstance failed!" + err.Error())
|
|
|
|
+ }
|
|
|
|
+ fmt.Printf("RegisterServiceInstance,param:%+v,result:%+v \n\n", param, success)
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+func batchRegisterServiceInstance(client naming_client.INamingClient, param vo.BatchRegisterInstanceParam) {
|
|
|
|
+ success, err := client.BatchRegisterInstance(param)
|
|
|
|
+ if !success || err != nil {
|
|
|
|
+ panic("BatchRegisterServiceInstance failed!" + err.Error())
|
|
|
|
+ }
|
|
|
|
+ fmt.Printf("BatchRegisterServiceInstance,param:%+v,result:%+v \n\n", param, success)
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+func deRegisterServiceInstance(client naming_client.INamingClient, param vo.DeregisterInstanceParam) {
|
|
|
|
+ success, err := client.DeregisterInstance(param)
|
|
|
|
+ if !success || err != nil {
|
|
|
|
+ panic("DeRegisterServiceInstance failed!" + err.Error())
|
|
|
|
+ }
|
|
|
|
+ fmt.Printf("DeRegisterServiceInstance,param:%+v,result:%+v \n\n", param, success)
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+func updateServiceInstance(client naming_client.INamingClient, param vo.UpdateInstanceParam) {
|
|
|
|
+ success, err := client.UpdateInstance(param)
|
|
|
|
+ if !success || err != nil {
|
|
|
|
+ panic("UpdateInstance failed!" + err.Error())
|
|
|
|
+ }
|
|
|
|
+ fmt.Printf("UpdateServiceInstance,param:%+v,result:%+v \n\n", param, success)
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+func getService(client naming_client.INamingClient, param vo.GetServiceParam) {
|
|
|
|
+ service, err := client.GetService(param)
|
|
|
|
+ if err != nil {
|
|
|
|
+ panic("GetService failed!" + err.Error())
|
|
|
|
+ }
|
|
|
|
+ fmt.Printf("GetService,param:%+v, result:%+v \n\n", param, service)
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+func selectAllInstances(client naming_client.INamingClient, param vo.SelectAllInstancesParam) {
|
|
|
|
+ instances, err := client.SelectAllInstances(param)
|
|
|
|
+ if err != nil {
|
|
|
|
+ panic("SelectAllInstances failed!" + err.Error())
|
|
|
|
+ }
|
|
|
|
+ fmt.Printf("SelectAllInstance,param:%+v, result:%+v \n\n", param, instances)
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+func selectInstances(client naming_client.INamingClient, param vo.SelectInstancesParam) {
|
|
|
|
+ instances, err := client.SelectInstances(param)
|
|
|
|
+ if err != nil {
|
|
|
|
+ panic("SelectInstances failed!" + err.Error())
|
|
|
|
+ }
|
|
|
|
+ fmt.Printf("SelectInstances,param:%+v, result:%+v \n\n", param, instances)
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+func selectOneHealthyInstance(client naming_client.INamingClient, param vo.SelectOneHealthInstanceParam) {
|
|
|
|
+ instances, err := client.SelectOneHealthyInstance(param)
|
|
|
|
+ if err != nil {
|
|
|
|
+ panic("SelectOneHealthyInstance failed!")
|
|
|
|
+ }
|
|
|
|
+ fmt.Printf("SelectOneHealthyInstance,param:%+v, result:%+v \n\n", param, instances)
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+func subscribe(client naming_client.INamingClient, param *vo.SubscribeParam) {
|
|
|
|
+ client.Subscribe(param)
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+func unSubscribe(client naming_client.INamingClient, param *vo.SubscribeParam) {
|
|
|
|
+ client.Unsubscribe(param)
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+func getAllService(client naming_client.INamingClient, param vo.GetAllServiceInfoParam) {
|
|
|
|
+ service, err := client.GetAllServicesInfo(param)
|
|
|
|
+ if err != nil {
|
|
|
|
+ panic("GetAllService failed!")
|
|
|
|
+ }
|
|
|
|
+ fmt.Printf("GetAllService,param:%+v, result:%+v \n\n", param, service)
|
|
|
|
+}
|