Esempio n. 1
0
 /// <summary>
 /// 手动更新全部配置
 /// </summary>
 public static bool ManualUpdateAllConfigure()
 {
     try
     {
         var jsonModel = ConfigureAdapterService.getInstance().ConfigureModel;
         var tenant    = jsonModel.Tenant;
         var secretKey = jsonModel.SecretKey;
         var accessKey = jsonModel.AccessKey;
         foreach (var item in jsonModel.AliyunItems)
         {
             if (string.IsNullOrEmpty(item.DataId) || string.IsNullOrEmpty(item.Group) || string.IsNullOrEmpty(item.AppConfigurePath))
             {
                 continue;
             }
             var dataId           = item.DataId;
             var group            = item.Group;
             var appConfigurePath = item.AppConfigurePath;
             var ret = AcmService.GetRemoteConfigure(tenant, dataId, group, secretKey, accessKey);
             FileHelper.WriteJsonToFile(ret, appConfigurePath);
         }
         return(true);
     }
     catch (Exception ex)
     {
         return(false);
     }
 }
Esempio n. 2
0
        /// <summary>
        /// 更新单个配置,通过DataId,Group进行唯一指定
        /// </summary>
        public static void UpdateSpecifyConfigure(string DataId, string Group, string AppConfigurePath)
        {
            var jsonModel        = ConfigureAdapterService.getInstance().ConfigureModel;
            var tenant           = jsonModel.Tenant;
            var secretKey        = jsonModel.SecretKey;
            var accessKey        = jsonModel.AccessKey;
            var dataId           = DataId;
            var group            = Group;
            var appConfigurePath = AppConfigurePath;

            AcmService.ListeningRemoteConfigure(dataId, tenant, group, secretKey, accessKey, appConfigurePath);
        }
Esempio n. 3
0
        /// <summary>
        /// 监听批量更新配置
        /// </summary>
        public static void BatchUpdateConfigure()
        {
            var jsonModel = ConfigureAdapterService.getInstance().ConfigureModel;
            var tenant    = jsonModel.Tenant;
            var secretKey = jsonModel.SecretKey;
            var accessKey = jsonModel.AccessKey;

            foreach (var item in jsonModel.AliyunItems)
            {
                //必须采用多线程去并发遍历配置,不然会发生阻塞耗时
                if (string.IsNullOrEmpty(item.DataId) || string.IsNullOrEmpty(item.Group) || string.IsNullOrEmpty(item.AppConfigurePath))
                {
                    continue;
                }
                var dataId           = item.DataId;
                var group            = item.Group;
                var appConfigurePath = item.AppConfigurePath;
                new TaskFactory().StartNew(() => {
                    AcmService.ListeningRemoteConfigure(dataId, tenant, group, secretKey, accessKey, appConfigurePath);
                });
            }
        }