Depends. Could be for any number of factors, like CPU/memory saturation, network delays, or disk IO throttling. Best to measure and make adjustments accordingly. On top of cpu/memory/network/disk metrics, the /debug/requests and /debug/events pages can point you in the right direction on what’s taking time.
Three Dgraph Alphas (Server) and one Dgraph Zero with replication setting of three is adequate. But if the one Zero becomes unavailable, then the cluster is effectively unavaliable until the Zero comes back.
Truer high availability for any of the Dgraph instances would be to run three Zeros and three Alphas. That way one Zero or one Alpha can go down at any given time and the cluster will still be up.