So, as English isn't your native language either I may write you in German as well - just to give you a little practice!
Ich persönlich habe sehr gute Erfahrungen gemacht, wenn ich nicht nur Texte in der Fremdsprache lese, sondern zusätzlich mit einem Vokabeltrainer arbeite, also alle mir unbekannten Wörter übersetze und dort eingebe. Der Vokabeltrainer fragt die Vokabeln nach 1, 3, 10, 30 und 90 Tagen ab. Weiß man das Wort, kommt es eine Phase nach oben, wenn nicht, geht es zurück in die Anfangsphase. Obwohl sich dies nach stur mechanischem Pauken anhört, funktioniert es erstaunlich gut.
Ich nutze dieses Programm:
www.phase6.de, es gibt aber bestimmt auch andere.