BestServe: Serving Strategies with Optimal Goodput in Collocation and Disaggregation Architectures