As the acceleration gaining for utilizing edge computing in various IoT applications, the demands of effective task scheduling algorithms are rising alarmingly. Some of the real-time applications and mission-critical applications (e.g., self-driving cars, AR/VR apps) require real-time responses. On the other hand, the applications (such as deep learning algorithms and neural networks) demand powerful edge resources. However, most of the studies only focus on low latency improvement and lacks to provide efficient task scheduling. As a result, the edge computing paradigm requires a new approach to deal with different types of applications. In this paper, we propose an adaptive service-oriented task scheduling algorithm for running over heterogeneous edge cloud. The proposed scheduling algorithm provides not only the QoS of the applications but also increases the performance of the overall scheduling and utility of edge resources. We conduct an extensive experimental study to show the efficiency of our algorithm. From this research, we improve the overall performance of the task scheduling, considering both task heterogeneity and edge heterogeneity and to maximize the edge resource utilization effectively.