Вопрос

Сбои работы под нагрузкой

Здравствуйте!

Тестирую bpmonline Версия 7.11.3.1715 без кастомизации под нагрузкой. При определенном количестве пользователей в логах начинаются ошибки типа:

1. Object reference not set to an instance of an object.

   at System.IO.BufferedStream.ReadByte()

   at ServiceStack.Redis.RedisNativeClient.ReadLine()

   at ServiceStack.Redis.RedisNativeClient.SendExpectData(Byte[][] cmdWithBinaryArgs)

...

    Request URL: http://..../0/DataService/json/SyncReply/SelectQuery 

....

2.    Exception type: SocketException 

    Exception message: An established connection was aborted by the software in your host machine

   at System.Net.Sockets.Socket.Receive(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags)

   at System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size)

Request information: 

    Request URL: http://......./0/DataService/json/SyncReply/BatchQuery 

....

3. Object reference not set to an instance of an object.

   at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)

   at Quartz.Impl.AdoJobStore.Common.DbProvider.GetDbMetadata(String providerName)

   at Quartz.Impl.AdoJobStore.Common.DbProvider..ctor(String dbProviderName, String connectionString)

   at Quartz.Impl.StdSchedulerFactory.Instantiate()

Request information: 

    Request URL: http://......./ServiceModel/AuthService.svc/Login 

4. Scheduler with name 'BPMonlineQuartzScheduler' already exists.

   at Quartz.Impl.SchedulerRepository.Bind(IScheduler sched)

   at Quartz.Impl.StdSchedulerFactory.Instantiate()

   at Quartz.Impl.StdSchedulerFactory.GetScheduler()

....

    Request URL: http://....../ServiceModel/AuthService.svc/Login 

5. иногда сталкиваемся с подвисанием и 100% загрузкой процессора процессом ииса. В это время как правило резко возрастает счетчик "contention rate / sec" на сервере. 

Ошибки стабильные, появляются раз в несколько секунд в зависимости от нагрузки, пользователю приходит 500-ая ошибка. 

Кто-нибудь сталкивался с подобным, есть пути решения?

Нравится

1 комментарий

Здравствуйте!

Для анализа вопроса направьте, пожалуйста, в поддержку полные логи приложения, файл ConnectionStrings (необходимы значения параметров maxReadPoolSize=х;maxWritePoolSize=х), технические характеристики серверов, и детали по нагрузке (количество пользователей, кейсы нагрузки и.т.д).

 

Показать все комментарии