Pengurusan pakej fungsi Java dan kebergantungan adalah penting dalam pengkomputeran awan untuk memastikan fungsi berjalan lancar. Gunakan Maven untuk mengurus kebergantungan. Konfigurasikan Maven untuk menyelesaikan kebergantungan gudang jauh semasa ujian setempat Pengelogan untuk menghantar mesej log, dan kod itu menunjukkan faedah menggunakan kebergantungan apabila membangunkan fungsi Java secara tempatan dan menjalankannya dalam awan.
Dalam persekitaran pengkomputeran awan, platform pakej fungsi (Faas) menjadi semakin popular, yang membolehkan pembangun menulis kod tanpa pelayan berskala. Pengurusan pakej Java dan kebergantungan adalah penting untuk memastikan fungsi anda berjalan lancar.
Maven ialah alat binaan Java yang popular yang boleh digunakan untuk mengurus kebergantungan dan membina projek. Untuk menggunakan Maven untuk mengurus kebergantungan fungsi anda, tambahkan kod berikut dalam fail pom.xml
anda:
<dependencies> <!-- 引入必要的依赖关系 --> <dependency> <groupId>com.google.cloud</groupId> <artifactId>google-cloud-functions-framework-api</artifactId> <version>1.0.12</version> </dependency> <dependency> <groupId>com.google.cloud</groupId> <artifactId>google-cloud-functions-invoker</artifactId> <version>0.7.0</version> </dependency> </dependencies>
Sebelum menguji fungsi anda secara setempat, anda perlu mengkonfigurasi Maven supaya dapat menyelesaikan kebergantungan yang dibawa masuk dari repositori jauh. Untuk melakukan ini, jalankan arahan berikut dalam baris arahan:
mvn clean install -DskipTests
Langkah-langkah yang diperlukan untuk menggunakan fungsi dengan kebergantungan berbeza-beza mengikut penyedia awan dan platform pakej fungsi. Begini cara untuk menggunakan fungsi dengan kebergantungan Maven dalam Fungsi Awan:
// Gradle 构建文件中 functions { all { runtime = 'java11' env = ['FUNCTIONS_SIGNATURE_TYPE': 'cloudevent'] } } dependencies { implementation 'com.google.cloud:google-cloud-functions-framework-api:1.0.12' implementation 'com.google.cloud:google-cloud-functions-invoker:0.7.0' }
Contoh kod berikut menunjukkan cara menggunakan kebergantungan untuk menulis fungsi HTTP mudah dalam Fungsi Awan yang menggunakan Pengelogan Awan Google untuk menghantar mesej log :
import com.google.cloud.functions.HttpFunction; import com.google.cloud.functions.HttpRequest; import com.google.cloud.functions.HttpResponse; import com.google.cloud.logging.LogEntry; import com.google.cloud.logging.Logging; import com.google.cloud.logging.Payload.StringPayload; import com.google.cloud.logging.Severity; import com.google.gson.Gson; import java.io.BufferedWriter; import java.io.IOException; import java.nio.charset.StandardCharsets; import java.time.OffsetDateTime; import java.util.logging.Logger; public class LoggingFunction implements HttpFunction { private static final Logger logger = Logger.getLogger(LoggingFunction.class.getName()); private final Logging logging = Logging.getLogging(); // HTTP POST 请求的句柄 @Override public void service(HttpRequest request, HttpResponse response) throws IOException { // 从请求中提取日志记录数据 String requestBody = request.getReader().lines().collect(Collectors.joining()); NameValueFunctionLoggingEntryDTO requestData = new Gson().fromJson(requestBody, NameValueFunctionLoggingEntryDTO.class); // 构建日志记录项 LogEntry entry = LogEntry.newBuilder(new StringPayload(requestData.getData())) .setSeverity(Severity.INFO) .setLogName("my-log") .setResource(new LogEntry.Resource.Builder("gae_app").build()) .build(); // 发送日志记录项 logging.write(entry); response.getWriter().write(StandardCharsets.UTF_8.name()); } // 用于解析请求正文的 DTO private static class NameValueFunctionLoggingEntryDTO { String data; } }
Apabila membangunkan fungsi Java tempatan, menambah kebergantungan dan menggunakan Maven untuk membina projek boleh memudahkan proses pembangunan dan memastikan fungsi anda berjalan lancar pada platform awan.
Atas ialah kandungan terperinci Aplikasi pengurusan pakej fungsi Java dan kebergantungan dalam pengkomputeran awan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!