Sobes.tech
Junior — Middle

Estavas a manter o estado interno do serviço no teu último projeto?

sobes.tech IA

Resposta da IA

No meu último projeto, guardava o estado interno do serviço para garantir estabilidade e funcionamento correto em caso de reinícios ou falhas. Por exemplo, utilizava a serialização do estado para um arquivo ou base de dados, para que ao restaurar o serviço, pudesse continuar a partir do último estado guardado.

Exemplo de guardar estado em Java:

public class MyService {
    private int counter = 0;

    public void increment() {
        counter++;
    }

    public void saveState() {
        // Guardar estado num ficheiro
        try (ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("service_state.dat"))) {
            oos.writeInt(counter);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    public void loadState() {
        // Carregar estado de um ficheiro
        try (ObjectInputStream ois = new ObjectInputStream(new FileInputStream("service_state.dat"))) {
            counter = ois.readInt();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}