Ionic React with SignalR Redis Backplane

Viewed 20

We were able to successfully setup a React Web App using ASP Net Core 6 + SignalR with Redis Backplane.

            services.AddSignalR(hubOptions => { hubOptions.EnableDetailedErrors = true; })
                .AddStackExchangeRedis(appSettings.RedisConnectionString, options => {
                    options.Configuration.ChannelPrefix = appSettings.RedisPrefix;
                });

We are using Kubernetes + Traefik with the following IngressRoute configuration to ensure that the React Web Application maintains connection to one of the servers per session.

apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
  name: routes
  namespace: default
spec:
  entryPoints:
  - websecure
  routes:
  - kind: Rule
    match: Host(`canary-api.app.com`)
    services:
    - kind: Service
      name: app-server-canary
      namespace: default
      passHostHeader: true
      sticky:
        cookie:
          httpOnly: true
          name: "traefik_sticky"
      port: 80
  tls:
    store:
      name: default

After these changes, the SignalR based Chat System on our React Web App works but the Ionic React Build of the same application for Mobile Release does not work. Is there something that needs to be done on the React Ionic Build to ensure that it respects the same sticky sessions as the regular React Web App does?

We're confident the server side is okay because the statically served React Web App works fine. It seems like we just missed some configuration in the config xml for React Ionic Build but we're not sure at this point.

0 Answers
Related