Simulating single action in parallel with recurring actions in Jmeter - concurrency

Suppose I've 50 users. I want the load of 49 users on the website in parallel with 50th user who will be performing a time-consuming single action only once. How can I achieve such concurrency in Jmeter?

Normally you should be using different Thread Groups to represent different business groups of virtual users so you can have:
1 Thread Group of 49 users doing the browsing or whatever
1 Thread Group of 1 user doing a time-consuming single action
Alternatively you can go for a single Thread Group of 50 users and use Throughput Controller to limit execution of the single action to 1:
More information: Running JMeter Samplers with Defined Percentage Probability

Related

How the Google Drive API Quota Limit works

Does the 'Per 100 seconds per user 20,000' limit apply to the user who uploads files to my account? that is, do they apply the limit through your ip? Or is it for me as the account holder?
I have an app where users upload files to my account, so I'd like to know if the limit applies to me as the account holder or the submitter to see if the app is viable.
There are two types of quotas user based quotas and application based quotas.
The last one Per 100 seconds per user Meaning A singe user of your application can make a max of 20k requests per 100 Seconds.
The first one Per 100 Seconds Meaning All users of your application at the same time may make a max of 20k requests per 100 seconds.
The middle one Per day Meaning all users of your application together can make a max of 1 billon requests per day.
Per user limits apply to anyone authorized to access your application, via the consent screen being shown to them. Its tracked by the access token they are using that contains the user info within it.
If you have the same user making requests over different ip address sometimes you can Hack the quota limit but it doesn't always work. A user is a user. No matter which machine they are coming from.

Bigquery BQ Alerts for Slots and Query concurrency

I'm trying to establish email alerts at a project level to send email alerts for when a certain number of query/job concurrency is reached e.g. 5 concurrent queries. We have a flat-rate pricing model.
I want to do a similar email notification when total slot Usage exceeds a certain threshold as well e.g. slot usage reaching 1000 slots
As a next step I would like to throttle new incoming queries based on the above mentioned thresholds. Meaning if there are already for example 5 queries actively running the 6th one will be put on hold until one of the 5 running earlier have completed.
You may create an Alert Policy in which you can set your desired metric type (eg. slots) and then configure your desired threshold similar to below.
In creating an Alert Policy you may also configure the notification channel to email notification which is also included on the same documentation.
For the available metric types for SLOTS in BigQuery, you may refer to this Google Cloud Metrics for BigQuery documentation.
For your next step, you may code (python, node.js, etc) using BigQuery API to count queries actively running (through JOB ID) and when the count hits 5, you may print "query queue is full" and then wait for the total JOBS to hit below 5 before running the next query. You may refer to this BigQuery Managing Jobs API Documentation.

Redshift WLM: If super user is added to automatic WLM query group then how many slots would be given to that query group?

I have created a WLM query group named ETL and have added 2 super users in that group. I am using automatic WLM, So not changing any concurrency related settings.
I am not clear about one thing that how many number of slots would be assignedand to this "ETL" group since it contains 2 super users?
As per the AWS documentation super user will have separate queue but what if the super users are part of other WLM group(ETL in this case).
When I run this query for ETL WLM select * from stl_wlm_query. In the result its shows slot_count as 1, ideally it should be 5 but same WLM group is also running 5 queries in parallel.
Two different concepts are being confused here. Users that have superuser ability and the superuser queue. The only way a query runs in the superuser queue is if the user is a superuser AND they have set the property "query_group" to 'superuser'. See - https://docs.aws.amazon.com/redshift/latest/dg/cm-c-wlm-queue-assignment-rules.html
So your superuser queries won't run in the superuser queue unless they set query_group like - "set query_group to 'superuser';" in their session. If this is done then their queries will run in the superuser queue.

Dynamodb transaction limits increase

Currently, I need to update two tables in concurrency and one table contains configurations and other table include items to the configuration link. Now whenever the configuration is updated, it provides me with the list of items that are belong to this configuration(it can be 100-1000 items or more). How can i update the dynamodb using transaction?
I need to update two tables in concurrency
See https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/transaction-apis.html
TransactWriteItems is a synchronous and idempotent write operation that groups up to 25 write actions in a single all-or-nothing operation. These actions can target up to 25 distinct items in one or more DynamoDB tables within the same AWS account and in the same Region. The aggregate size of the items in the transaction cannot exceed 4 MB. The actions are completed atomically so that either all of them succeed or none of them succeeds.

How to create User Task only once a day

We want to collect data during the day and create an User Task once a day. How can that be done with camunda? Is there a possibility to use process variables or do we need to access our own database and mark the corresponding items as processed (as soon as we create the daily user task)?
Do we need to create these user tasks programmatically? (We are using embedded Spring Boot Camunda instance)
One very good option would be to use a Timer Start Event per the documentation here: https://docs.camunda.org/manual/7.10/reference/bpmn20/events/timer-events/#timer-start-event.
It seems that you may want to use that in conjunction with a Timer Intermediate Catching Event (https://docs.camunda.org/manual/7.10/reference/bpmn20/events/timer-events/#timer-intermediate-catching-event) in something like the following manner:
Start a process instance at a specific time in the morning with the Timer Start Event. Perhaps 6:30AM in your local time zone?
Execute certain steps to gather data, perhaps through external service invocations, etc.
At a specific time (in the afternoon?), create the User Task and present the data. The User Task could follow the Timer Intermediate Catching Event noted above.
I hope this helps!