Firebase concurrent connections? - firebase

I came across a post Concurrent firebase
As per top answer on the post if a user John come online at 12:00 , stay online for 24 hours , user Mike come online at 12:01 , stay online for 24 hours , user Jack come online at 12:02 , stay only for 24 hours, Then firebase have only 1 concurrent connection in 24 hours.
Did I understand correctly?
I was confused because I was thinking concurrent connection means connections to server at a time but as per explanation above concurrent connections mean connections start at same time?

I have no idea how you got from that accepted answer by #MikePugh to your conclusions. The text:
Concurrent connections are just that - connections established at the same time. So if you have 3 people using your app to check scores, but user 1's app goes online at 12:00 PM and the connection lasts for 5 seconds, then user 2's app goes online at 12:01 PM for 5 seconds, and user 3's app goes online at 12:02 PM for 5 seconds then you've only ever had 1 concurrent connection.
I added emphasis on the parts that you seem to have skipped in your copy.
In the example Mike gave, each user was connected only for a very short time. So there was never more than a single concurrent connection. In fact, for the majority of the day (23 hours 59 minutes 45 seconds) there were 0 connections. Given that Firebase bills at the 95th percentile, you'd be billed for 0 concurrent connections (if they'd offer such a tier).
You indicate that your users stay connected for 24 hours, which leads to 3 concurrent connections from 12:02 to midnight. So you'd have 3 concurrent connections for the majority of the time.

Related

Unsynchronization and synchronization for NTP

I am using a GPS source for my NTP server. I am using the Meinberg program for my NTP as well.
My NTP client configuration is:
Server ntpclock prefer iburst minpoll 2 maxpoll 5
If my NTP client is set 30 minutes or more back in time, is it really difficult to synchronise back? Because I have been testing with 5 minutes, 10 minutes and 15 minutes. But not 30 minutes and more.
If the synchronization takes longer time for the 30 minutes back in time and more, what would be the reason or explanation?
Since in all examples the offset is greater than the step threshold of 128 ms, the clock should step in a little more than 10 mins (the step out threshold); how much more will depend on the current poll interval (2^2=4s to 2^5=32s) which depends on how stable it was before, and on when the clock fell out of synch relative to the polling. iburst speeds up the sync after the step out threshold timer triggers.

How to troubleshoot unresponsive ASP .NET Web API on IIS?

I am having an issue with Web API hosted on IIS. Here are the details
Environment: ASP.Net MVC, IIS, SQL server
Web API hosted on separate server, Load balanced with 2 servers, Big
IP
The API works fine in PROD but in lower environments it becomes unresponsive or very slow. Sometimes it takes 5 minutes to process a request. Otherwise it takes forever. The issues occurs only once or twice a month. App Pool recycle or IIS restart didn’t seem to help. But after rebooting server it works fine and processes the same request in 10 – 20 seconds.
Authentication is set for every request (i.e. 401 followed by 200). When issue occurs the IIS log has only 401 entry. Issue seems to happen on only 1 server as it starts to work fine after restarting only that server.
During the issue when another API request comes, it gets to the affected server. What might be the reason that the request doesn’t go to another server which is free?
The system logs were fine. The CPU utilization was 3%, Memory usage etc. looks good on the server at the time of issue. IIS configuration settings are same as PROD and look good.
What tools can be used to monitor IIS Apps, Server? Are there any free tools? Any help to troubleshoot this issue will be great.
Some errors on server:
Activation of app Microsoft.Windows.Cortana_cw5n1h2txyewy!CortanaUI failed with error: This app can't be activated by the Built-in Administrator. See the Microsoft-Windows-TWinUI/Operational log for additional information.
The Open Procedure for service "BITS" in DLL "C:\Windows\System32\bitsperf.dll" failed. Performance data for this service will not be available. The first four bytes (DWORD) of the Data section contains the error code.
Windows cannot load the extensible counter DLL ASP.NET_2.0.50727. The first four bytes (DWORD) of the Data section contains the Windows error code.
Cryptographic Services failed while processing the OnIdentity() call in the System Writer Object.
UPDATE:
DebugDiag2 Analysis - CrashHangAnalysis report.
Is this causing deadlock?
Thread ID Total CPU Time Entry Point for Thread
2 00:00:00.031 ntdll!RtlReleaseSRWLockExclusive+2200
0 00:00:00.030 w3wp+2e50
1 00:00:00.000 nativerd!DllGetClassObject+24680
3 00:00:00.000 ntdll!RtlReleaseSRWLockExclusive+2200
4 00:00:00.000 w3tp!THREAD_POOL::CreateThreadPool+350
4 Threads (40% of all threads) have this same call stack.
Note: Grouping of identical threads can be disabled in the 'Preferences' tab of the Analysis Options
Thread 2 - System ID 4704
Entry point ntdll!RtlReleaseSRWLockExclusive+2200
Create time 9/20/2021 1:00:34 PM
Time spent in user mode 0 Days 00:00:00.000
Time spent in kernel mode 0 Days 00:00:00.031
This thread is not fully resolved and may or may not be a problem. Further analysis of these threads may be required.
Thread 3 - System ID 2576
Entry point ntdll!RtlReleaseSRWLockExclusive+2200
Create time 9/20/2021 1:00:34 PM
Time spent in user mode 0 Days 00:00:00.000
Time spent in kernel mode 0 Days 00:00:00.000
This thread is not fully resolved and may or may not be a problem. Further analysis of these threads may be required.
Thread 8 - System ID 2112
Entry point ntdll!RtlReleaseSRWLockExclusive+2200
Create time 9/20/2021 1:00:34 PM
Time spent in user mode 0 Days 00:00:00.000
Time spent in kernel mode 0 Days 00:00:00.000
This thread is not fully resolved and may or may not be a problem. Further analysis of these threads may be required.
Thread 9 - System ID 5832
Entry point ntdll!RtlReleaseSRWLockExclusive+2200
Create time 9/20/2021 1:01:04 PM
Time spent in user mode 0 Days 00:00:00.000
Time spent in kernel mode 0 Days 00:00:00.000
This thread is not fully resolved and may or may not be a problem. Further analysis of these threads may be required.
Instruction Address Source
[0x7ffadb029444] ntdll!NtWaitForWorkViaWorkerFactory+14
[0x7ffadaf9eb4e] ntdll!RtlReleaseSRWLockExclusive+296e
[0x7ffada7184d4] kernel32!BaseThreadInitThunk+14
[0x7ffadafd1781] ntdll!RtlUserThreadStart+21

