Dynamic architectural changes for distributed services