Google Cloud Professional Cloud Developer — Question 80
You are designing an application that will subscribe to and receive messages from a single Pub/Sub topic and insert corresponding rows into a database. Your application runs on Linux and leverages preemptible virtual machines to reduce costs. You need to create a shutdown script that will initiate a graceful shutdown.
What should you do?
Answer options
- A. Write a shutdown script that uses inter-process signals to notify the application process to disconnect from the database.
- B. Write a shutdown script that broadcasts a message to all signed-in users that the Compute Engine instance is going down and instructs them to save current work and sign out.
- C. Write a shutdown script that writes a file in a location that is being polled by the application once every five minutes. After the file is read, the application disconnects from the database.
- D. Write a shutdown script that publishes a message to the Pub/Sub topic announcing that a shutdown is in progress. After the application reads the message, it disconnects from the database.
Correct answer: A
Explanation
The correct answer is A because using inter-process signals allows the application to receive a direct notification to gracefully disconnect from the database, ensuring that any ongoing transactions are completed. Option B is not effective for application processes and only informs users. Option C introduces unnecessary polling and delays, making the shutdown less efficient. Option D, while it communicates shutdown, relies on the application to read the message, which may not ensure prompt disconnection.