asp.net application high cpu, high requests/sec

I am testing an asp.net web application iis7.Appserver- dual core,8gb, Webserver -dualcore 8gb.Running with 50 users for 1 hour.Requests/sec is 550 and CPU maxes out. Requests queue & current are 4 and 21 on an average. We run on default configuration. Number of logical and physical threads on webserver are 55 and 48 on an avg.Private bytes consumed went up to 0.4gb by end of load test.# of Exceps thrown/sec increases but errors total/sec is 0. Cache total turnover rate is high.% GC time is 4.73 on an avg.There are no errors in the load test and no. of passed transactions are also good.The concerns that we have are:
-How to improve the response time
-Should we limit the request/sec and are we stressing the server coz of high no. of requests
-Is 50 users high for the current configuration.We dont have any biz requirement or SLAs as of now.
I changed the process config to he following and that improved the resp time by 1-4 secs.
memoryLimit="60"
autoConfig="false"
maxWorkerThreads="100"
maxIoThreads="100"
minWorkerThreads="40"
minIoThreads="30"
Any insights will be appreciated.

Can Firebase's cap of 10000 simultaneous connections support an app that has a sudden burst of 3M connections on a day? [duplicate]

This question already has an answer here:
How exactly are concurrent users determined for a Firebase app?
(1 answer)
Closed 6 years ago.
I know similar questions about Firebase's simultaneous connections were asked before. The answers were generic and do not apply to the very specific situation that this question discusses.
The official documentation says,
"There is an initial 10,000 simultaneous-connections cap on the Flame and Blaze plans."
https://firebase.google.com/pricing/
I am wondering if this cap might prevent my app from working properly: Suppose I have an app for the upcoming US presidential election. It's going to let users cast a virtual vote and monitor the trend in real time.
Obviously, it's very easy to have more than 10,000 users using the app at the same time (because everyone wants to know who's winning/losing in real time).
The current U.S. population is 320M. Assuming 1% of the population will be using the app on the election day, 3M users will connect to the Firebase database at the same time, constantly keeping an eye on the latest trend.
With this context, can anyone (preferably from Google) clarify if this cap will prevent the voting app from functioning properly? If so, what's the workaround?
Thanks very much.
Hashtag: #AskFirebase
The simultaneous connections are if you have 2 devices and first one connected at 9am for 1min and second one connected at 9:01am for 1 min you have a 1 concurrent connection in 9.00am and in 9.01am but if both connected to 9.00am for 1min you have a 2 concurrent connections... You can learn more about this, here and here. Greetings!

IIS 7 and ASP.NET 4 timeout

I have 3 applications on the same web server. Two of them are configured in separate ASP.NET 4 application pools and and one of them is on an ASP.NET 2 application pool.
I'm experiencing intermitent timeouts when accessing those apps during the day. To track down this timeouts, I have setup a ping monitoring service (motive.com). Here is a sample of the timeout ocurrencies log:
app date downtime main reason
APP2 19-September-2012, at 14:51 4 mins 50 secs connect() timed out!
APP1 19-September-2012, at 14:51 4 mins 50 secs connect() timed out!
APP2 19-September-2012, at 14:11 2 mins 50 secs couldn't connect to host
APP1 19-September-2012, at 14:11 2 mins 50 secs couldn't connect to host
APP2 19-September-2012, at 9:17 2 mins 41 secs couldn't connect to host
APP1 19-September-2012, at 9:17 2 mins 41 secs couldn't connect to host
...
As you can see, both ASP.net 4 pools are timing out simultaneously. I'm also monitoring the ASP.NET 2.0 app pool web site and I haven't have one single timeout!
There's no pattern whatsoever related to the time of the day that it occurs (both day/night). Intervals between timeouts don't follow a pattern either, sometimes they happen after 40 minutes, others take some hours in between.
The timeout never lasts more than 5 minutes, but they also vary from 2 to 5 minutes randomly.
At first I thought it might have something to do with application pool recycling but I've checked and recycling is set to occur after 24 hours and disabled for other events (memory peaks, etc.).
The site is infrequently accessed (it's in beta test), so there are no huge number of access, workers demand, memory consumption, etc.
I've also checked the IIS log and there are 2 to 5 minutes gaps during the hours of downtime reported by the monitoring service, but no error message. I also checked the Windows event log and haven't found anything unusual in system and application events.
I'm really desperate right now. If someone could help me out, I'd be really thankful.
Best Regards,
Eduardo de Freitas
It's hard to say, but one thing to check is in the web.config if you have This should be set to false, see this link for more details and additional items to look for: http://www.hanselman.com/blog/MostCommonASPNETSupportIssuesReportingFromDeepInsideMicrosoftDeveloperSupport.aspx

Resources