We design a resource allocation algorithm for downlink of orthogonal frequency division multiple access (OFDMA) systems supporting real-time (RT) and best-effort (BE) services simultaneously over a time-varying wireless channel. The proposed algorithm aims at maximizing system throughput while satisfying quality of service (QoS) requirements of the RT and BE services. We take two kinds of QoS requirements into account. One is the required average transmission rate for both RT and BE services. The other is the tolerable average absolute deviation of transmission rate (AADTR) just for the RT services, which is used to control the fluctuation in transmission rates and to limit the RT packet delay to a moderate level. We formulate the optimization problem representing the resource allocation under consideration and solve it by using the dual optimization technique and the projection stochastic subgradient method. Simulation results show that the proposed algorithm well meets the QoS requirements with the high throughput and outperforms the modified largest weighted delay first (M-LWDF) algorithm that supports similar QoS requirements.