0

企业微信redis集群配置

微信开发 · SucWall · 查看 1195 次 · 于 2年前

redis企业微信

public void ConfigureServices(IServiceCollection services)
{
           //..
           services.AddSenparcGlobalServices(Configuration);
           services.AddSenparcWeixinServices(Configuration);
           //..
}

 public void Configure(IApplicationBuilder app, IWebHostEnvironment env, IOptions<SenparcSetting> senparcSetting, IOptions<SenparcWeixinSetting> senparcWeixinSetting)
       {
           app.UseRouting();

           if (env.IsDevelopment())
           {
               app.UseDeveloperExceptionPage();
           }

           app.UseSwagger();
           app.UseSwaggerUI(c =>
           {
               c.SwaggerEndpoint("/swagger/v1/swagger.json", "****V1");
               c.RoutePrefix = string.Empty;
           });




           // 启动 CO2NET 全局注册,必须!
           // 关于 UseSenparcGlobal() 的更多用法见 CO2NET Demo:https://github.com/Senparc/Senparc.CO2NET/blob/master/Sample/Senparc.CO2NET.Sample.netcore3/Startup.cs
           var registerService = app.UseSenparcGlobal(env, senparcSetting.Value, globalRegister =>
           {
               //配置全局使用Redis缓存(按需,独立)

               /* 说明:
                * 1、Redis 的连接字符串信息会从 Config.SenparcSetting.Cache_Redis_Configuration 自动获取并注册,如不需要修改,下方方法可以忽略
               /* 2、如需手动修改,可以通过下方 SetConfigurationOption 方法手动设置 Redis 链接信息(仅修改配置,不立即启用)
                */
               Senparc.CO2NET.Cache.CsRedis.Register.SetConfigurationOption(senparcSetting.Value.Cache_Redis_Configuration);

               //以下会立即将全局缓存设置为 Redis
               Senparc.CO2NET.Cache.CsRedis.Register.UseKeyValueRedisNow();//键值对缓存策略(推荐)
           }, true)
               //使用 Senparc.Weixin SDK
               .UseSenparcWeixin(senparcWeixinSetting.Value, weixinRegister =>
               {
                   weixinRegister.UseSenparcWeixinCacheCsRedis();
                   // 注册企业号(按需)           -- DPBMARK Work
                   //注册企业微信(可注册多个)
                   weixinRegister.RegisterWorkAccount(senparcWeixinSetting.Value, "企业微信");
               });

           app.UseEndpoints(endpoints =>
           {
               endpoints.MapControllers();
           });
       }

配置文件
//CO2NET 设置
 "SenparcSetting": {
   //以下为 CO2NET 的 SenparcSetting 全局配置,请勿修改 key,勿删除任何项

   "IsDebug": false,
   "DefaultCacheNamespace": "DefaultCache",

   //分布式缓存
   "Cache_Redis_Configuration": "redis1:6369,redis2:6369,redis3:6369,password=********,defaultDatabase=6",
   "SenparcUnionAgentKey": "Homsom:SenparcUnionAgentKey"
 },
 //Senparc.Weixin SDK 设置
 "SenparcWeixinSetting": {
   //以下为 Senparc.Weixin 的 SenparcWeixinSetting 微信配置
   //注意:所有的字符串值都可能被用于字典索引,因此请勿留空字符串(但可以根据需要,删除对应的整条设置)!

   //微信全局
   "IsDebug": true,
   //企业微信
   "WeixinCorpId": "",
   "WeixinCorpAgentId": "",
   "WeixinCorpSecret": "",
   "WeixinCorpToken": "",
   "WeixinCorpEncodingAESKey": ""
 },


  at System.ThrowHelper.ThrowAggregateException(List`1 exceptions)
  at System.Threading.Tasks.Task.WaitAllCore(Task[] tasks, Int32 millisecondsTimeout, CancellationToken cancellationToken)
  at System.Threading.Tasks.Task.WaitAll(Task[] tasks, Int32 millisecondsTimeout)
  at Senparc.Weixin.Work.Containers.ProviderTokenContainer.Register(String corpId, String corpSecret, String name)
  at Senparc.Weixin.Work.Register.RegisterWorkAccount(IRegisterService registerService, String weixinCorpId, String weixinCorpSecret, String name)
  at Senparc.Weixin.Work.Register.RegisterWorkAccount(IRegisterService registerService, ISenparcWeixinSettingForWork weixinSettingForWork, String name)
  at Homsom.EnterpriseWechat.Api.Startup.<>c__DisplayClass5_0.<Configure>b__2(IRegisterService weixinRegister) in D:\WorkDocument\NewWorkLibDocument\Homsom.WeiXin.Work.ThirdParty\src\Homsom.EnterpriseWechat.Api\Startup.cs:line 119
  at Senparc.Weixin.WeixinRegister.UseSenparcWeixin(IRegisterService registerService, SenparcWeixinSetting senparcWeixinSetting, Action`1 registerConfigure)
  at Homsom.EnterpriseWechat.Api.Startup.Configure(IApplicationBuilder app, IWebHostEnvironment env, IOptions`1 senparcSetting, IOptions`1 senparcWeixinSetting) in D:\WorkDocument\NewWorkLibDocument\Homsom.WeiXin.Work.ThirdParty\src\Homsom.EnterpriseWechat.Api\Startup.cs:line 100
  at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor, Boolean wrapExceptions)
  at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
  at Microsoft.AspNetCore.Hosting.ConfigureBuilder.Invoke(Object instance, IApplicationBuilder builder)
  at Microsoft.AspNetCore.Hosting.ConfigureBuilder.<>c__DisplayClass4_0.<Build>b__0(IApplicationBuilder builder)
  at Microsoft.AspNetCore.Hosting.GenericWebHostBuilder.<>c__DisplayClass13_0.<UseStartup>b__2(IApplicationBuilder app)
  at Microsoft.AspNetCore.Mvc.Filters.MiddlewareFilterBuilderStartupFilter.<>c__DisplayClass0_0.<Configure>g__MiddlewareFilterBuilder|0(IApplicationBuilder builder)
  at Microsoft.AspNetCore.HostFilteringStartupFilter.<>c__DisplayClass0_0.<Configure>b__0(IApplicationBuilder app)
  at Microsoft.AspNetCore.Hosting.GenericWebHostService.<StartAsync>d__31.MoveNext()

