Non-local choice mismatch is one of the most important problems in the Internet-scale and service-based workflow ecosystems. The state-of-the-art method can solve it by generating adaptors to check deadlock-freeness based on a reachability graph. The states in the reachability graph give clues to re-design the composition. Deadlocks are resolved via an iterative process. However, this method is inefficient due to the overlook of the future deadlock state and the requirement of many interactions with a developer. In this paper, an abnormity prevention strategy based on an optimal controller is proposed for collaboration services described by Web Services Choreography Description Language. To overcome the deficiencies of the previous work, we describe service choreography by using service workflow nets. Then, by combining structure and reachability analyses, we formulate a different reachability graph called controlled reduced one. We next develop a maximally permissive state feedback control policy to prevent abnormity. We finally construct an optimal controller for the administrator of service composition to avoid deadlocks in service choreography. The advantage of our methodology is verified via an example.