Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Auf dieser Seite werden Best Practices zur Verbesserung der Leistung bei der Arbeit mit DICOM-Daten in der Cloud Healthcare API erläutert.
Maximieren der Frames pro Sekunde (FPS) in einem Bild-Viewer
Das Tool healthcare-imaging-performance-test bietet Benchmarks, mit denen Sie in der Vorschau sehen können, welche FPS Sie für einen DICOM-Viewer für medizinische Bilder erwarten können, der Daten aus der Cloud Healthcare API abruft.
Gleichzeitige Anfragen senden
Für eine optimale Framing-Leistung sollten Sie Anfragen gleichzeitig senden.
Unter den folgenden Bedingungen können Sie beispielsweise die fps von 30 fps auf 60 fps erhöhen, wenn Sie von sechs gleichzeitigen Anfragen auf 20 Anfragen wechseln:
Keine Komprimierung verwenden
Wenn die DICOM-Daten alle in derselben Region sind
Wenn die DICOM-Images 0,5 MB groß sind
Frames in einer einzelnen Anfrage abrufen
Die Methoden retrieveStudy und retrieveSeries geben mehrere DICOM-Dateien effizient in einer einzigen Anfrage zurück.
Mit diesen Methoden können Sie Images mit derselben Rate abrufen wie mit einer optimalen Anzahl gleichzeitiger Anfragen. Sie können diese Methoden in einer einzelnen Anfrage anstelle von gleichzeitigen Anfragen aufrufen, wenn Folgendes zutrifft:
Der Client kann die gesamte Studie im Arbeitsspeicher speichern oder der Client kann die Antwort als Stream verarbeiten, um jeweils eine DICOM-Instanz zu verarbeiten.
Die Reihenfolge der abgerufenen Images muss nicht angepasst werden.
Leistung für Webnutzer verbessern
Die folgenden Abschnitte gelten für das Abrufen von DICOM-Images bei Verwendung eines Web Viewers.
Maximale Anzahl gleichzeitiger Anfragen erhöhen
Bei Verwendung eines webbasierten Viewers erzwingen die meisten Browser eine maximale Anzahl von Verbindungen pro Host. Die Nummer ist in der Regel sechs. In der Praxis ist es jedoch keine Einschränkung für die maximale Anzahl gleichzeitiger Anfragen:
Die meisten Browser verwenden standardmäßig HTTP/2, wenn der Server HTTP/2 unterstützt.
HTTP/2 verwendet für alle Anfragen eine einzige Verbindung.
Wenn Sie beispielsweise Cornerstone.js zum Erstellen eines Betrachters verwenden, können Sie die maximale Anzahl gleichzeitiger Anfragen in eine für Ihren Betrachter optimierte Zahl ändern.Dazu ändern Sie maxSimultaneousRequests fest.
Web-Worker verwenden
JavaScript ist eine Sprache mit einem einzigen Thread. Daher müssen Sie beim Anwenden von Gleichzeitigkeitsmustern besonders sorgfältig vorgehen. Mit Worker-Workern lassen sich sowohl DICOM-Images als auch HTTP-Anfragen verarbeiten.
Wenn Sie beispielsweise die Verarbeitung Ihrer HTTP-Anfrage an Web-Worker ändern, können Sie den FPS-Wert des Betrachters von 30 fps auf 60 fps verdoppeln, wenn ein Anfrageverarbeitungsaufwand von 30 Millisekunden angenommen wird.
[[["Leicht verständlich","easyToUnderstand","thumb-up"],["Mein Problem wurde gelöst","solvedMyProblem","thumb-up"],["Sonstiges","otherUp","thumb-up"]],[["Schwer verständlich","hardToUnderstand","thumb-down"],["Informationen oder Beispielcode falsch","incorrectInformationOrSampleCode","thumb-down"],["Benötigte Informationen/Beispiele nicht gefunden","missingTheInformationSamplesINeed","thumb-down"],["Problem mit der Übersetzung","translationIssue","thumb-down"],["Sonstiges","otherDown","thumb-down"]],["Zuletzt aktualisiert: 2025-09-03 (UTC)."],[[["\u003cp\u003eThis page details best practices for optimizing performance when working with DICOM data in the Cloud Healthcare API, focusing on improving frames per second (FPS) in medical imaging viewers.\u003c/p\u003e\n"],["\u003cp\u003eSending requests concurrently can significantly improve FPS, with an example showing an increase from 30 FPS to 60 FPS when increasing concurrent requests from six to 20 under specific conditions.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eretrieveStudy\u003c/code\u003e and \u003ccode\u003eretrieveSeries\u003c/code\u003e methods allow for the efficient retrieval of multiple DICOM files in a single request, matching the performance of optimal concurrent requests under certain conditions.\u003c/p\u003e\n"],["\u003cp\u003eFor web viewers, the default limit on concurrent connections in browsers can be bypassed with HTTP/2, and tools like Cornerstone.js allow customization of maximum concurrent requests for optimized performance.\u003c/p\u003e\n"],["\u003cp\u003eUtilizing web workers can enhance concurrency in JavaScript environments, potentially doubling a viewer's FPS by processing DICOM images and HTTP requests in separate threads.\u003c/p\u003e\n"]]],[],null,["# DICOM best practices\n\nThis page shows best practices for improving performance when working with\nDICOM data in the Cloud Healthcare API.\n\nMaximizing frames per second (FPS) in an imaging viewer\n-------------------------------------------------------\n\nThe [healthcare-imaging-performance-test](https://github.com/GoogleCloudPlatform/healthcare-imaging-performance-test)\ntool provides benchmarks that let you preview what FPS you can expect\nfor a DICOM medical imaging viewer that pulls data from the Cloud Healthcare API.\n\n### Sending requests concurrently\n\nFor the best FPS performance, [send requests concurrently](#sending_requests_concurrently).\nFor example, under the following conditions you can improve FPS from 30 FPS to\n60 FPS when going from six concurrent requests to 20:\n\n- Using no compression\n- When the DICOM data is all in the same region\n- When the DICOM images are 0.5 MB in size\n\n### Retrieving frames in a single request\n\nThe [`retrieveStudy`](/healthcare-api/docs/reference/rest/v1/projects.locations.datasets.dicomStores.studies/retrieveStudy)\nand [`retrieveSeries`](/healthcare-api/docs/reference/rest/v1/projects.locations.datasets.dicomStores.studies.series/retrieveSeries)\nmethods efficiently return multiple DICOM files in a single request.\nUsing these methods, you can retrieve images at the same rate as using an\noptimal number of concurrent requests. You can call these methods in a single\nrequest instead of using concurrent requests if the following are true:\n\n- The client can store the entire study in memory, or the client can parse the response as a stream to handle one DICOM instance at a time\n- You don't need to customize the order of the retrieved images\n\nImproving performance for web viewers\n-------------------------------------\n\nThe following sections apply to retrieving DICOM images when using a web viewer.\n\n### Increasing maximum concurrent requests\n\nWhen using a web-based viewer, most browsers enforce a maximum number of\nconnections per host. This number is typically six. However, in practice\nthere is no restriction on the maximum number of concurrent requests\nbecause:\n\n- Most browsers use HTTP/2 by default if the server supports HTTP/2\n- HTTP/2 uses a single connection for all requests\n\nFor example, if you use [Cornerstone.js](https://github.com/cornerstonejs/cornerstone)\nto build a viewer, you can modify the maximum number of concurrent requests\nto a number that is optimal for your viewer by changing [`maxSimultaneousRequests`](https://github.com/cornerstonejs/cornerstoneTools/blob/cefbb34e4a651ae49c0b066e36f6ccf0cb6ea89f/src/util/getMaxSimultaneousRequests.js#L5)\nwhen configuring Cornerstone.js.\n\n### Using web workers\n\nJavaScript is a single-threaded language, so extra care must be taken when\napplying concurrency patterns. You can use [web workers](https://en.wikipedia.org/wiki/Web_worker)\nto process both DICOM images and HTTP requests.\n\nFor example, if you modify your HTTP request processing to web workers, you\ncan effectively double your viewer's FPS from 30 FPS to 60 FPS assuming a\n30 millisecond request processing overhead."]]