HOUSTON — Wins have been hard to come by for Chris Archer this season. Strikeouts have not.

Archer fanned 10 batters in seven innings, Corey Dickerson hit a three-run homer and the Tampa Bay Rays beat the Houston Astros 10-4 on Sunday.

“I just felt really good overall today,” Archer said. “Last time I threw, obviously I felt pretty good. They’re a good, young team, so it’s really fun to go out there and duke it out with them. Today we ended up on the right side of it.”

Matt Duffy and Nick Franklin also went deep for the last-place Rays, who have homered in 21 of their last 24 games.

Houston, in the hunt for an AL wild card, had won three straight.

Archer (8-17) gave up three runs on four hits and two walks. With his strikeout of A.J. Reed in the sixth, the right-hander joined David Price and James Shields as the only Tampa Bay pitchers with multiple 200-strikeout seasons.

“Elite stuff,” Rays manager Kevin Cash said of Archer. “You put yourself into a category not a lot of pitchers get into. Coming in we knew Archer’s stuff was right there at the tops in baseball and that shows how elite it can be. If he continues to stay in the zone, he’s going to be in those categories quite a bit.”

Franklin had three hits in his first start since returning from a concussion. Evan Longoria also had three hits for the Rays, who jumped out early against Doug Fister (12-9).

The right-hander allowed four runs, two earned, and seven hits in 4 1/3 innings, the fourth time in his past seven starts he has permitted four or more runs.

“I didn’t have my best stuff today but made some pitches,” Fister said. “They hit some balls hard, they hit some balls soft and did what they needed to do. Something that you don’t want to happen, but you’re trying to keep the damage minimal.”

Steven Souza Jr. had an RBI groundout in the second. Doubles by Dickerson and Longoria made it 2-0 in the third.

Luke Maile hit an RBI double in a two-run fourth. The rally was aided by a pair of errors on one play by Houston rookie third baseman Alex Bregman with two outs.

With the Astros trailing 4-0 in the bottom half, Jose Altuve hammered the first pitch he saw from Archer for his 21st home run, a two-run shot. Houston has 18 homers in the last 10 games.

Jason Castro cut it to 4-3 with an RBI single.

Tampa Bay broke it open in the eighth, when Duffy and Dickerson combined to drive in five runs on a pair of homers.

“It did feel good,” Dickerson said. “To be able to see the ball well, consistently put on good swings instead of every now and then. It’s good to get some in a row and I think that helped me a lot.”

Franklin joined the party in the ninth with a solo shot to right. He has four home runs in his last 28 at-bats.

Houston’s bullpen gave up six runs and seven hits in 4 2/3 innings.

TRAINER’S ROOM

Rays: Before the game, OF Mikie Mahtook was optioned to Triple-A Durham and RHP Steve Geltz was called up. Afterward, Geltz was optioned back to Durham to make room for pitcher Alex Cobb (Tommy John surgery). The right-hander was set to meet the team in Boston on Sunday night. Cobb hasn’t pitched in the majors since Sept. 28, 2014. . LHP Blake Snell (left lower leg bruise) feels good and is expected to make his next start after leaving Saturday’s game.

Astros: RHP Luke Gregerson (left ankle) remained unavailable, but manager A.J. Hinch said the team will try to get Gregerson into a game against Oakland this week. … OF Colby Rasmus (cyst in right ear) is scheduled to work out Monday and then it will be determined whether he will be activated or needs a rehab assignment.

UP NEXT

Rays: RHP Matt Andriese (6-5, 3.71 ERA) starts against Boston on Monday. He has gone 0-5 with a 4.60 ERA in his last 13 appearances, including six starts.

Astros: RHP Joe Musgrove (1-2, 5.20) starts against Oakland on Monday. Musgrove has given up 13 runs in his past two starts after allowing just three in his first two major league starts.