在注册企业微信的地方会报错,排查下来应该是redis配置错误。
现在用的redis集群是一主两从,只连接主redis就没问题,redis配置集群就会出现错误

------------------
我的 GitHub: https://github.com/541244266@qq.com
您尚未登录,请:网站登录 or 微信登录
共收到 1 条回复
0

Senparc 2年前

尝试一下更换 Senparc.Weixin.Cache.Redis,取代 Senparc.Weixin.Cache.CsRedis,排除一下CsRedis的问题。


热门话题 更多 >>

tenpayv3 jsapi 报错,这个是怎么回事呢

cn181 8 个回复 • 查看 484 次 • 166天前

EventLog access is not supported on this platform

FunctionWoo 4 个回复 • 查看 841 次 • 148天前

小程序授权

fjl-net 3 个回复 • 查看 2549 次 • 4天前

企微群发消息更新

1995822cxy 3 个回复 • 查看 329 次 • 179天前

提两个需求

wongsimon 3 个回复 • 查看 318 次 • 165天前

Config.SenparcWeixinSetting.Items["xxx"]得不到值

donet520 3 个回复 • 查看 170 次 • 28天前

.netcore7菜单获取问题

wangbin5542 3 个回复 • 查看 65 次 • 1天前

企业微信自建应用后台搭建

wangliangonline 2 个回复 • 查看 149 次 • 36天前

企业微信官方调整了用户和部门部分接口

qw4566540 2 个回复 • 查看 85 次 • 25天前

创建Xncf模块后因引用包不正确,无法通过编译

greystar 2 个回复 • 查看 234 次 • 113天前

AccessTokenContainer.RegisterAsync重复注册问题

nextuntil 1 个回复 • 查看 208 次 • 66天前

源码里没有微信客服相关的代码吗?

maojiayuan 1 个回复 • 查看 211 次 • 66天前

企业微信升级最新包项目启动异常

fan. 1 个回复 • 查看 242 次 • 66天前

企业微信审批模块审批状态推送事件

qq29366365 1 个回复 • 查看 132 次 • 66天前

NCF启动失败

kenton 1 个回复 • 查看 248 次 • 170天前

个人信息
QQ群
  • 1群:300313885 (2000人群 已满)
  • 2群:293958349 (1000人群 已满)
  • 3群(公众号):342319110 Senparc.Weixin.MPSDK 3群
  • 4群:372212092 (500人群 已满)
  • 5群:377815480 (1000人群 已满)
  • 6群:425898825 (1000人群 已满)
  • 7群:482942254 (500人群 已满)
  • 8群:106230270 (500人群 已满)
  • 9群:539061281 (500人群 已满)
  • 10群(分布式缓存):246860933 Senparc.Weixin.Cache SDK 10群
  • 11群:553198593 (500人群 已满)
  • 12群(小程序):108830388 (2000人群 已满)
  • 13群(开放平台):183424136 (500人群 已满)
  • 14群(视频学员):588231256 Senparc.Weixin SDK 14群
  • 15群(综合):289181996 (500人群 已满)
  • 16群(开放平台):860626938 (500人群 已满)
  • 17群(小程序):770615466 [17群 开放平台]SenparcSDK
  • NCF 技术交流群:147054579 SCF 开发交流群
微信开发宝典:《微信开发深度解析》

由 Senparc.Weixin SDK 作者耗时两年完成的微信开发图书《微信开发深度解析:公众号、小程序高效开发秘籍》已经出版!

历经2年精心雕琢,难得的“理论 + 实战案例 + 趟坑经验”总结,
从需求分析、策划,到账号申请、验证,再到全面的 API 及开发工具,
覆盖所有开发微信公众号(含订阅号、服务号和小程序)所需关键技能!

视频教程:《微信公众号+小程序快速开发》

由盛派课堂(盛派旗下独立教育品牌)制作,《微信开发深度解析》作者苏震巍先生主讲的《微信公众号+小程序快速开发》视频课程开课啦!

课程采用“理论+实战”的教学形式,结合部分《微信开发深度解析》内容,独立于书本,包含了更多的操作演示和案例展示,帮助大家从多个维度学习微信开发以及.NET开发过程中的诸多技巧。
课程包含两大部分:
1. 微信开发基础技能
2. 公众号及小程序案例实战
共计60课时,配有番外篇,目前视频已在网易云课堂上线。