Tips on waiting for completion of all Observables when mergeAll is configured to 10?

Dealing with multiple concurrent requests to an API has been a challenge for me. When too many requests are made at once (sometimes as many as 200+), they tend to fail with errors.

I have a list of students and I need to create test assignments for each of them, requiring one API call per student. To handle this, I utilized forkJoint to group observables with API calls and wait until all requests are completed. Once done, a notification is sent to the user informing them that tests have been assigned to the students.

While this solution works well with the browser's limited request count (such as Chrome's limit of 10), it doesn't quite translate in the realm of HTTP/2. I came across this useful example which helped address the issue of handling a large number of requests. However, I still face the challenge of waiting for all (200+) requests to complete before displaying the notification. Figuring out how to achieve this using RxJs remains a puzzle for me.

Answer №1

The completed solution is as follows:

from(observables)
  .pipe(mergeAll(10), toArray())
  .subscribe();

Similar questions

If you have not found the answer to your question or you are interested in this topic, then look at other similar questions below or use the search

Having trouble getting jQuery scrollTop to function with an "else if" statement?

Looking to dynamically add or remove classes from a div based on scrolling position using jQuery. Defined two variables: var mainHeight = $('#main-image').height()/1.10; var footHeight = $('body').height() - $('footer').heig ...

Tips for dynamically altering the bound variable in Angular

Most people understand the concept of interpolation and how to interpolate a single variable with ease. However, what if we need to dynamically switch between two different variables? Let's say we have two class properties: public first: string = &ap ...

Utilizing Express middleware to serve routes in Sails.js

I am currently working on a sails app where the routes and static assets are served from the root location, which is functioning properly. However, I am looking to integrate an express middleware to serve these routes and assets from a specific path. To s ...

Utilizing HTML/CSS (with Bootstrap): Reveal the concealed <input type="color"> color selector by clicking on a different HTML component

Is there a way to trigger a color picker from a hidden <input type="color"> by clicking on another HTML element, like a <span>? While this functionality seems to work on Firefox, it consistently fails on Chromium. Are there any cross- ...

Transfer methods utilizing the `this` keyword from a component to a common service

In the development process, I am currently working on breaking down a large component that retrieves data from a selected record and loads it into a FormGroup using FormBuilder. My goal is to divide this component into reusable services and child componen ...

Compatibility with IE6 seems to be an issue as the page functions perfectly in all other browsers,

Most of the pages on my website have similar markup, with the majority of them being created using php includes. However, there is one page that behaves differently in various browsers. All pages except for one (which is dynamically generated) display pro ...

Alert: Parser error in JSONP!

$.ajax({ type: "GET", dataType: "jsonp", jsonpCallback: "jsoncallback", //async: true , data: { // some other data here }, url: "http://mywebsite.com/getRequest.php", success: function(response ...

Display a badge in the navbar on specific VueJS pages

I have embarked on the journey of creating a single page application using Vue 3, and I've encountered an interesting scenario where I want to display a badge in the navigation bar for specific pages. This is how my setup looks: // App.vue <templat ...

Displaying various images within a bootstrap modal window

I'm facing an issue with my gallery. It contains small images, and when a user clicks on a thumbnail, a modal should open with the full-size image. The problem is that even though I have the full-size images stored in the "/uploads/" folder and the th ...

Real-time chat system using PHP for one-on-one inquiries with server-sent events (not a group chat)

I'm currently working on developing a live chat inquiry form for a website using HTML server-sent events. I'm utilizing this tutorial as a foundation Here is my plan based on the tutorial: On the client side, users are prompted to enter a use ...

Is there a way to dynamically shift arrow key focus onto buttons in Angular using the left and right arrow keys?

I am facing an issue where pressing the arrow keys left and right does not focus or allow me to navigate through these buttons using the arrow keys. However, when checking the keycode values, they are printed according to the key pressed. I would like to k ...

deleting the bottom three rows from a data grid

I currently have a table with two buttons that allow me to add and remove rows from it. Adding a row is simple as I receive 3 rows via ajax each time. Now, the challenge is removing the last three rows of the table by clicking on the remove button. Unles ...

Express.js experienced a 404 error when processing POST requests

When working with js and express, the route handler file looks like this: var express = require('express'); var passport = require('passport'); var authRoutes = App.route('authRoutes'); va ...

Error: Unable to locate module 'firebase' in the directory path 'D:gmail-reactsrc'

After installing Firebase and logging in, I encountered an issue where the screen was completely white after importing it. The code below is from the firebase.js file: import firebase from 'firebase' // Import the functions you need from the SD ...

The print function is being triggered before the partial view

My goal is to open a partial view in a new window and call the print function, but I'm facing an issue where the partial view renders after the print function, resulting in a blank page. I attempted using the $timeout function, but encountered the sam ...

Toggling forms with HTML <select> elements: A step-by-step guide

In the process of creating a web application, I am faced with the task of registering users based on their specific category. To accomplish this, I have incorporated a combo-box where users can indicate their user type. My objective is to display an appro ...

Tips for incorporating MUI into your Redwood JS project

Trying to integrate MUI into Redwood JS has been a challenge for me. I attempted to run the following command in the project directory: yarn add @mui/material Unfortunately, an error message appeared in the console stating: An error Running this command w ...

What is the best method for retrieving objects from a Meteor collection?

I'm a beginner with Meteor and I'm currently working on the introductory tutorial. However, I'm facing difficulties in retrieving data from a collection. Below is my JavaScript code: import angular from 'angular'; import angularM ...

Connecting a specific entry in a data table with a corresponding web address

I have been working on a vue component that utilizes vue-tables-2. You can find the functioning example here. My goal is to link the edit href url to the entire row rather than just the edit cell. I attempted to achieve this using vanilla javascript by a ...

Tips for effectively removing objects from a PixiJS application

I have embarked on a game development project using Pixi.js that involves items falling from the top of the canvas. The functionality I've implemented so far allows items to spawn and move down the canvas until they reach the end of the window, at whi ...