¿Cómo subir varios archivos a Google Cloud Storage en una sola llamada con la API de Java?

Queremos subir varios archivos a Google Cloud Storage. Actualmente, estamos cargando uno por uno utilizando la API de Google Java. El código está abajo:

public void uploadFile(File srcFile,String bucketName, String destPath) throws IOException {
      BlobId blobId = BlobId.of(bucketName, srcFile.getName());
      BlobInfo blobInfo = BlobInfo.newBuilder(blobId).build();

  long startTime = System.currentTimeMillis();

 // Blob blob = storage.create(blobInfo,new FileInputStream(srcFile));

  try (WriteChannel writer = storage.writer(blobInfo)) {
    try (FileInputStream in = new FileInputStream(srcFile)){


        byte[] buffer = new byte[1024 * 1024 * 100] ;

        writer.setChunkSize(buffer.length);

        int readSize = 0;

        while((readSize = in.read(buffer)) > 0) {
             writer.write(ByteBuffer.wrap(buffer, 0, readSize));
        }

        long endTime = System.currentTimeMillis();

      double writeTime = (double)(endTime - startTime) / 1000;

      System.out.println("File write time : " + writeTime);

    }
  }


}

Nuestra aplicación quiere cargar múltiples archivos a la vez. Traté de encontrar un método para cargar múltiples archivos en la API de Java, pero no pude encontrar ningún método para cargar múltiples archivos usando una sola llamada.

Si realizo un bucle y subo mediante múltiples llamadas, se agrega una gran sobrecarga de red y el rendimiento es muy lento, lo que la aplicación no puede permitirse.

Mis preguntas son:

  1. ¿Es posible cargar múltiples archivos a través de una sola llamada, ya sea utilizando la API Java o la API REST?
  2. ¿Podría por favor dar un ejemplo?
Respuesta 1

Quiero usar la conciencia de esquema de saxon sin desintegrar basex que ya se usa en nuestra base de código. ¿Hay alguna manera de reemplazar el procesador baseX Xquery con el esquema Xquery de saxon ...

Mi problema es este: me acabo de mudar a un nuevo entorno de trabajo con una red muy lenta y muy limitada. Me estoy conectando a Apache Tomcat y recibo un bit de JSON codificado en cadena (<200 ...

Realmente no sé nada sobre la administración de la memoria de Java, así que esto es completamente mi culpa, solo necesito señalar en la dirección de una solución. Estoy trabajando con un gran conjunto de datos. Tengo un método que ...

Intenté intentar esto pero creo que estoy haciendo algo mal. Soy un programador de nivel principiante y realmente necesito ayuda en esto. Siento que estoy cerca de la respuesta, pero no estoy seguro de qué pasa con ...