Queuing recognition is a recently new raised research topic, which uses sensors of smartphones to automatically recognize human queuing behaviors. However, existing collaborative approaches need to exchange sensor data among nearby smartphones, causing extra communication overheads and even delay. In view of this, this work proposes a new framework called Qnalyzer for queuing recognition using accelerometer and Wi-Fi signals. It consists of three tiers. The first tier is run by each individual smartphone to identify each user's context without exchanging data with nearby smartphones. A new algorithm called QCF (Queuer and non-queuer ClassiFier) is proposed, which considers mixture features of accelerometer and Wi-Fi signals to effectively identify whether the user is queuing or not. The second tier is an algorithm called QCT (Queuers ClusTering) running at the server side to effectively identify which queuers belong to which queues based on users' movement features. The third tier is an estimation model called QPE (Queue Property Estimation) for measuring waiting time, service time, and queue lengths. The Qnalyzer prototype on Android smartphones and the corresponding performance evaluations under real-life queuing scenarios are implemented. The extensive experiment results show that Qnalyzer achieves good performance with high accuracy.